Featured post

What makes Software Rot?



Base on the book, the Pragmatic Programmer, software development is immune from almost all physical laws or damage. However code tends to increase, and an increase in code could introduce code disorder. Programmers call it, "software rot."

There may be a lot of factors that can contribute to making a software rot, but base on the book the most important seems to be the "project's psychology or culture." Despite the best plans and best people in the project, it can still experience ruin. Yet there are other projects that despite the constant setbacks, they still are able to manage it well.

What makes the difference?

I thought the book really made a really good analogy to answering what makes the difference.

In inner cities, some buildings are beautiful and clean, while others are rotting.
Why?
Researchers in the field of crime and urban decay discovered a fascinating trigger mechanism, one that very quickly turns a clean, intact, inhabited building into a smashed and abandoned. and that is "a broken window".
One broken window left and not repaired for an amount of time creates a sense of abandonment. So when another window is broken, People start littering, Graffiti starts and damages come in, in a short amount of time.
The building becomes damaged beyond the owner's desire to fix it.

The moral to the story is, never leave broken windows.

Never leave your code broken, fix each one as soon as you discovered it. If the problem is big and can't be fix at that time, comment out, add notes or todos. Communicate to the rest of the team. Take some action to prevent further damage.

Of course there may be other factors that can contribute to software rot, but neglect accelerates faster than any other factor.

Comments