You know the story. A bunch of white guys go into a room and bang out a document — nee, a declaration — that codifies a heretofore complex process using everyday words. A manifesto of sorts to ensure happiness. Prosperity. All that jazz. Their names ring across time as framers who changed the lives of millions of people and the fortunes of countless others. Kent Beck. Mike Beedle. Brian Marick. Jim Highsmith. And, of course, smackdab in the middle, Andrew Hunt.
+++
The year was 2001 and the world of coding had just crossed its Y2K transom. Companies had spent (according to a number tossed around by the uber estimators at Gartner) upward of $600B to put two extra digits in year data so planes didn’t fall from the sky.
Now, I want to put this in context. To date, Space X has spent $5B in R&D to change the economics of putting things in space. Space X is “worth” around $180B. Now, I want to put this in context. Space X gets 36 dollars of worth for each dollar of R&D. So, $600B of spend on Y2K should have been “worth” $21.6T. Now, I want to put this in context, the combined worth of all US equity on December 31, 2000 was $15T. This needs no context. Someone didn’t spend IT money very well.
The bunches of people who manage vast sums of money and armies of developers twice the size of the invasion force on D-Day aren’t going to admit to waste on that kind of scale. Someone or something else needed to take the fall.
That something was technical debt. A fuzzy logic notion that the shortcuts you take now to get things done faster have to paid back later.
This was some genius-level finger-pointing. The term had been around since 1992. By 1994, one paper mentioned it. By 1996, the one new paper about it called it a topic that needed more research. No one knew what the hell it meant so it was impossible to argue against. Plus, it had that scary ticking timebomb feel to it. Something had to be done about the scourge of software that led to the Y2K mess lest we accumulate more debt and have to pay it down. Now, I want to put this in context. In 2001, the national debt was about $5T. Today, it’s about $33T. Do we really worry about paying things down?
Those someones were the framers of the Agile movement. This is the moment when the white dudes went to Snowbird, Utah and, in just two days, banged out their 68-word manifesto that would change the way software would be developed for the next two decades. So far.
The Constitution used its 52 words to deftly set out clear goals — happiness, blah blah blah perfect union, justice, tranquility, liberty. Specific stuff.
The Agile manifesto spent its 68 words doing a great job of saying nothing. Things like, “…value: Individuals and interactions over processes and tools.” But, adding, we like processes and tools. We just like individuals and interactions more.
So, people started writing about Agile being a solution to the vague problem of technical debt. And, not just people. Consultants. The kind of people who get paid when they offer solutions to improve organizations plagued by vague problems. Technical debt and Agile methods were a match made on the whiteboards of McKinsey’s most-used conference rooms.
By 2008, the development community had defined Agile and adorned their leadership with virtual sashes half of faux FarmVille and half borrowed from the actual belts worn by martial artists who perfected their patterned crafts. For a large fee, blackbelts in Agile methods could parachute into your team dev and standup feature lists in morning meetings to optimize the goings on.
It felt so karmic that other parts of large organizations noticed. And, all of it stemmed from Agile’s twelve core principles. Self-organizing teams. Reflecting on how to become more efficient at regular intervals. Business and non-business people working as one. Dogs and cats living together. Mass happiness and Zen wrapped in a kumbaya chorus.
If your big company wasn’t Agile, something was wrong. Never mind that authors of the Agile manifesto were self-described organizational anarchists none of whom worked for an organization of any meaningful size. Their communal ideas were going to improve capitalism.
So, the Agile movement spread. And spread. And spread some more. It was so pervasive that three guys sitting across from me at the diner a few minutes ago said, “Single source of truth” about the menu to the waitress. When something reaches that level of mainstream, naysayers pop up to look cool by contradiction. Which is why, every few months, you read, “Agile has failed. Officially.” Or, “Agile is Dead, McKinsey Just Killed It.”
This time, the numbers back it up. 58% of Agile projects are late, are over budget, or have unhappy customers. Or, worse, failed outright. Now, if you’re a baseball player and hit .420, you’re going to Cooperstown. But .580 isn’t an impressive stat for a widely used productivity methodology.
But that’s just other people. What matters is how well it works for you.
We used Agile. We brought in a blackbelt. An Agile ninja master with years of experience and keynote speaking cred. He had us doing morning standups. We implemented Kanban boards to keep people on track. Our teams coded in pairs and in mobs. We had feedback loops to quantify and maximize customer happiness. And, in one year, we didn’t build a damn thing.
Worse, we lost every single one of our developers. Developers who had been with us for years told me they went from happily building to unhappily diddling. For us, Agile failed. It failed on a huge scale. Because… it was the entirely wrong approach for us. We had a great group of developers who could develop things and we put them into bureaucratic purgatory until they left.
Now, it seems, Agile isn’t working for anyone. Last December Freddie Mac let go all of its Scrum Masters. A major hospital chain has removed its Agile roles. BA’s booking software ia failing before our eyes.
I asked a friend of mine who works at the epicenter of bureaucracy — government IT what he thinks. “I don’t like Agile. I mean it’s useful if you’re still building software the way they did in the 1960s. But, for anyone with half a brain and modern skills, it’s redundant.”
At its best, Agile was a way for big companies to pretend they were startups.
I’m a startup guy. We take shortcuts when we build code to get products to people faster. Queue, GASP!
Getting out early and getting feedback has immense value. It easily offsets the “debt” some people believe we incur from the shortcuts.
But there’s more. The feedback we get from releasing usable products quickly often changes key market assumptions. That leads to us making significant changes from version one to version two. The wholesale changes in our code base means we never have to pay back the technical debt — assuming we ever incurred any. Third, great devs love to build product. They live for it and learn from it. A long time ago, I was a dev. And, “based.”
This is where my government IT friend is right on. Which, coincidentally, was his catchphrase when we were code jockeys in the ‘80s. Agile is ideal for banks that built mountains of code in COBOL in the 1960s that ran on AS/400s in the late 90s. Right before Y2K.