For as long as I can remember I have been evangelizing, promoting, practicing, coaching, and training agile. For me as a developer the goals for applying agile approaches and techniques are pretty clear. I want to make better software. Higher quality, better suited for use, and possibly also faster. And from my own empirical evidence I can certainly state agile helps.
Gone with the wind
So you would say the current raging popularity of everything agile would bring greater joy to my personal life. Unfortunately it doesn’t. Agile has become the new magical keyword for improving just about anything thinkable. There’s an agile mindset. The word agile is dropped on a daily basis in advertisements. There’s agile cars, agile games, and even agile washing powder. And on the fly agile seems to inspire people, communities and even movements to change the world. Great.
Yes, I know agile is characterized in dictionaries by quickness, lightness, and ease of movement or even nimble. So yes, I totally agree agile can be applied to much more than software development. But to quote Clark Gable in Gone With The Wind: Frankly, my dear, I don’t give a damn. I don’t care much for changing the world, or even changing organizations. I want to write software. Better. Faster.
Let me give you some examples where agile is going. At a recent agile conference delegates put up a board of interesting books. It contained highly agile books, such as Your Brain At Work, Tribal Leadership and Fearless Change. Without any doubt very interesting and worthwhile books. But what happened to the classics? I didn’t spot Design Patterns, Framework Design Guidelines, Code Complete, Clean Code, or Patterns Of Enterprise Application Architecture?
These days, agile is used as a adapter for all kinds of coaching and personal improvement. From Getting Things Done through neuro-linguistic programming to gamification. There is even an agile game conference in the planning. Or what about personal energy management, product owner “light bulbs” or agile kitchens? All very nice, but very little to do with programming. As said, agile is becoming an accepted synonym for any form of personal development.
Half-full or half-empty?
And it’s getting worse. In many organizations I’ve noticed that agile is both used to illustrate failure of things that have absolutely nothing to do with agile, as well as an explanation for things that go well. Also having nothing to do with agile. Let me also give some examples of this interesting use of the word agile.
First of all, agile seems to become synonymous for anything that is done just-in-time. For instance, some account manager, barely making the deadline for submitting a proposal to a client, commented on the process stating: “Great, we did this really agile,” suggesting that delivering just-in-time is really agile. Nor the proposal, nor the way it was written had anything to do with agile whatsoever. At another occasion, two people showed up late for a meeting. The organizer of this meeting, which was neither a kick-off, a retrospective nor a stand-up meeting, just smiled and said: “Well, that’s agile, isn’t it?” Well, it isn’t. So agile also has become a synonym for things are run over a deadline. The glass can be half-full or half-empty, depending how you look at it.
I suppose it is due to the liberal definition of agile that the word, and in its slipstream words such as Scrum, Kanban and Lean have become daily speech patterns. I am quite aware that we as software developers and testers have no right to claim the word agile for ourselves. And I for one certainly wouldn’t want to deprive anyone from having fun with it. Everybody is entitled to personal development, or to chasing his or her dream to change the world or even an organization, but sometimes I wish we could just go back to what we developers and testers do best: write code and test functionality.