On Monday I sat in on a webinar held by Martin Fowler and Jez Humble; both of ThoughtWorks. Like most of these it was supposed to be a thinly veiled advertisement for Cruise which is their new release management application built on top of CruiseControl, however, they had so many slides (34 for an hour long talk) that they go through the technical stuff and missed most of the marketing stuff.

Here are my notes

  • Release Management is all about making deployment a non-event
  • Cruise, and RM tools in general are a continuing evolution of better people interaction processes
  • Two main principles of Lean are JIT (just in time) and auto-nomination (Stop the line!)
  • Implementing Lean Software Development by Mary Poppendieck
  • Lean is all about finding constraints in your system and removing them
  • Seven principles of Lean
    1. Eliminate waste
    2. Build quality in
    3. Amplify knowledge
    4. Defer commitment
    5. Deliver fast
    6. Respect people
    7. Optimise the whole
  • It is not done until it is delivering value
  • How long does it take to deploy a single line of code? And is that deployment a repeatable process?
  • Make irreversible decisions at the last responsible moment
  • Make decisions easy to reverse
  • If something hurts, do it more
  • Build your binaries only once
  • Separate configurations from your binaries
  • Automation (of processes) has diminishing returns
  • During polls of the audience there was a large trend towards already having things automated (confirmation bias of the content?)
  • Efferent and afferent code couplings
  • The numbers produced by (performance) metrics might not be useful, but the trends tend to be

And here are the slides