Why programmers often tend to overcomplicate everything?

The answer is simple:

Our mind always wants complex tasks.

That’s why we subconsciously always looking for this complexity. And this is where things become interesting. Its often a challenge for programmer to prevent himself from overarchitecting and overcomplicating solutions. It can become a real problem for smart guys. As far as I am smart =) this is a real challenge for me too.

What should we do?

I propose a simple solution – convince yourself  that keeping thing as simple as possible is a bigger challenge than making them complex. Following the KISS (“Keep it simple, Stupid!“) principle is a very difficult task itself.

It is very easy to make things complex when you are smart, but it is unbelievable hard to keep them simple.

RSS Feed
  • Thomas Albers

    I completely agree!

    Additionally, I think most programmers MAKE time to think about tasks. In making time, we often derive a fantasy of an crafty and elegant solution to a complex problem. Amazingly, I have found that often times my initial gut understanding of the problem and the solution is often the simplest.

    I personally have made it a habit to set time constraints (sometimes as little as 2-3 minutes and never more than 20 minutes) to make decisions.

    Remember, most all decisions are temporary. Make a lot of little decisions and keep it simple*!

    = ]

  • Restuta

    Thanks for advice Tom, you are really, really good in making decisions I am learning from you constantly!

  • Anvaka

    Totally agree. I like the approach taken by agile developers: write the simplest code that works. And when it bites you with a sudden change request – refactor it.

  • Andrey

    Its really interesting to limit time on making a choice. Will try to use it.

    And indeed most all solutions are temporary! Thanks! :)


    if it’s true that your mind needs _complex_ task then i wonder why you are trying to come up with a _complex_ solution?

    creating a complex solution is a simple task while creating a simple solution is a complex task. much more complex.


    don’t mind my comment :) didn’t read the post fully

  • Marcel Aleman

    Being an programmer I know how the things are overcomplicated, actually we try it to make it more simple and easy in the sense of making the changes but instead of this the case is viceversa and everything goes wrong and complicated.

blog comments powered by Disqus



Find it!

Theme Design by