I was listening to Ron Jeffries and Chet Hendrickson on the Cucumber podcast, and I heard something that helped me reframe agility and craft in a way that was very meaningful to me.
He was prompted by Sal Freudenberg talking about asking for permission to use techniques such as test-driven development, rather than treating it as part of the job.
Chet Hendrickson: I think you’re right; it seems odd that we ask permission. We believe we have to have permission to do good work. I believe that on the first day of a new greenfield project, the codebase is perfect. It does exactly nothing, and it does it in zero lines of code.
Steve Tooke: There’s no bugs.
Chet: There’s no defects. It’s beautiful, perfect. And every time we add a feature, our job is to get it back as close as we can to that level of perfection, so that whatever we do next would be as if it was the first thing we ever did, and therefore we didn’t have any of these constraints on us. Imagine working that way, that everything I did was like the first line of code I wrote, in this file, in this project. That’s what we want to get to, and that’s what the craft is, learning how we get back to that point before we say, “I’m done with this.”
I recommend listening to this snippet, and then the whole thing.