Some observations and concerns on troublesome terminology

"Agile" methods and torpid programmers
© Conrad Weisert, Information Disciplines, Inc., July, 2002

This article may be circulated freely as long as the copyright notice is included.

agile adj
  1. Able to move in a quick and easy
    fashion; active
  2. Mentally alert
-- The American Heritage Dictionary
agile a
  • quick-moving, nimble,
- The Concise Oxford Dictionary
agile adj
  1. readily able to move quickly
    and easily
  2. mentally quick and resourceful
- Webster's Seventh Collegiate Dictionary

New coinage

Promoters of Extreme Programming (XP) and some other iterative and incremental approaches to software development have coined and tried to preempt the term "agile" to describe both their methodology and its practitioners.

That's jarring to those of us who've been assuming that all competent software developers are agile. Indeed we always thought agility was central to the very nature of both programming and systems analysis.

What does "agility" mean in software development?

As a professional who takes pride in his agility, I interpret the term to mean:

What "agility" most certainly does not mean to us is abandonment of all discipline. It doesn't even mean abandoning a particular discipline that we may find inconvenient at the moment.

What's the opposite?

If we allow the extremists to preempt a perfectly good term that accurately describes what we all do, then what terms do they leave us to describe non-agile methods and non-agile programmers? Antonyms of "agile" include:

Sorry, those terms are not only insulting but grossly inaccurate. What I do is agile in every sense of the term, in some ways more so than what the extremists propose, and I'm not giving it up.

We can't recall any earlier methodology revolution whose very name so disparaged those who didn't embrace it. Unstructured programming may have been "monolithic", and non-object-oriented programming may have been "procedural". Those terms had negative connotations, to be sure, but they didn't insult professionals with quite the same sneering condescension.1

Answering the extremists

I and various colleagues have been working up an answer to extreme programming (XP), drawing upon XP's strong points in the context of a more disciplined approach. We haven't decided yet what to call our approach. Some propose "moderate programming", while I favor "prudent programming".

Will we consider those who reject our methods immoderate or imprudent?

1 -- Of course it's not just the terminology that's insulting. If you've attended a recent presentation by an XP zealot, you've heard how they characterize the unconvinced.

Return to IDI home page

Last modified June 27, 2002