The Simplicity Advantage


Posted on: April 3, 2013 by David Daly

Over the last couple of months I have found myself thinking time and time again of this quote attributed to Bruce Lee:

Atos The Simplicity Advantage“One does not accumulate but eliminate. It is not daily increase but daily decrease. The height of cultivation always runs to simplicity.”

When working on or reviewing technical architecture, software designs or code I always feel un-easy if the solution is starting to seem complex or big. For some, size and complexity may appear impressive but, for me, creating great software is about finding simple solutions. Why do I think this? Three reasons:

Simple solutions enable you to be more agile.

Projects need to be agile to support the businesses of the future which will be agile. Complex solutions do not lend themselves to agility. In Getting Real (an eBook from 37signals who created BaseCamp, CampFire and Ruby on Rails) this is described aptly:

“You’d think that twice as much code would make your software only twice as complex. But actually, each time you increase the amount of code, your software grows exponentially more complicated.”

It goes on to describe how reducing the size and complexity of the code reduces the level of management required, the amount of maintenance work and the number of bugs.

This matches my experience. As I described in this post, reducing the size of a code base enables you to innovate more rapidly and reduces the cost of maintaining and updating your product.

Simple solutions require significantly less effort to develop.

It stands to reason that if you are writing fewer lines of code then your project can be completed in less time. But there are other savings as well. As Jamie Arnold put it in his post about the agile delivery of a large government project:

“Had we focussed on fewer things from the outset, the overhead of getting people up to speed and the additional communication needed to manage this would have been far less and our momentum would have increased. Lesson: We should have committed to doing less.”

Simple solutions allow you to deliver more value.

It is my belief that all projects should aim to deliver as much value as possible, as quickly as possible. Choosing a simple approach enables this. This idea challenges the notion that you should always deliver exactly what is requested/required at the outset. Getting Real has advice in this area too:

“The key is to restate any hard problem that requires a lot of software into a simple problem that requires much less. You may not be solving exactly the same problem but that’s alright. Solving 80% of the original problem for 20% of the effort is a major win. The original problem is almost never so bad that it’s worth five times the effort to solve it.”

Sometimes this may mean changing a business process to fit a simpler software solution. And if you do decide to change a business processes you may well find that it can benefit from a reduction in complexity in the same ways that software does.

In summary...

Perhaps all of this advice is best summed up by a quote widely attributed to a man who evidently knew a thing or two about software development, Bill Gates:

“I choose a lazy person to do a hard job, because a lazy person will find an easy way to do it.”

Image source: Flickr.com

Share this blog article


About David Daly

Global Deal Assurance Manager at Worldline and member of the Scientific Community
David is the Global Deal Assurance Manager at Worldline, the European leader in the payment and transactional services industry. He is also a member of the Atos Scientific Community where he is leading the Digital Business Transformation track. In addition he is an Atos Distinguished Expert with a focus on Agile and DevOps, as well as being a Fellow of the British Computer Society and holding Chartered IT Professional status. He has worked within the technology industry for over 18 years in a variety of roles including developer, analyst, technical architect and development manager. He is a regular public speaker who often challenges conventionally accepted wisdom and has a passion for proving that alternative approaches can produce better results. He lives in Nottingham with his better half, his 2 young daughters and a female cat called Bob. Outside of work David enjoys running and playing piano in a 60s covers band.

Follow or contact David