While CCNet Tray is a great, there is arguably even great value in a physical manifestation
of KPI monitors. Jared
Richardson recommends that I look at lava lamps as a build notification system,
but I think there may be problems with that idea. Lava lamps take a long time to heat
up.
Here are some other ideas for how to physically represent build notifications.
-
Shock Mats / Massage Chairs
When the build is not broken, all developers receive a generous helping of smooth,
relaxing massage through chairs. But when the build gets broken, identify the cuplit
by following the tortured screams of agony. One outstanding issue is the decision
of whether or not to build esprit-de-corp in the team by having the build machine
identify the individual developers, or simply punish all for the mistake of one. This
works in the Marines, why not on your development team? -
Fire Alarm
The abundance of near autistic, Asperger’s Syndrome afflicted IT workers makes this
a compelling option as loud claxon can be truly punishing. The downside is that loud
noises can debilitate some nerdy developers for hours, thereby taking even longer
to fix the build, making the effectivity of this option sketchy at best. -
Star Trek Threat Claxon / Whale Music
This reasonable comprimise marries the world of the artist and that of the engineer.
Once in college I was forced to take an art class and listen to whale music while
staring at my hand for 2 hours at a stretch. Apparently, this is relaxing so use it
when the build is good. The emergency claxon will whip your developers into a frenzy,
all be it a jovial one. Can’t you just hear the rushed conversations in the hallway
as people stack up behind the cubicle of the offending coder quipping, “You’ve got
to give her more, Scotty.” While the paniced developer replies, “I’m giving her all
we’ve got, Captain!” Good Times! And it will never get old.
For any form of audible build notification, it will return great dividends to gain
access to your building’s PA system. Official rebukes coming through the loudspeakers
will give your build breakage the ring of an elementary school teacher calling someone
to the office, at the same time serving to notify everyone in the company of the transgression.
This is particularly useful for the public shaming that we all know is a good motivator
for individual creativity.
Whatever the form your build notification system uses, I hope that you keep the fundamental
trinity in mind. Public humiliation, pain, and hopelessness. If you can construct
a build notification system that enforces these principals, you will have fewer bugs
in your code trunk, I promise.