To conclude the software craftsmanship week, I would like to take a brief look on the history of this movement. So, we’ll take a look on the Software Craftsmanship book, on the creation of the Manifesto for Software Craftsmanship, on the writing of the Software Craftsman’s Ethic, The Wandering Book and some apprentice blogs, some conferences, and the software craftsman swap programs from Obtiva, 8thLight, and Relevance. WikiPedia also has a great history on it with some points I won’t mention here.
Everything started with some books. According to WikiPedia the subtitle from The Pragmatic Programmer – From Journeyman to Master suggested the initial idea, but Pete McBreen wrote the book about it: Software Craftsmanship – The New Imperative. While he speaks mostly about the distinction between the engineering metaphor and craftsmanship as being at odds, nowadays craftsmanship can be thought as a compensation for the lack of engineering metaphor, rather than at a complete different end. After Robert Martin’s proposal to define a fifth value as addition to the Agile Manifesto: Craftsmanship over Crap, which he later rephrased to Craftsmanship over Execution. Obviously enough, he was already working on his book Clean Code – A Handbook of Agile Software Craftsmanship. Having collected many patterns in the past five year, Dave Hoover and Adewale Oshineye finished their book on Apprenticeship Patterns, which teaches the road from apprentice to journeyman, as opposed to the Pragmatic Programmer – From Journeyman to Master.
In December 2008 a first meeting was held to get the ideas about principles for Software Craftsmanship floating. It took up to March 2009 until the Manifesto for Software Craftsmanship was finished and made public. Initially the effort started around an opposition from the Agile Manifesto, still including the things that were valued less. Over time these were thrown out completely. Interestingly, Alistair Cockburn noticed that the Software Craftsmanship Manifesto was indeed a value-shift. He explained to me that he strives continuously between practices, principles and values when working with teams. I pointed out that over time he may apply double-loop learning and get to question the underlying principles and values. Alistair asked me at that time (November 2009), if I had noticed that the Software Craftsmanship had done just that.
After having the Manifesto out, the discussion about principles behind Software Craftsmanship started to foster. Over time we reached the consensus that we needed some ethic statements rather than principles. Doug Bradbury did a very well rewording of all the ideas floating around the thirteen people where the initial draft of the statements was discussed. Though, not yet officially released, the four areas “We care, we learn, we practice, we share” are also clearly available in the wording of the manifesto, though the ethics were formulated later based on the input from the December 2008 meet-up.
So, over the past year, there have been several apprentices at the companies that live Software Craftsmanship. Some of them also blogged during their apprentice time publicly about it. Colin Jones and Justin Martin are the ones I read. There is another apprenticeship from Justin at ObjectMentor here as well as many others.
Initially agreed upon 8thLight and Obtiva, companies also started to swap their employees between each other. The initial attempt raised some great interest. The public press covered it here and here. Though it might be considered harmful to share knowledge workers between companies, the professional level of both companies was raised by the program. So, Obtiva reached out to call the programm Software Craftsmanship spikes.
Even before the manifesto was written, Jason Gorman reached out for the first Software Craftsmanship conference, which was a great success. (If you see me in the videos, I had a bad journey to London, hardly slept, but the conference definitely rocked.) Later in 2009 the Software Craftsmanship North America conference followed up on it with even greater success.
Last but not least, Enrique Comba-Riepenhausen started The Wandering Book. This book is sent from craftsman to craftsman to collect the Zeitgeist for later generations to come. So far, there are great entries up, you should read all of them.
This finishes our little course on software craftsmanship for this week. Maybe, I will put up another week at some time later. Hope to see more of this coming from other craftsmen around the world.