One of the most celebrated principles of our time is the concept of simplicity. But how do you obtain simplicity, and when do you know a solution the simplest possible?
Einstein is famously been quoted to have said "A solution to a problem should be as simple as possible, but no simpler". In the same lines Leonardo da Vinci is reported to have said "Simplicity is the ultimate sophistication."
Great! I can hear what you are saying, but what does that mean?
How do you obtain simplicity? On this question - ideas have been widespread.
A good source to understand what we are looking for are
The Laws of Simplicity . A set of 10 laws that partially describe how to obtain simplicity, partially describe how you can perceive simplicity and partially state that some things cannot be made simple. A good reference for reflection, but from my point of view - not simple enough!
The site
The Simplicist describes two approahes to achieve simplicity (1) Simplicity by Reduction and (2) Simplicity of design. The titles are rather self explaining, but read the source to see the descriptions. This site is really simple so they are living up to their ideal, but is it maybe too simple? Anyhow, the two approaches may come in handy, so lets keep them in mind.
When is a solution the simplest possible? This is the hard question. I use a three step solution to this. Might work for you as well?
1. I believe you must base it on the possible
known solutions to a problem. There will be solutions out there that may be found in the future, but
simplest possible does not include the unknown by definition (the unknown is not possible at this point in time...).
Ex: Example could be that in 1850, the simplest solution to communicate a short message between Australia and England could be to send a postal mail by ocean traffic. Today it might be to send an SMS or just make a phone call?
2. Select the solution that based on key metrics (ie production time, money, energy needed) that you believe give the lowest value given lowest accepted value for some quality metrics/tests (ie defects, pollution, service calls etc ). This is based on the simplicity be design principle (2) above.
Ex: Our message could be sent by email instead of SMS, but would that be fast enough based on our expected response time from our receiver? We could also call instead to get the message over instead of sending and SMS, but would that be acceptable to the receiver. Would it be simple for him/her and take the little time it needed?
3. Once you select your solution, remove the least necessary part. Ask yourself will it still work given the quality metric/test. If the quality metric/test is still evaluated acceptable: Repeat and see if you can remove one more layer. This is based on the simplicity be reduction principle (1) above.
Ex: Say in our SMS communication. Can we remove the need to send multiple SMSs. Is it acceptable to only send one SMS with the message and require only one response? Maybe in some cases you can remove the response itself by saying that "if OK, no need for response. " That would assume that you really trust that the message was received (!), but still it proves the point of multiple possible reductions.
Try it! It works pretty well for me, and you get something that is pretty close to
As simple as possible, but no simpler.