In the name of making people more “M-like” in Agile, it has
the effect of retarding more competent and advanced developers in order to “spread
knowledge” in the name of longer-term agility and efficiency, which is a
speculative benefit at best. In any event, this retarding effect is
demoralizing and ignores the reality of inherent strengths and weaknesses of
human beings; not to mention each person’s unique personality traits. Which is
ironic, for an idea that is eager to replace “human resource” with “people.”
I see parallels between Agile and Socialism, where everyone is
a cog in a wheel of productivity as if talent and output were (or could be made
to be) equal. For all its touted promises of a self-sustaining equality, Socialism
destroyed itself as inferior citizens dwelled unproductive in the shadows. And
where those who were more inventive, creative, ingenious, entrepreneurial, etc.
were demotivated and demoralized. In the end, it had the overall effect of most
performing average and few being happy.
An interesting exercise is to move Agile to a different time
in history and see how it may have changed the way our world is today. A case
in point is Steve Wozniak. Read his book, “I Woz,” and ask yourself how “Woz”
would have fared as part of an Agile development team.
For starters, Woz would not have been happy in such an environment
and probably would have been considered anti-social or “not a team player”
(peer pressure). He would have been stifled if asked to transfer the various
tasks bouncing around in his ingenious mind that he knew had to be done to create
the first (Apple) Computer.
Woz would have been further retarded as he had to explain
those tasks (and the required background technical knowledge) in order to be
able to spread out those tasks to multiple team members. And, he would have
been asked to do all of that as an introvert – which is to say, not being
himself.
The fact is that Steve Wozniak is a creative genius and
nearly everything about Agile would have gone against his strengths and personality.
Agile undercuts specialization that free enterprise has been promoting for decades.
And, it ignores human psychology as if people can (or should) be transformed
into being something they are not.
To my observation, it’s as misguided as “gay therapy,”
thinking that if you just reason a certain way, or think/do X, Y and Z, you
will transformed (cured) into a different way of thinking that will benefit the
whole team (society). And, if you don’t, you are not collaborating and are not
a “group fit” and should move along to another place where your specialized expertise
and/or introversion have value.
In some ways, you can compare the Agile Team Ideal to the Soviet
notion of (re-)education, where the idea or system is considered the best of
all worlds, if only people were made to think and act the “right” way. You hear
this a lot with organized religion as well. Any time a Christian, Muslim, etc.
says or does terribly inhumane things (e.g. quoting the Bible to justify slavery/homophobia,
engaging in bombings for Allah, etc.), it’s never the idea (religion) behind it.
It’s always made to be the fault of the practitioner in order to save the
purity of the idea. As if the idea does not have any culpability in shaping the
way someone sees the world.
If you don’t believe me, scour the Internet for articles
where people write opinions contrary to Agile (or religion). Invariably, you
will find an abundance of replies from Agile Evangelists either engaged in ad
hominem on the author; or performing intellectual gymnastics to explain how documented
failures are not really a failure of the idea, but rather the way it is practiced,
implemented, etc.
Of course, Agile, like religion thrives on these kind of “defenses”
(compartmentalization, rationalizations) because there is no metric to measure
the validity (truthfulness; helpfulness) of Agile. And something that cannot be
measured can also not be shown to be false, invalid or unhelpful. In short, the
ideas of Agile are not falsifiable.
The reality is that Agile is just the latest in a long history
of attempts to add structure to research and development, except its proponents
pretend it’s less structured. However, Agile is the first such imposition in my
lifetime where it goes against human nature – where inherent strengths and personality
traits are considered malleable. Agile, rather than trying to co-exist with knowledge
specialties and human personalities, proposes a soviet-like idea where people
can be transformed into Agile Team Players, where everyone becomes an outgoing
jack-of-all-trades, while simultaneous maintaining team motivation, energy and
happiness. It’s a bold idea to be sure. But, since it goes against the
realities of human existence, it really is just a fantasy.
In the end, the chief beneficiaries of Agile are consultants
and authors that make their livelihood denigrating other methods and
rationalizing Agile. And, academicians who invent equations, metrics,
statistics, and graphing models that consultants and authors can put in their
published works; and managers can use to appear busy. This all merely creates a
mirage of making Agile appear more scientific and demonstrable than it actually
is.
For those tempted to point out those rare situations where teams
exist that already have personalities and breadth of knowledge consistent with
where Agile wants to take everyone: This is not a success story. It’s just
another way of saying that things would go swimmingly if everyone thought and acted
the way I think things ought to be done (and that does sometimes happen – but rarely).
Socialism works in some places, too. But, not because it is
able to transform people into a working model that maintains motivation and happiness.
But, rather because the people were already of like mind and personality that
fit well with the M.O. of the system.
A marriage made of a couple with highly incompatible traits
cannot be made to work by transforming one or both people in the marriage. At
least, if you have any interest in maintaining the happiness and motivation of the
couple. If you don’t care about those things, I suppose you can technically
make anyone a cog in whatever wheel you are trying to sell.
This is why you hear horror stories of the adoption of Agile
followed by a mass exodus of highly-skilled and creative engineers. It’s not
because they weren’t team players. It’s more fundamental than that. Most were
no longer happy as they felt their creative energy being sucked out of them. If
they also happened to be more introverted, they probably felt a similar energy
drain from being asked to perform daily in a way that goes against their personality.
If Agile Team-ology wants to be discriminatory in a manner that
is Darwinian in its selective effect, then it should just say so. But, it
should not be promising (to managers) dual (incompatible) goals of team agility
and team happiness. Certainly not if team is being defined as everyone on the
team.
Below are links to some articles I found online that speak
out against Agile. Some are rational and cohesive. Others, are more like
venting or ranting. But, I’ve still included the latter (labeled) as well
because even they have useful arguments and experiences to share:
Rational
Vent/Rant