• Software development is immune from almost all physical laws, apart from entropy This is known as software rot.
  • Many factors contribute to software rot, primarily psychology, or culture, at work on a project.
  • Studies show that hopelessness can be contagious, this supports the idea of the Broken Window Theory in Software Development and provides reasoning as to why it spreads through the contagion medium of hopelessness.
  • You should never leave “broken windows” (bad designs, decisions, poor code etc) un-repaired. Fix each one as soon as it is discovered (The Boyscout Rule) and if there is insufficient time to fix it properly then at least “board it up”.

Tip

In high-pressure situations, don’t cause collateral damage just because there is a crisis of some sort. One broken window is one too many already.

  • If you find yourself on a project where the code is well groomed, you will likely take extra special care not to mess it up. Even if there’s a deadline, release date or a demo, you don’t want to be the first one to make a mess and inflict additional damage.