Voting to elect representatives in a democracy is a very sensitive process. It is also a quite complex one, so it is natural to think about computer-based systems to automate the collection and counting of ballots. So far, reproducing apparently simple features of paper- based voting, like the ability of put together anonymity and accountability, has proved to be a more difficult task than expected. This book illustrates a novel architecture based on modern coordination paradigms, which exhibits remarkable resiliency and scalability properties. A programmable tuple center (Glue) acts both as storage for ballots and as coordination platform among the distributed voting machines and counting services. By taking the storage burden away from the countless machines spread throughout the country, and by requiring them a verifiable behavior during the interactions, the Glue can guarantee security without having to rely on their integrity. Immediate access to all the real- time data allows easy verification of its integrity and consistency by anyone authorized.