Agile is one of those subjects that people have strong feelings for, pro or con. Here's a rebuttal to a post recently made about the end of Agile.GETTY
Guest Column by Scott Heffield, VP of Innovation at Veracity Solutions
[Author's Note: This was one of many rebuttals sent to me in the wake of my article The End of Agile (which is now hovering just under 300,000 hits). In the interest of discourse, I've decided to publish it.] However, since this IS my blog, I also decided to post a counter-rebuttal (Beyond Agile: The Studio Model).
Scott's post follows:
As soon as I got to my desk on August 23, it was in my inbox... “The End of Agile” was one of those articles that sparked multiple conversations over the next few days in my circles. Admittedly, many of those conversations devolved into ridicule, but something else was hooking my mind. The team and I at Veracity Solutions have been practicing, training, coaching and delivering hundreds of development projects using agile for over 20 years, and it's fair to say that I've personally become an agile apologist. So, when a member of our marketing team approached me to write a respectful rebuttal, I couldn't turn down the opportunity. I'd like to thank Kurt for being willing to host the debate with his column here on Forbes.
In his original article, Kurt begins by telling a personal story of being part of a dreary development team where each morning a toy hockey stick was passed around the room. As each team member received the hockey stick they confessed their "sins" of failing to get their work done. "Forgive me, Father, for I have sinned. I only wrote two modules yesterday…." There's a lot of hyperbole in that story, so it is hard to tell what the real experience was like, but it was clearly not one the team members enjoyed.
If that had been my experience I also would have gotten an aversion to agile, and maybe even an assault charge for striking my scrum master with the toy hockey stick. That's a miserable experience!
However, my experiences with agile have been far different. I've seen agile principles improve someone's career and change their lives. Really.
On one of the first agile teams, I was a part of there was a developer, let's call him Bob. Bob was your classical quiet nerd with limited social skills. He was very smart, but he didn't speak up much and was hesitant to put his ideas forward. Many folks at this company had written Bob off and we had heard he was actually close to being let go. Our team decided to live out agile principles of trusting motivated individuals to do great work and embracing team communication. We began to pull Bob into the conversation, seek his input, and collaborate with him. Within weeks, Bob became a very important member of the team. He had good ideas and wrote good software solutions to our team's product. That project ended and I moved on, but I heard a couple of years later that Bob had moved forward in his career, helping new companies with challenges, and making significantly more money along the way.
My experience with agile has been very positive. I've felt the excitement of being part of highly performing agile teams. I've seen projects and teams that seemed hopelessly stuck use agile principles to come back to life and have success. I've enjoyed finding that shared appreciation for flow and efficiency that comes when speaking with another passionate agile practitioner.
Yet, agile is one of those divisive topics like religion or politics. Bring it up with a group of software developers and you will almost always spark a spirited conversation.
How can it be that people can feel so good and so bad about the same thing?
Consider a keynote given by one of the signers of the Agile Manifesto, Martin Fowler. In August 2018, Martin spoke at the Agile Australia conference. Martin says, “A lot of what people are doing and calling agile, just isn't.” He calls this “faux-agile: agile that's just the name, but none of the practices and values in place.” He goes on to talk about the “Agile Industrial Complex” and says that “…a lot of what is being pushed is being pushed in a way that, as I said, goes really against a lot of our precepts.”
Martin goes on to share that when they wrote the Agile Manifesto they believed that “What matters is that the team chooses its own path.” In fact, “the team should not just choose the process that they follow, but they should be actively encouraged to continue to evolve it and change it as they go.”
Why should an agile team do this?
Martin says “The agile movement was part of trying to push that, to try to say, “The teams involved in doing the work should decide how it gets done,” because let's face it, we're talking about software developers here. People who are well paid, well educated, hopefully, well-motivated people, and so they should figure out what in their particular case is necessary.”
There's a lot more in this keynote that is worth a read. Martin brings up the importance of technical excellence as we develop software. He addresses the need for dealing with rapid change and complexity. He references experts in the DevOps community who have found ways to actually reduce errors by designing processes to embrace change.
Why should we care what Martin says? Well, he was actually there “February 11-13, 2001, at The Lodge at Snowbird ski resort in the Wasatch mountains of Utah” when the Agile Manifesto was signed.
Alistair Cockburn, another signer of the Agile Manifesto, recently posted an article called "Agile is not dead, quite the opposite.” He traces the history of agile and acknowledges that “many people are turning agile methods to quick money. Agile is now an easy source of profit. Two-day certifications are the snake oil of the IT industry; organizational transformations the goose that lays the golden egg.”
He says that when considering methodologies for a new project:
“What is the something else that you think is more effective? For most projects, I can’t think of another way that is more effective. Collaborate, deliver, reflect, improve, in cycles, from first idea until final delivery. This works whatever the nature of the project (no, agile is not just for software).”
Collaborate, deliver, reflect, and improve, in tight cycles. Yup, that's agile in a nutshell.
Let's go back to where we started here and look at Kurt's article proclaiming the end of agile. Kurt proclaims “The Agile Manifesto, like most such screeds, started out as a really good idea. The core principle was simple - you didn't really need large groups of people working on software projects to get them done.”
Hey wait, that isn't what I read in the Agile Manifesto. Not even close. (Take a few minutes and read it yourself.)
I read something a lot closer to what Alistair said: "Collaborate, deliver, reflect, and improve, in tight cycles." Of course, Alistair should know, because he was also there at Snowbird and signed the manifesto.
Alas, Kurt wasn't there and didn't sign the Agile Manifesto. It also sounds like he's had some very bad experiences with folks that were practicing something that was frustrating, ineffective, and definitely shouldn't be called agile software development.
However, I don't think we've reached the end of agile. To quote Alistair:
“So, no, agile is not dead, on the contrary. It’s scarcely gotten started.
Collaborate, deliver, reflect, and improve, in tight cycles.
If you can find something better, use it.”
So, Kurt, I'm really sorry that you had those experiences. I hope those scrum masters that worked with you have given up on agile too. I don't want them evangelizing that kind of "faux agile." I don't blame you for thinking we need something different. I agree!
I hope that we can continue a public discourse here that can lead us to the changes that we need to serve our clients, users, and other stakeholders in the development process well with open minds.
About Scott Heffield:
As Veracity grows and expands, Scott is leading a team of Practice Directors to design innovative service solutions, bringing new and exciting value to companies embarking on a digital transformation journey. Scott brings over 30 years of IT experience across various roles, industries, and platform. As a developer, he spent 20+ years building solutions with Microsoft tools, Unix/Linux tools, and various niche platforms. Scott has provided executive technical leadership in several roles, including as Chief Technologist at the birth of Overstock.com, leading the team that created one of the trailblazing e-commerce sites. Scott has had roles in executive management, business development, software development, and project management at companies such as Tomax, inContact, Echopass, Veracity Solutions, and his own consulting company. His industry experience includes Healthcare, Retail, Telecom, Marketing, Logistics, and Financial. Scott is based in Salt Lake City, Utah.
Kurt Cagle is Managing Editor for Cognitive World, and is a contributing writer for Forbes, focusing on future technologies, science, enterprise data management, and technology ethics. He also runs his own consulting company, Semantical LLC, specializing on Smart Data, and is the author off more than twenty books on web technologies, search and data. He lives in Issaquah, WA with his wife, Cognitive World Editor Anne Cagle, daughters and cat (Bright Eyes).