There is a very interesting article about Agile methodologies as labour unions over at West Space Journal. I’m still making my way through it (it isn’t particularly long, but I’ve been… distracted) but I wanted to get some ideas down while they are fresh in my mind.
But, you should read that article I linked to. I’ll wait here whilst you do so.
The notion that Agile can be interpreted as the closest thing working coders have to a labour union is a compelling one. I’ve long thought that Agile was about protecting the Team from the vagaries of management and scheduling. This was something I keyed into early when first working for a company that was adopting an Agile methodology as a corporate standard. The ability to meet company demands using an agreed upon convention, and Agile-as-conversation was something that I saw early on as a real benefit compared to other team and scheduling methodologies I’d been exposed to.
I also found it very telling that even when everyone buys into Agile at a company, there are diverse ideas of how to go about doing Agile in a day-to-day manner. For example, I often found myself not making new friends among management when I suggested to Product Owners that they were welcome to attend a specific meeting, but that they were not there as stakeholders or participants. To me, a place where the Team could go away and come up with a cohesive plan as part of the Agile conversation was sancrosanct; having a PO there as an active participant was not only against the “rules”, it was contrary to the whole agreement of Agile.
Few POs wanted to hear this, especially technical POs who could not let go of their own ideas of how a Story should or could be broken down, and the cost of Tasks. These are Team notions, and I immediately saw the value of keeping these Team notions.
But I did not make the immediate connection of Agile to labour movements until I saw how this article broke down parts of the Agile Manifesto (well, the fact that both Agile and Labour are famous for their manifestos should have been a rather large hint) in order to compare and contrast with historical trade and labour concepts.
For example, it is obvious now that I’ve read it, but the whole idea of specialization vs. generalization and the neo-modern notions of “ownership” and separation of concerns in traditional methodologies borrowed from factory and mega-project management are one of the key ways Agile can be read as trade unionism.
The irony, of course, is that Agile is steeped in the nomenclature and assumptions of neo-liberal, libertarian, new-economy philosophy. In this manner, one could argue, the values and desires of The Corporation are used to, in effect, introduce collective bargaining into the mix. Almost without anyone on either side of the conversation noticing.
Well, at first.
In the years since Agile took the world by storm, it feels more and more like it is being watered down and eroded pretty quickly. Many companies have shoe-horned most of their Agile teams into a Frankenstein’s monster of Waterfall-with-Scrum, Stories-as-Requirements. Not only have we started to treat Agile as a buffet, we’ve made it all-you-can-eat and stocked the buffet with never-ending variations on deep-fryed, cogs-in-a-machine development.
The front-end stuff goes to the front-end developers, the service guys keep working on the services, and the mightly waterfall keeps falling. It’s not always a death-march, of course. And maybe Agile was doomed all along.
But, maybe it was doomed not because it was a particularly bad idea, but because it is actually at odds with the New Economy management wonks.