Electronic voting machines have been an incendiary topic on Slashdot for a very long time, and for good reason. Software errors, cheesy hardware, political patronage to put them in place, strong-arm tactics by the manufacturers to cover up flaws, not to mention the impossibility of verifying results...there's not much to like. And it seems that any technically-minded person is (rightly) well aware of the vulnerabilities of e-voting, and is unequivocally in favor of a paper trail to verify voter intent.
Obviously I come to bury e-voting, not to praise it. But there is something that continues to trouble me as very strange: the consistent reports of unreliability in the software that runs these machines. How can it be that difficult to write software that simply counts votes? It seems like a straightforward exercise in software engineering. Yet the problems with voting machines appear to be far out of proportion to their inherent technical simplicity.
Only for the sake of argument, let's ask: are the programmers that write this software blissfully incompetent, brazenly reckless or have they embraced a covenant that is unwholsomely against the mainstream of democracy? I can't accept any of the above as true. So, what's going on? Are these machines (or the process that manufactures them) "broken by design", and if so, why?