Red Squirrel Reflections
Dave Hoover explores the psychology of software development


[Previous entry: "Going to AYE"] [Main Index] [Next entry: "The Friendly Tiger"]

Experiencing an Emergent Design
Thursday, October 14, 2004

This week I participated in one of my all-time favorite pair programming sessions. Dave Astels and I tasked ourselves with the final task in a user story that I had been working on for a few days. We needed to wire together all of the previously completed tasks in the simplest way possible.

We drove our solution with our favorite tools IDEA and JMock, taking very small steps. We developed our usual rhythm: one of us writes a test, the other makes it pass, then immediately writes a test, and the first gets it to pass. Repeat. Complimenting our rhythm, we developed a grumpy, early-morning banter. This banter led us to take even smaller steps, as we tried to out-lazy each other a few times, getting to a green bar with as little code as possible.

A few hours later, our grumpiness had disappeared but our rhythm had remained steady. We were excited by what had emerged. Our design was so simple, it almost felt wrong. I felt very proud of it.

Posted by Dave

Powered by Greymatter