I am an engineer by trade, and Wife points out that I have an engineer mind.

While I spend much of my time working with complex systems, I understand that simplicity is king. Simplicity is actually quite difficult to achieve because it takes work. You start off doing what you need to do, over time things grow and it will become more complex and kinda messy. You must take the time to stop, step back, and reengineer and rearchitect things to regain that simplicity. Typically this will mean you must discard and cast off.

Antoine de Saint-Exupery said:

Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.

Tao Te Ching #48:

In the practice of the Tao,
every day something is dropped.
Less and less do you need to force things,
until finally you arrive at non-action.

Simple is not easy, but it is best.

I’ve seen a few things in the past couple days that reinforce this.

I stumbled across this blog posting on “What is good code?

Good code is simple. Even complex good code is comprised of simple building blocks. Good code hides or cuts through the complexity in the problem, to provide a simple solution – the sign of a true coding genius is that he makes hard problems look easy, and solves them in such a way that anyone can understand how it was done (after the fact). Simplicity is not really a goal in its own right, though; it’s just that by means of being simple, code is more readable, discoverable, testable, and maintainable, as well as being more likely to be robust, secure and correct! So if you keep your code simple (as simple as possible, but no simpler), it is more likely to be good code – but that is by no means sufficient in and of itself.

And all of this talk of simplicity isn’t just something for the world of engineering…. I think it applies to all things in life, and I think it’d do well to be applied to government.

Witness the mess there is in classifying sensitive information: (h/t Slashdot)

Protecting and classifying sensitive information such as social security numbers shouldn’t be that hard, but perhaps not surprisingly the US government has taken complicating that task to an art form.

It seems that designating, safeguarding, and disseminating such important information involves over 100 unique markings and at least 130 different labeling or handling routines, reflecting a disjointed, inconsistent, and unpredictable system for protecting, sharing, and disclosing sensitive information, according to the watchdogs at the Government Accountability Office.

Read the full article (it’s short) to see just how messy the problem is. This is not simplicity, this is about the furthest thing from simplicity. How does this make life easier?

Then I see this flowchart on Department of Defense acquisitions:

The Integrated Defense Acquisition, Technology, and Logistics Life Cycle Management System -- MY BRAIN HURTS!

Wow. Even the name (The Integrated Defense Acquisition, Technology, and Logistics Life Cycle Management System) is a complex beast.

I truly hope no one considers that to be a simple, streamlined process.

Have you ever noticed, any time the government talks about streamlining or improving their process, they always create some new group to do so? Nothing ever gets shut down or shed or cast off… it’s always grows.

If people are tired at how inefficient government is, at how bloated and slow it is, how complex, how confusing… why aren’t we working to truly simplify things? Why does no one believe in casting off? Why do we call them “law-makers”, as that seems to imply all they can do is make more laws instead of refining or repealing what we already have?

Why don’t we have any politicians that run on a platform of repealing, stripping down, and simplifying? Why is a discussion of “loss of government jobs” considered a bad thing? closing of government agency a bad thing?

Consider how truly simple things are better in life (or at least, consider how those ugly complex things make life difficult). Work towards the ideal.

2 thoughts on “Simplicity

  1. “For every complex problem there is an answer that is clear, simple, and wrong.”
    – H. L. Mencken

    There are plenty of things that are complex because that is the best way to do it. Farm equipment for example. Some of those combines are incredibly complex to solve problems that unavoidably complex.

    Simplicity is a great goal, but complexity, in and of itself, is not a sign of failure.

    • Ah, but simplicity is relative. You know… be as simple as possible, but no simpler.

      Some things can have lots of parts, lots of bits and pieces, and end up being quite a mountain of stuff. But if that’s what’s necessary to get the job done, then it is. However, should the mountain be bigger than what’s necessary to get the job done?

      So, a combine may be more complex than a hand-flail, but how complex does a combine have to be to get the job done? How much extra and perhaps unnecessary stuff might be there in a particular design? So relatively speaking it may have more parts and interactions, but if it’s as simple as it can be to do what it needs, there we go.

Join the discussion!

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.