Home | Flickr Photos | Links | About | Resume | Contact Me

Voting Machines… Rocket Science?

Why does it seem like every time there is an election lately we hear about the problems with electronic voting machines? If the testing labs aren’t leaking source code then polling places are staying opened obnoxiously late because the machines are “down.” Lets take the hardware out of the picture for now, realistically you could use a touch screen monitor with a Dell for that part.

The problem with these voting machines seems to primarily be the software. It really just puzzles me why it is so hard to get it right. What are the tasks that a voting machine is being asked to preform? The best I can guess is: collect data, tabulate data, prevent fraud and spit out reports. How hard can this be to implement in $LANGUAGE? Lets take a look assuming for a moment they are using .NET for rapid development.

Gathering input is simple, the reason I chose .NET as the development platform is because you are basically handed everything on a silver platter (same goes for Java) you don’t have to implement your own GUI toolkit, you don’t really even have to build interfaces to the hardware. You take what Windows gives you and you process it. Perhaps I’m over-simplifying this part but based on my knowledge of .NET this part is dead simple.

Tabulating data is also not an overly difficult task, hell, you could implement pretty much all of the tabulation routines in pure SQL using stored procedures, no need for any .NET logic to drive this. Since reporting is basically slapping a paper and/or digital style on the data you tabulated with SQL you should be able to be done with a minimal amount of fuss.

The most difficult part is the fraud part which may necessitate some creative thinking and some fancy code-work but nothing too fancy considering that you have complete control over the computer its not like somebody has the time to load up a debugger and take a peek at what your doing under the hood.

Now I do realize that I’m leaving out some important parts like interfacing with whatever systems are in place to keep track of elections and whatnot but think about it for a moment, are we really asking anything more than what MOST companies in the world ask their IT people for every day, a reliable system that people can use to input data. Maybe if we started treating voting as a business we would get better voting machines.

Stuff like this leaves little hope in my mind that we will ever make it to the level of a “Matrix” society where machines are smarter than the people that made them. Or… are we there already?

Leave a Reply




DISCLAIMER: The opinions expressed on this website are mine and mine alone, they should not be interpreted as the views of my employers, past or present, my family, my church or my pets. Comments are the property of their posters and I can not be held accountable for those.