Computers Are Programmed By People Not Magic

from the trust-but-verify dept

Ben Adida has a great post discussing the misplaced faith people often have in the machines in their lives, and the way that faith often spills over to e-voting. He mentions a scene in the 2006 HBO documentary on e-voting where an election official breaks down in tears when someone shows her how her voting machines could be hacked. For computer programmers, who are intimately familiar with what goes on under the hood, the idea that we should automatically trust anything a machine tells us is a little bit ridiculous. We're aware that computers are extremely complex devices that can go wrong in any number of ways, that they're designed by fallible human beings, and that it requires a lot of very careful engineering to make sure they're secure and reliable. We recognize, in particular, that the more complex a system is, the more likely it is to have problems, and so the more skeptical we should be of its results. It's not a coincidence that $5 pocket calculators tend to work flawlessly, while complex systems like Excel and the Pentium chip sometimes make basic arithmetic errors: the greater complexity increases the number of ways things can go wrong.

But a lot of non-technical folks seem to view things the other way around. Last week, for example, I noted a a Chicago law professor who thinks that "the future is surely with the touch-screen or some other form of online voting." The problem with this statement is that if our goal is security and reliability, which it should be, the added complexity of computers and touchscreens is a big disadvantage. But this isn't obvious if you've never looked under the hood to appreciate all the things that could go wrong. Computers are not magical boxes that always produce the correct answer, but unfortunately, a lot of people seem to think that they are.

Filed Under: complexity, e-voting, magic, programming

Reader Comments

Subscribe: RSS

View by: Time | Thread

  1. identicon
    Anonymous Coward, 28 Mar 2008 @ 2:03pm

    Re: Another overlooked computing artifact...

    Computer Science and Computing Systems Engineering seldom get recognized for being one of the few disciplines that feature "Zero Tollerance" structuring.

    In other engineering disciplines, you get tollerances. A part a few millimeters or thousandths of out of exact specification either way but still within tollerance and the widget still works. In computing systems, everything has to be working 100% perfectly or the whole thing usually grinds to a halt.
    You've obviously not been through a regular engineering program. In my electrical engineering classes we were not allowed ANY defects in our software projects. When it came time to grade our programs the tester would first try everything they could think of to cause the program to crash by entering invalid data. If this caused the program to crash or otherwise behave improperly then the student goat an automatic "F" on the project. Period. Similarly, if the program produced erroneous output for any reason then the student got an "F" on it. That was because that kind of sloppy coding was considered to be unprofessional for an engineer (even as a student). Then if the program passed all that, it was was graded on how well it performed, how well structured it was, the documentation and so forth. "Bloat" was a good way to loose points.

    Contrast this with the products from Microsoft where unchecked-buffer-overflow vulnerabilities (and other sloppy programming practices) seem to be guaranteed. I just have to shake my head when they want to call themselves engineers.

    Not fair, says I!
    Don't go around thinking that engineers are somehow held to lower standards. Judging from what I've seen, the opposite is probably true.

Add Your Comment

Have a Techdirt Account? Sign in now. Want one? Register here

Subscribe to the Techdirt Daily newsletter

Comment Options:

  • Use markdown. Use plain text.
  • Remember name/email/url (set a cookie)

Follow Techdirt
Techdirt Gear
Shop Now: I Invented Email
Report this ad  |  Hide Techdirt ads
Essential Reading
Techdirt Deals
Report this ad  |  Hide Techdirt ads
Techdirt Insider Chat
Report this ad  |  Hide Techdirt ads
Recent Stories
Report this ad  |  Hide Techdirt ads


Email This

This feature is only available to registered users. Register or sign in to use it.