Like many of you, I travel a lot. Some of the travel requires me to wear business suits, and I’ve had to learn how to pack a suit coat so that it’s wearable when I unpack it. Years ago I learned the secret, but it recently occurred to me that the secret of packing a suit coat can be applied to Information Technology as well.
The secret of packing a suit coat is not to avoid wrinkles, as you might think. Instead, the secret is to make sure the wrinkles end up in places where wrinkles won’t be noticed.
Why does this relate to IT? Because it’s a lesson in perfectionism and prioritization. We all want our systems to be perfect, but we know that we don’t have the time or the budget to make that possible. So the secret of having our systems appear to be more successful is to make sure that the system limitations end up in places where the limitations won’t be noticed.
Sounds obvious, doesn’t it? Then why don’t we do it? Think about the typical everyday user of one of your systems. For online systems (web or not), what screens does that person spend most of their day using? For batch systems, what reports does the person use the most? Have you focused the majority of your systems improvement effort on making things better for these most common uses of your systems? On improving their usability? On improving their system performance and reliability? That’s where the productivity payback is, because that’s where most of the business labor goes: into the systems that are used the most.
But a common trap in IT is to get distracted by the so-called “corner cases,” the very uncommon situations where due to a certain combination of variables, weird buggy things happen in software. We tend to spend an inordinate amount of IT dollars on fixing these problems, “removing the wrinkles,” when we might be better off in some cases just moving the wrinkles to where they won’t be noticed.
Got a low-importance system that requires periodic down-time for maintenance? Don’t waste money on replacing the system with something that doesn’t require down-time—just schedule the down-time for a low-use time of the week, and let the users know. They won’t care if they don’t use the system much.
Got a software system that won’t properly handle a few extremely infrequent but bizarre combinations of variables? If it’s not a critical situation, then put in a workaround (e.g., suspend the transaction in question for manual intervention) instead of wasting resources on something that only happens once in a blue moon. Sure it’s a “wrinkle,” but who will notice!
The type of person who is attracted to the IT profession tends to be a perfectionist. That can be a plus sometimes, but it means that we always want to deal with 100% of a problem. Unfortunately, the world doesn’t need a 100% solution to a few problems as much as it needs 80% solutions to more problems.
When there’s not enough time or money to solve 100% of a problem, it’s usually better to focus on the 80% of the problem that matters the most to the most people. You can’t avoid wrinkles, but you can make sure they end up where they won’t be noticed.
And, oh by the way, if you haven’t learned the secret of folding a suit coat yet, click here to see my instructions.