Simplicity can be Complex and Complexity really Simple

EDDYMENS
3 min readSep 15, 2016

It’s quite amazing when you think about the numerous solutions in existence today, most of which we take for granted .

Some of these solutions come with simple implementations and others very complex. The complexity of these solutions do not have a direct correlation with the complexity of the problems themselves. Take the problem of having to lift load from X to Y, this can be challenging but then it takes a simple implementation such as a pulley to overcome it. More examples of such solutions include absorbing huge electricity of lightning with a thin iron/copper wire and rendering an elephant immovable by tying it with properly twined dry grass.History has thousands of incidents where simple solutions solved very complex problems.

But let’s throw some truth on the above solutions. How does one really come up with a solution like the pulley or know all that is needed to absorb lightning is a thin wire ? The process of solving any problem has chances of growth in complexity .Simply put , simple solutions may involve complexities.

The Nine Dots Problem

Thinking of coming up with solutions to problems as a way of combating complexity leads to the simplest way to handle the problem.I have come to believe this in my line of work as a software engineer . I see people think of it as the process of coming up with complex solutions to solve problems when in fact it should be the inverse .We should race against complexity not work towards it. Really, thinking about it wouldn’t the world be better without so much complexity?

We always seek simplicity in other peoples work and yet most of us do not manifest this in our own work.

I will give an example . I use to freelance and most of my clients sounded like “well I am paying him, so he had better implement all of the features”, This usually led to the core of the product being embedded underneath tons of unneeded features and yet they thought about their business as a solution to some problem . I bet engineers at medium had the power to implement the “reading history” feature from day one but instead took time to focus on what actually makes the product better. Sometimes we create unneeded complexities all by ourselves without much influence by the problem itself.

I must say tackling complexity is really hard and the last thing needed is another layer of complexity from our processes towards solutions.

Solution to the Nine Dots Problem

Coming Up With Simple Solutions

Think About why the problem exists in the first place . Sometimes in the process of coming up with a solution to a problem you need to step back and think to yourself why you are even tackling the problem. This sometimes leads to the discovery of alternatives to getting the problem solved and most often these alternatives are much simpler and better. These days you may ask one why send or wait on a box mail when you can use emails .Soon we will be asking why use emails when you can use or do Y(a better mode of communication)?

Think about the least you have to do to solve the given problem.When you don’t have so many alternatives to explore,you may seek the most effortless(less effort) way to get to the solution and this is key to keeping it simple . But this can be tricky . This may sometimes lead to a not so good solution to the problem. So thinking about the best yet simplest way to solve the problem is needed to come up with a solution that actually works. I know this can be hard. It’s why I focus on the first alternative more :)

Always aim for Simplicity

I wanted to add this quote by leonardo da vinci, somewhere in the post. I guess I will just leave it here.

Simplicity is the ultimate sophistication.

--

--