3 ms·
I'm uncertain to what extent I can agree that agile and labor unions are similar. They have some superficial features in common, but I think the fundamental str
by fennecfoxen 13y ago
I'm uncertain to what extent I can agree that agile and labor unions are similar. They have some superficial features in common, but I think the fundamental structure is radically different:
1. A unionized factory worker performs the same sequence of operations over and over to achieve a standardized type of output. An agile software developer is generally combining operations in new ways: if it's the same thing over and over again, your developer is not very good at figuring out how to reuse code.
2. The nature of the employer relationship is different, at least in today's economy. A typical software engineer is reasonably hard to replace and can apply skills at a variety of alternative employers. The best case for a labor union is when the opposite is true.
3. I think the causal relationship is reversed. The reason that agile is adopted is not to protect programmers from off-shoring or long hours (typical union pitches). It is adopted because the firm is willing to believe that the co-located team with decent hours is a better deal. The union/management relationship may be starkly adversarial; the agile-team/management relationship far less so.
So if there's a UCD fad going around, I don't see it as capable of disrupting the "agile" ecosystem's employees' lifestyle the same way that some new process or external shock could disrupt a unionized manufacturing ecosystem's employees -- not unless it really fundamentally changes how a coherent piece of software ends up finding itself structured, and a couple of wireframes and the like aren't going to do that.
- wildgift 13y agoNot all unions are for factory workers. We all have to get beyond that stereotype. There are unions for journalists, social workers, teacher, police officers, college instructors, and nurses. What the union represents in these fields is generally resistance to becoming "factory workers", or more specifically easily replaced workers. Early factory unions also tried to retain special skills, but automation prevailed... so the union instead went along with the automation, but demanded a greater fraction of the gains from productivity increases. Agile is adopted because it's a system that works better for some situations. The "deal" is that to get the Agile product, you have to hire Agile programmers, who have a belief that they must work a certain way. Refusing to allow management to control the process is adversarial to management, even if management is happy to go along with it to get the end result. And speaking of adversarial... what could happen is that UCD will end up being even less adversarial with management than the programmers. After all, they are going to be iterating designs to find the balance between "works for the business" and "works for the user". The programmers will be implementing after all the iteration, and be considered a cost center that can be squeezed for more output for less money.
- marcus_holmes 13y ago1. I think you have a strange idea of what unions are and do. 2. ditto. The 'best case' for a labor union is that their members are highly skilled and hard to replace, with lots of alternative employers. 3. The article clearly states that Agile is not implemented in order to protect developers, but the net effect is the same. Agile team/management relationships cannot be adversarial because Agile. The point the article makes is that UCD separates the design of the system (the bit that needs management and user contact) from the implementation, which then allows the implementation (as wildgift points out) to be considered a cost and Taylorised (squeezed) into 'efficient' permanent crunch time.
- fennecfoxen 13y agoAh. My ideas of labor unions presented here are in fact strange, because they have been narrowed (for the purposes of this discussion) to the perspective of "the union exists to protect your interests against rampant Taylorism imposed from the management, in the same way that Agile is posited in The Article to protect programmers from something analogous." While labor unions' members may in fact be best off under a scenario such as you describe in yourpost#2, that's not a grand example of a case where you can say "we need a labor union to protect our interests from management or our lives will be made miserable by exploitation" and seems not to relate to the issues raised by the article.
- wildgift 13y agoRegarding point 3, I should have worded it differently. What I mean is that Agile is inherently adversarial to what are generally considered the tactics of management, which include being able to replace workers, to move production to different locations, to increase the pace of work, and generally have flexibility. I didn't mean that the programmers and management are going to fight or feel at odds with each other. They will have a conflict if management decides to use those tactics, but there are other ways to increase productivity. If workers and managers can generally find alignment with, and achieve, the goals of the company, the conflicts are avoided.