German Elections Go Open Source 159
Get Behind the Mule writes "The Heise news ticker is reporting that the software used by the German government to handle the results of the Bundestag election (that's the national parliament) on September 22nd will be based on open source platforms. The system will be written in Java and deploy Tomcat, JBoss and MySQL, and is being developed by the Berlin software firm IVU (here's their press release), working with the Statisches Bundesamt (the federal statistics office). It's not clear from the announcements whether the source code of the application itself, and not just the servers it runs on, will be publically available. Nevertheless, one is reminded of the argument of Peruvian congressman Dr. Edgar David Villanueva Nuñez (seen recently in Slashdot) that open source software enables citizens of a democracy to see for themselves whether the work of government, such as elections, is conducted as it should be. All of the announcements are in German, so go fish. The software, as described in the announcements, will compute preliminary results (which are announced as soon as possible after the polls close), run plausibility checks, and determine the Bundestag membership as well as distribution of seats to the political parties. It will use web clients for entry of voting data, data import, presentation of results, and preparation of printed results. It will be based on a three-level architecture (apparently standard J2EE) and deploy Enterprise Java Beans."
Open? Accountability? (Score:3, Insightful)
It's clear from common sense that if the code to the platform is open source, but not the system itself then there is no way the citizens can see for themselves how the work is being conducted.
Distribution to other countries? (Score:3, Insightful)
First off, congratulations to the German Government. It's good to see the German people upholding the values of democracy, in ironic counterpoint to the USA :P
The obvious question is this: The German Government now has the software for handling elections; will they now offer that software to the governments of other countries for (free|low cost)?
I predict: overload. (Score:2, Insightful)
MySQL? (Score:4, Insightful)
Judging from the amount of posts that Slashdot drops anyway. You need to accurately record every vote, you can't drop 1 in 100,000 even.
Maybe if they are using MySQL 4 with transactions and all the other stuff, then fine. But really, Postgresql is a better match. And preferable is a solution where you can sue someone if it all goes wrong...
Are you sure? (Score:3, Insightful)
Nice troll.
If you think about it, using OSS doesn't guarantee that nobody is cheating. Sure, you have the sources, but how do you know that the sources you have are the ones actually running on the machine? It's not like they're going to let anybody who wants to reinstall the whole thing.
Yes, it does give you the posibility to check the code to make sure there are no bugs, but it also opens the posibility that anyone with physical access to the machine can install a version of the software which looks the same but has a back door. It used to be that only the original writers had that power, so now you have to trust a lot more people.
So, no, open source software isn't a magic bullet either.
May not release source (Score:4, Insightful)
If they are using OpenSource components, such as the server enviroment application servers etc.
They dont need release the source. People ranting that they MUST release the source, etiher are lost in a fantasy.
If I write an application for counting chicken egg hatching probablity and It runs under Tomcat, JBoss and MySQL I needent release a single thing as long as I dont use any GPL suff in the code I am handling myself.
That said it would be nice if they do, who cares if they dont. A private software company is doing the development, they may or may not have some kind of agreement or future plans for the software being written.
I am getting pretty sick of all the OpenSource neophiles barking they must release the code blah blah blah. I think you are probably a large part of the reason MS calls the GPL viral, and people actually belive them. It isn friggin poison fruit. The other reason MS calls the GPL viral of course is projects like this get sold on building upon OpenSource applications, taking gold from a dragon has a tendency to piss it off a wee bit.
Re:MySQL? (Score:2, Insightful)
Are these guys crazy?! (Score:1, Insightful)
Yeah, I know they are counted by hand but anyway!
Postgresql is unreliable and less-than-perfect ACID compliant but MySQL is a far bit worse, even with the hacked-in transactions!
Why not buy a really good solid DB solution with rock-hard ACID complicance, it's peanut money in a project like this anyway.
OSS in Germany (Score:3, Insightful)
The German government could do worse. A proprietry package would probably do the job as well, especially considering that the actual counting is done by hand (although this does eliminate the possibility of machine error in the actual voting process and of someone cracking a voting line). The reasons behind this are probably economic: MySQL, Tomcat, JBoss on Linux with a web client cost a lot less to implement for all the counting stations than a proprietry solution and Germany has the positive effect of supporting it's own software industry (SuSE) rather than someone else's.
Before you start thinking the US should try this.. (Score:4, Insightful)
The US Forefathers were smart - they intentionally left the specific details of how to collect the vote and tally the results to the states, and ultimately, the local county districts. They weren't concerned as much about regional cultural and financial differences as much as they were concerned about the integrity of the election process.
If I wanted to rig an election in the US, I would have to rig it ONE COUNTY AT A TIME, because each election office makes their own choice how to operate on the voting day in question.
With a centralized, standard voting system like Germany's open source plan, I would just have to know how to rig one system.
The Florida election worked exactly as it should have - the election was just really close. It sucks that we couldn't just call the election at 10PM and go to bed, but you know what? Your vote *does* matter.
Re:MySQL? (Score:4, Insightful)
This is exactly the sort of anecdotal evidence that open source advocates need to avoid. The fact that it's reliable to that extent is completely irrelevant. Businesses (and in this case, governments) don't care if it goes down occasionally. Sure, they'd rather it didn't. But what they do care about is that if it does go down, they don't lose data integrity. It's far less costly to have 2 hours downtime than it is to have garbage data in your database (potentially without you knowing about it). MySQL doesn't have the ACID properties, that provide this level of assurance, and until it does, it won't really be suitable for this sort of use.
Re:I predict: overload. (Score:1, Insightful)
Re:I predict: overload. (Score:1, Insightful)
Little things like these not working:
ON UPDATE CASCADE
CHECK EXISTS IN
FOREIGN KEY(blah)
mySQL accepts them without complaining, but doesn't actually do any of the relationship processing side of the SQL(unless they've fixed this in the last few months). It basically seems to just store stuff... which could probably be done better with some blank textfiles.