Dimensions Of Simplicity

When you are told to DoTheSimplestThingThatCouldPossiblyWork, you might ask "WhatIsSimplest?" The simple answer is do whatever you find simplest.

Here's a less simple answer. Simplicity comes in many dimensions:

 1) Codability  - how quickly you could code it
                  "The less you change, the less new stuff there is to understand"
 2) Compactness - how few lines of code it would take
 3) Elegance    - how well an implementation would get to the essence
 4) Familiarity - how many people would likely understand the implementation
                  "It's simple because it's a standard binary tree."
 5) Legacy      - how well solution leverages existing tools
                  "It's simple because we don't have to do much work."
 6) Obviousness - how quickly you think of the idea/algorithm
                  "It's simple because it's the first thing I came up with that works."
                  another important factor: how likely is it that someone else would come
                  up with the same solution
 7) Readability - how quickly you can understand it the next day (or other people).
                  "It's simple because I can figure it out at a glance."
When you evaluate possible solutions, you need to decide which dimensions of simplicity matter the most for your project.

You also need to evaluate whether utter simplicity is worth the complex undertaking you will be compelled to if you seek it. And in the interest of keeping this page (relatively) simple, we explore the ParadoxOfDimensionsOfSimplicity elsewhere...


Main benefits:

Codability:

Compactness: Elegance: Familiary: Legacy: Obviousness: Readability:


Shortcomings/strategies: Codability:

Elegance: Familiarity: Legacy:
??? I don't think there's a universal counter, it really depends on a lot of things (Do we own it? Can we make changes economically? Is it up to the job?)

Obviousness: Compactness: Readability:


CategorySimplification


EditText of this page (last edited April 8, 2011) or FindPage with title or text search