Palantir Build Contraption

October 22nd, 2008 | Jon

Here at Palantir, we use continuous integration as one of our development practices. Part of this includes running automated builds and tests. This practice is quite common, and is useful because it gives immediate feedback on (some of) the software’s correctness.

How it usually works

  • Developers submit changes to the code base.
  • The continuous build system detects a problem and the build “breaks” (or “goes red”).
  • All developers who made recent changes are notified via email.
  • Someone (usually the guilty developer) locates and fixes the problem.
  • The continuous build system verifies the corrected problem and “goes green”.

Ideally, the delay between failure and fix should be as short as possible. But failure notifications are typically sent by email, which can easily be overlooked or ignored. Clearly we can do better.

The Palantir Way

With some time, some hacking, and a little home automation, I came up with a simple visual notification system. Our continuous build process now has a few extra features:

  • When the build breaks, a rotating red light (the “build light”) turns on for a few seconds.

     

  • A personalized build light next to the culprit’s desk turns on to get his/her immediate attention.

     

  • When the problem is fixed, we celebrate: a bubble machine rings in the joyous occasion.

 

The enhanced system relieves the need to constantly check email, and gives immediate feedback to those who need to be informed (it tends to stop home-bound developers in their tracks). Also, it brings a bit of entertainment to the environment, and serves as a convenient mechanism for public shaming :) .

Leave a Reply


Palantir