Friday, February 17, 2006

The Mystique of Software Craftsmanship, Part 3

[Previous Part]

Third Discipline : Let it flow

The lessons learned in other sectors of the industry can also be beneficial when applied to the IT field. The example that immediately comes to mind is the the invaluable contribution from Tom and Mary Poppendieck in applying lean principles to software development.

It is evident that there is still a lot to learn from other organizations: take for example the latest discoveries of the Mind/Body Institute that Herbert Benson has recently presented in Harvard Business Review (November 2005). Benson describes the mechanisms involved into reaching what he calls a “break-out”, a mental state that we call “flow” in the software development industry. Knowing that reaching this state is intimately linked to producing high quality software and that “it takes about 20 minutes to reach the internal state of flow, and only a minute to lose it” (as Alistair Cockburn stated it), we can consider these findings as essential for our business.

Benson describes a four-state cycle: stress, walk-away, flow and back to normal: mastering this cycle could allow anyone of us to reach our optimal productive state at will. The surprising aspect of this cycle is the importance that stress plays in reaching the break-out: voluntarily creating this stress is a critical aspect of being able to trigger the state of flow. Everyone will have a different way to raise its stress level: the important thing is to discover what is our own.

For example, one will naturally procrastinate until the deadline gets short, then, after a short pause, the break-out happens and she will deliver on schedule a better piece of code than if she has spent twice the time on it.

Being aware and able to control this internal mechanism is the kind of proper exercise that we should consider, not only to be more efficient but to ultimately harvest self-satisfaction in what we do.