Tuesday, November 09, 2004

Computers are recipe machines. They have various states; they read through the recipes they are given, step by step, and change themselves from one state to the next, depending on what state they were already in and what the recipe (program) says to do. They are completely incapable of doing anything other than exactly what they are told. The person who writes the recipe (program) has complete control over the machine.

Typically the programs are written in a language readable by human beings. To make them run faster, these are translated into a language readable only by computers, called machine code. The translated programs are stored in so-called binary files. Typically programs are distributed in binary format only, because most people only want to use the programs and have no interest in knowing what the recipes actually say.

In principle, anything that can be codified, anything that can be reduced to a routine, anything that requires no human intervention or thought, in short, anything that can be automated, can be done by a machine. This saves labor and money, which means that lots and lots of activities previously effected by drones working inside vast governmental or corporate bureaucracies will be performed in the future by machines. Governmental and corporate rules and regulations will increasingly be executed only by computers.

Unfortunately, this automation exposes society to a novel danger. If society's rules are enforced through machines and if the only people who are able to see those rules are the computer programmers, then there will be no way for the citizens to know what the actual rules are or to ascertain whether they are being applied fairly. Although the programmers may pay lip service to one set of rules, the computers will obey the rules actually given them by the programmers, not the rules which the programmers claim they are giving to the computers. In effect, we are giving control of our basic social functions to unaccountable computer programmers. It's not that computers are taking over society, as is often feared; rather it is programmers who increasingly hold the reigns of society in their hands. There isn't any problem if the programmers are honest, and most are of course. But if the programmers are dishonest there is no way to check whether the correct societal rules have been applied. A binary file will tell the computer to do exactly what the programmer wants, not necessarily what the citizens want. And the citizens will never know the difference because the binary file is unreadable, unknowable.

The most obvious example of this danger lies with voting machines. These are computers running programs designed to collect votes. What could go wrong? If the programmer has programmed the computer to, say, give every fifth Democratic vote to the Republican, then a fraud will be perpetrated on the voters, completely without their knowledge or consent. When we collected votes via paper ballots we always insisted that there be several observers present to ensure that no votes were miscounted and no cheating occurred. Why do we not demand the same level of accountability from our programmers? Sunshine is the appropriate disinfectant for potential governmental fraud.

Fortunately, there is a simple way to let the proverbial light in. All that is required is that the original recipe which controls the voting computer be made available publicly. Then no shenanigans can occur because everyone will be able to see exactly what the recipe says, exactly which rules the computer is following. In computer parlance, the original recipe (program) is called the "source code" and what is required is merely that the source code be made open to the public. Hence the name "open source". All important governmental processes that are accomplished by computers need to be "open sourced". This is true especially in the case of voting.

All citizens should demand this. This is an essential element of computer-mediated democracy in the brave new Twenty-First century. If it is not done, closed-source computers under the control of possibly nefarious third parties will inevitably add fuel to the conspiracy fires already being fanned by the paranoid. Surely that is a result we all wish to avoid.

Even without any actual fraud occurring, doubts about fraud will be sufficient to bring down the ship of state.


Anonymous Anonymous said...

Right on. This is how it has to be.

That Open Source has proven a viable concept at roughly the same time that voting machinery is coming into vogue is a lucky thing.

Also... what do you think of the idea that there ought to be paper stubs, reviewed by the voter before being turned in, so that recounts can be done the old-fashioned way in case of a real knock-down drag-out fight.

3:17 PM  
Blogger WichitaBoy said...

Yes, I think a paper trail is an essential ingredient here.

10:04 PM  

Post a Comment

<< Home