Sunday, October 22, 2006

Man of the Year

It started last Thursday. Somebody asked me if I have seen the movie Man of the Year yet. He suggested that I see it right away. On Friday four people asked me if I had seen it yet. They all suggested that I not wait to see it. So, last night, Ann and I got a babysitter and went to the movies for the first time in a couple of years.

Wow.

*** Spoiler alert ***
If you don't want to know what happens in Man of the Year, go see the movie before you read the rest of this.
*** Spoiler alert ***

In the movie, the United States has adopted an electronic touch screen voting system with no paper trail. The manufacturer is a large company whose name begins with a 'D', in this case the name is Delacroy. As the presidential election approaches, a software engineer named Eleanor Green at Delacroy discovers a glitch in the system that might cause an incorrect outcome in the Presidential election. Indeed, an independent candidate, a comedian played by Robin Williams who is only on the ballot in a handful of states, ends up winning the election due to the glitch.

Eleanor Green figures out the cause of the bug in the voting machine. It has to do with the alphabetical ordering of the double letters in the candidates names. The candidates are named Dobbs, Kellogg and Mils. BB comes before GG which comes before LL. While I found the basic premise believable, I think they would have been more convincing, from a technical perspective if the bug had been based on the length of the names. A candidate with a really long name accidentally wins the election because the name overflowed the buffer that held the candidate name in the program. Of course, I'm sure that detail would have been over the head of most viewers.

What I really like about the way this movie portrays the e-voting issue is that it is an unintentional bug in the system that causes the wrong result. In fact, the bug in the Delacroy system is one where it is likely that all manner of testing the machine would not uncover the problem. Unless the testing was done with candidates who had double letters in their names, the problem would remain hidden. When debating with supporters of DREs, I've often been asked how one could rig the voting machines in advance if the candidates names are not known at the time that the software is written. And, while I have an answer to that (described in my book), this movie gives a realistic scenario that also answers the question. An unintentional bug in the system could throw the election in an arbitrary way, while still passing all of the logic and accuracy tests. I've seen enough software bugs to believe this is possible.

For some reason, the reviews of this movie that I found on the Net are negative, but I think it is a must see for anybody interesting in the electronic voting issue.