I hope this doesn’t come across as a bile blog - it’s not intended to be. It’s just a sideways look at movements in the software industry. Movements of idea create change, they also tend to become cash cows for consultants. Gradually ideas get diluted for ease of consumption.
A manifesto feeds on our desire for finding better ways to do our work but often fulfils another purpose for consultants to create a new pool of clients to feed on. Leaders catalyst these movements with a combination of fanaticism and charisma. Experts are able to express ideas powerfully enough to create followers who want some of the same for skill and power for themselves.
Books, conferences and training are the tools that consultants and trainers use to create a market for their skills. Learning new ways of doing things can be very helpful and experts can help give momentum to any change. However, all too often simple ideas such as Scrum and Kanban become overcomplicated by the drive to sell tools and training to support process. People get bored of the same faces and tired ideas, they find the ideas hard to implement and long for the excitement of something new. As each hype cycle passes, they’re ready to hear about the next new thing.
I’m going to use the software craftsmanship movement to illustrate. Back in the nineties, the term “craftite” used to be bandied around on comp.object and ObjectTechnologyUserGroup forum by Elliot as a derogatory term “the combination of pragmatist and empiricist practices in software engineering” The Agile Manifesto took this approach “We are uncovering better ways of developing software by doing it and helping others do it”. Teams implementing XP in the early days placed our faith in test-driven development, refactoring and pair programming to improve design. There was a belief that if we could get improve at the micro level this would have an impact on the macro level. There was a dogmatic zeal with which programmers attempted to apply all of the practices.
In 2001 following the rise of XP, Pete McBreen wrote “Software Craftsmanship: The New Imperative” from the Amazon blurb “writing code is no longer the hard part of development; the hard part is figuring out what to write. This kind of know-how demands a skilled craftsman, not someone who knows only how to pass a certification course.” I wholeheartedly agree with this statement, made well before Certified ScrumMaster was created by Ken Schwaber.
The early conferences around XP and were quite technically focussed starting with XP2000, an academically run conference in Sardinia. As a small conference XP20xx still continues in much the same form and with some of the same people on the steering group. and XP Universe 2001 which Object Mentor ran for 4 years before Uncle Bob was bought out by Agile Alliance and merged with Alistair Cockburn’s Agile Software Development conference to create the large Agile unified conference in 2005. Sadly, software developers started to find the big Agile conference less appealing as there were more non-technical sessions reflecting the wider attendance which now included analysts, product managers, project managers, testers, UX. There seemed to be more and more sessions about scaling agile, creating backlogs and planning poker with what seemed like less than 20% sessions interesting to developers. Naturally technical sessions in the schedule centred on different technology stacks so there were even fewer sessions a developer might find interesting. Developers started to prefer going to broader software conferences with an Agile track over the big Agile conference with a developer track.
The Software Craftsmanship movement sprang up as Agile software development conferences started to squeeze out technical practices. This was a worrying trend for any consultants who wanted to find developers to lure into TDD and Refactoring training. In 2009, the first conferences on Software Craftsmanship emerged along with a new manifesto http://manifesto.softwarecraftsmanship.org/ The UK Software Craftsmanship conference had Micah Martin from 8thlight as invited speaker plus local XPDay regulars such as Keith Braithwaite, Steve Freeman et al. The first US conference SCNA literally piggybacked on Agile2009 and invited speakers who were in Chicago for the big Agile conference with sponsorship from Agile Alliance to cover costs. 8thlight took the same approach in 2010 and only later settled on an annual event in their home city of Chicago.
Corey Haines set a shining example with his pair programming tour and also kicked off the Code Retreat movement http://coderetreat.org/history
Another couple of years and SoCraTes started in Germany and the first SoCraTes UK in 2013. This fractal splitting of conferences keeps them small and even though SoCraTes takes an unconference format most sessions are run by consultants and independent contractors. I’ve even heard this format being complained about because decision makers don’t attend so sponsorship is harder to attract.
My view is that the splitting of conferences to focus on software craftsmanship has squeezed out sessions about communication with stakeholders and customers about what software to build and how to apply Lean principles. The emphasis seems to be largely on XP/Agile technical practices, such as Test-driven development, refactoring legacy code, pair programming with an occasional session about estimating in complexity points. I find this odd as it feels like a collection of cogs without the rest of the machine. There don’t seem to be sessions about how to add value and create productive partnerships. Collaboration and conversations about business which are pretty vital to figuring out what software to build gets squeezed out of software craft events. Perhaps this is a reflection of the industry trend to specialise more and reply on specialist roles over all-rounders.