Americas

  • United States

Aiming for perfection

Opinion
Apr 21, 20034 mins
Data Center

* Backspin columnist Mark Gibbs claims there are two solutions to choose from to achieve perfection

Men do not like to admit to even momentary imperfection. My husband forgot the code to turn off the alarm. When the police came, he wouldn’t admit he’d forgotten the code . . . he turned himself in.– Rita Rudner, comedian

If there is one lowdown trick that computers do to us humans it is to offer the possibility of perfection. This dirty ruse appears in everything we do with computers, including programming, using and managing them.

The problem is that computers are conceptually deterministic: We expect that they will do what they are told to do. “Add 2 and 2,” you command, and you expect “4.” Every time.

We then extend that assumed infallible behavior to increasingly complex calculations for which verification of the results becomes as difficult as the calculation itself. And we’re surprised and exasperated when things don’t work as we expect.

Just think of those humongous spreadsheets you’ve built in which everything works fine until you move some block of calculations to somewhere else and then modify a formula. Argghhh! Four hours later and you’re still trying to get back to where everything seemed to work right.

There are three core problems: Computers do not always work perfectly because components fry and even cosmic rays can randomly flip memory bits; there is no way to verify that they have been programmed correctly; and they are used by humans.

The reason people shouldn’t use computers is computers are too complex. A common truism is that humans can keep no more than seven ideas or thought objects in mind simultaneously, and most computer software presents us with far more simultaneous objects than seven at every turn. Is it any wonder that software is hard to learn and use?

But we, as IT people, know that computers aren’t perfect yet, like everything, and we often are fooled into believing the opposite and get caught when they fail. But we’re IT guys – when it happens, we get it, we understand.

Unfortunately, that myth of computer perfection is hard to shift in the rest of the organization. Sure, people know that computers go wrong, but they see those failures as IT’s fault and something to be fixed. In essence, they expect the reliability of a top-end Japanese car for the price of a bicycle.

The trouble is that IT groups have a tendency to want to appear to have godlike powers; they want to exemplify the potential perfection of the supposedly perfect machines for which they are responsible.

There are only two solutions. The first is to simplify. Remove the layers upon layers of complexity that characterize our systems and the level of perfection will improve. The second is to spend a lot more time on design and testing. The more understood and architected a system is, the more reliable and easier it will be to fix.

The first solution is tempting but has the downside that the feature set will be limited. However, the implementation and operating costs will be low. The second solution is daunting as it will take a lot of time and money to create systems this way, but while the implementation will be expensive the operation costs will be reduced.

Most of us exist in that twilight zone between these two solutions. Our systems have parts that are simple and others that are complex, and each of those categories has elements that are well-designed and others that have been cobbled together. And the reason is simple: Economics and political pressures forced things to be that way.

So if you want to appear to be as perfect as the machines you manage, you must get your organization to spend and wait or simplify, simplify, simplify.

So which is it going to be? Or can you admit to imperfection?

Take your best (or even perfect) shot at backspin@gibbs.com

mark_gibbs

Mark Gibbs is an author, journalist, and man of mystery. His writing for Network World is widely considered to be vastly underpaid. For more than 30 years, Gibbs has consulted, lectured, and authored numerous articles and books about networking, information technology, and the social and political issues surrounding them. His complete bio can be found at http://gibbs.com/mgbio

More from this author