March 11, 2006

Don't Break the Build!

Where I work, we usually perform a daily build.

The idea is to have continuous integration of new features, and to provide quick feedback to the Developers when something isn't working.

Occasionally, we'll run into a stretch in the development cycle where the build is frequently broken.  This is bad - very bad!

So, over the years, I've tried different techniques to encourage Developers to unit test their changes before checkin so that they don't break the build.
  • I've given out toy bugs
  • I've tried funny hats
  • I've tried posters with RedYellow and Green status indicators
  • I even wrote a song once ("May the Build Remain Unbroken")
One technique I use now is the "Angry Homer".  I got this "full size" standup at a local party store.  It's placed outside the cubicle of anyone who breaks the build.  I often have Homer hold a little reminder sign ("Breaking the build makes Homer angry!") as well.

When someone corrects a broken build, or fixes a particularly bad bug, I often give them a small reward like this one: