Tuesday, May 29, 2007

A Program is like a Car Engine

Computer programs are like a working engine in many ways. I don’t care how my car engine runs as long as it does. The only thing I have to do is to turn the key and make sure the gas tank isn’t empty. An engine is a complicated bit of machinery that man has honed and improved for 100+ years. So every car engine in existence is the result of 100 years of development and probably millions of man hours, but we all take it for granted. The same goes for computer programs. Programs are really, really big, Windows Vista probably took the same number of man hours as the Great Wall of China, and possibly even more. But all I want is for Windows to work when I turn the power on. I don’t care that it has hot-swapping for USB devices, or that it uses the hard drive as virtual memory, I just want Windows to work.

If I turn my car key and my engine doesn’t rev up, there is a problem. The problem might be a small one, like the battery is dead, or a big one, like a blown gasket. The point is that everything has to be working 100% correctly in order for that engine to start when I turn that key. The same thing goes for computer programming. Programming is so precise that every single character means sometimes, there are no extra commas or misspelling. A misspelled variable is a variable that doesn’t exist. At times computer programming is excoriating painful because you know what you want to do, but sometimes in haste your fingers mistype. When a computer program crashes there are 100 things that might be the problem, much like a car engine.

1 comment:

Zeigfreid said...

Hi

I love bugs. This is strange, because I hate debugging (frustrating long hours of debugging). What I love, in particular, is problems that are about logic and aren't fatal. Little things like a seat that doesn't slide forward and backward, or a radio that only plays one station: the car works, but every car has some little inconsistencies that cannot be controlled.

I think the shippable bugs in humans are what make us interesting. Differences in how we react to stimuli, differences in shape and color. As long as it doesn't make our lives miserable or end up as fatal, I think these bugs can be most excellent!

z.