CTO Articles

Home > News > CTO Articles

Published in IT World
February 07, 2006

Living on the edge of Plan A

This will not come as a startling revelation to you: life is complicated. Sometimes (and now is one of those times) I find myself wondering if our lives are as complicated as they are, by design or by accident.

I believe a significant contributing factor to the complexity of the lives we lead can be traced to the interaction of two fundamental forces in our universe. Namely, (a) competition for scarce resources and (b) the presence of patterns. Let me try to illustrate what I am getting at by some examples.

Example: Mom starts her day at 6 a.m. in order to get the kids to school and get in to her job downtown. On the way, she competes for public transportation, elevator space and coffee to name a few items. The kids work hard at school because they need to compete for college and career opportunities. Mom works downtown because she competes too - for herself and for them.

Example: Dad works in sales. He is always thinking about beating the next supplier to the next deal. Always seeking to shave 5 minutes off the journey time to the airport. Always seeking ways to be more productive during the working day. He is a ravenous consumer of gadgets and computer-based productivity tools of all shapes and sizes. He has memorized the average journey times between major blocks downtown. He can walk and talk and think and eat and read a memo all at the same time and often does so.

The competition aspect of these scenarios is obvious. The pattern aspect lies in the way in which both situations seek to optimize the use of time by relying on certain patterns. School starts at a regular time. Trains follow timetables. Journey times can be averaged, queue lengths for coffee and donuts can be estimated in advance and so on.

We spend a lot of time identifying these patterns and then adjusting our behavior to be optimal with respect to these patterns. At the heart of this behavior is the assumption that the patterns hold more often than they do not. After all, that is why they are called patterns. When certain key patterns - transportation for example - break down, chaos can ensue.

So far so good, patterns exist and patterns can be utilized when competing for scarce resources like time and money. These days, computers are key tools in both identifying and exploiting patterns. With the aid of computers, we get ever closer to the optimal exploitation of the patterns that surround us. Unsurprisingly, when certain key computers break down, chaos can ensue.

This is where an interesting difference manifests itself. What if the school bus breaks down? Mom can drive the kids to school. What if the coffee shop is closed? There is another one around the corner. What if the elevator is broken? Dad can take the stairs, and so on. Life is full of Plan Bs.

What if the computer breaks down? Is the answer to switch to another computer? Is Plan B a copy of Plan A or a completely different plan? Is there a 'revert to manual'? The computing equivalent of taking the stairs?

Obviously for tasks that only computers can achieve, not having a revert to manual Plan B is understandable, but I suspect there are many computing scenarios where a Plan B could be formulated that does not involve replicating Plan A. Can your company continue to get product and invoices out the door using just gumption, pen and paper?

My sense of it is that we spend a lot of time fine tuning Plan A and not much time building and testing Plan B, C or D. In a strange way, technology is too reliable. Electricity tends to be available, hard disks tend to work, monitors tend to display text adequately and so on. The rarer the occurrence of malfunctions, the less likely it is that we will develop adequate alternative plans. Of course, the upshot of this is that failure of Plan A can become more catastrophic over time.

In years to come (remember, the computing revolution is younger than the Rolling Stones) will we regret the headlong rush to a computing-based Plan A with a dimly articulated, also computing-based and typically untested Plan B?

Perhaps I am mis-reading the situation. Nature has developed some very impressive, very complex systems by taking individually unreliable things and hooking them together in their millions to create very reliable things. Perhaps that is the destiny of computing - a highly reliable Plan A based on a Plan B which just replicates Plan A because it is cheap to do so. Ant hills and bee hives spring to mind.

Perhaps we will never need to take the stairs. Perhaps there is a deep reason why we - as tools of nature - are hooking computers into bigger and bigger networks?

Perhaps that is why I feel a bit like a self-important insect all of a sudden.


seanmcgrath.blogspot.com