Broken Window Theory

Friday, April 8, 2005

Lately I’ve become a little obsessed with the “Broken Window Theory.” I was introduced to this theory by Travis and Charlie. Soon after, it began popping into my head at work, home, or while I was coding. Then I started noticing it in books and on the radio.

The theory is normally applied to urban decay and crime, however, it can be applied to almost anything. How did your apartment get so dirty? How did your code get out of control? Well, it’s all because of one sock, one poorly placed if statement, or one broken window.

One broken window, left unrepaired for any substantial length of time, instills a sense of abandonment — a sense that the powers that be don’t care. So another window gets broken. People start littering. Graffiti appears. Serious structural damage begins. In a relativly short space of time, the structure becomes damaged beyond the desire to fix it, and the sense of abandonment becomes reality.

The preceding quote was taken from The Pragmatic Programmer by Andrew Hunt and David Thomas. It basically means watch out for the small stuff. If you can keep the tiny cracks out early they won’t turn into gorges. The hope is that if your projects are pristine and another person is invited to change or update something they will take notice in its perfection and not want to be the first to break a window.