Aug 2, 2010
Achieving Simplicity
There are two ways to achieve simplicity. One is to do without. The other is to simplify a complicated problem until you arrive at a spare, elegant solution.
The first approach achieves the appearance of simplicity by shoving complexity into places where it is unmanaged or poorly managed. It’s a form of denial. That sounds bad, but simplicity by denial is often the most efficient solution. It achieves a good outcome without the cost involved in optimization.
We tend to over complicate our lives. Even (or maybe especially) our businesses. Often the greatest cost of doing without is the pain of knowing you’re doing without. The demands of “More” is the siren’s song of our age of abundance.
There are times, however, when the first approach is more costly than it appears. Simplicity through one-size-fits-all denial shoves complexity into spaces where it is unmanaged or poorly managed. While it solves a subset of the problem, it often makes other aspects of the problem worse. Sometimes the costs of the “simple solution” dramatically exceed its benefits.
When are reflexive efforts to simplicity through denial counterproductive? When the “needless complexities” actually turn out to be important parts of the problem. The trouble is, with our fondness for “more”, it’s hard to figure out whether a particular complicating detail is “needless” or “important.”
The only way through that challenge is to pay careful attention to your edge cases. Ask “What does this have in common with core examples?” “Is this really an edge case, or evidence that we haven’t formulated the problem elegantly?”