Uh, Oh, I Think We’re in Trouble…
The recent acceleration of the occurrence of computer viruses, worms, and spam on top of software that is already frequently unstable got me to thinking and worrying about where all this is likely to end up. And I’m afraid that I didn’t come up with a very pretty picture. In my ponderings, I tried to imagine what would happen if the rest of our technology-based products behaved similarly. I thought about cars that would abruptly quit and have to be restarted (rebooted?) about once each day, but at unpredictable times — of course. I thought of refrigerators and furnaces that randomly changed their temperature settings or quit working altogether because some scoundrel was able to send an electrical glitch over the house wiring. I thought about door lock that had to be “updated” every few weeks because flaws were discovered that allowed thieves to enter. I thought about telephones that would ring 20 or 30 times each day with recorded messages offering sex-enhancement devices or fraudulent riches through the transfer of foreign funds. I thought of television sets that drop channels or quit responding to remote controls and need the periodic installation of “patches” to keep them working? But none of these imaginary scenarios was able to capture the totality of the computer software problems with which most of us are currently struggling. Unfortunately, I’m afraid it’s going to get even worse before it gets better.
This is quite a contrast to the hardware side of these same products – including the displays. While there may be that rare monitor or TV that refuses to work right out of the box, in general we can assume that whether the product comes from the local electronics store or from a mail-order merchant, it will work perfectly when we plug it in. Both CRT and flat panel displays can reliably be shipped all over the world — typically ending up with a resounding thud on ones front steps as the delivery person happily relieves his burden. We unpack them, plug them in and they work! Most certainly that is not by accident. We display engineers have spent countless hours anticipating and designing against all the possible ways that these devices could fail or be damaged by careless use or handling. We have also learned that combining too many functions into one device is not always such a great idea. Thus, most of our homes have washers and dryers. We have refrigerators and ovens. We have televisions and audio systems. This specialization has allowed each product to be optimized and to be made as reliable as possible. Couldn’t we do something like that with our computers? Especially, since the hardware is already nicely segmented!
We already have separate printers, monitors, scanners, cameras, keyboards, mice, and so forth. Even what we consider as the main “computer box” is in nicely defined pieces such as the hard drive, the floppy, the mother board, the power supply, and various video, sound, and driver cards. There is no fundamental reason why software couldn’t be done in a similar way. Some time ago, in this column we discussed the futuristic concept of “knowledge cubes”. The idea was that eventually we would buy these plug-in modules that optimally combine hardware and software to accomplish specific functions. These knowledge cubes would be immune to being modified except with the specific permission of the owner, perhaps through something as simple as a built-in electro-mechanical switch. Then all the important computer functions would be protected from remote or unauthorized modification. Of course, it would be less convenient than simply downloading updates, but why would we need to do that if the software is well designed to begin with? We certainly don’t expect to do that with our hardware components! For example, what if your monitor manufacturer periodically had to send you notices that you must install modifications to keep your monitor from failing? How happy would you be with that?
It seems to me that we engineers have created our computer systems on the naïve premise that the world is populated only with honest and considerate people. Now, wouldn’t that be nice — if only it were true? In terms of percentages, that’s actually not such a bad assumption. The problem of course is that the few bad ones can wreak havoc on a system that makes it trivial to access and control millions of us in fractions of a second.
The most difficult — and non-technical — challenge may turn out to be that there will be an unwillingness to give up on the current approach so as to make the fundamental change that is needed in order to solve this problem once and for all. Rather than abandoning the leaky raft for a sturdier boat, we may just continue to add more “patches”. The hardware will continue to be robust and virtually indestructible, while the software “raft” continues to leak and flounder.
Aren’t you glad that we display engineers have learned how to make products that are truly robust? Maybe someday our software colleagues will learn the same important lessons that we have already come to accept, i.e. that this is the only path that leads to long-term sustainable business success. Perhaps those of you who are dedicated Apple computer users will let me know that these software problems have already been solved. If that is true, then Apple as a company is missing a great opportunity by not letting the rest of us in on this “secret”.
Should you wish to share your frustrations or successes regarding your own computer experiences, please contact me via this web site, directly by e-mail at silzars@attglobal.net, by telephone at 425-898-9117, or by fax at 425-898-1727.