Failing Worse Than Failure

One of my favorite websites, Worse Than Failure, today posted an article slamming the Agile Programming methodology. Their basic premise:

Good people can build good software no matter what methodology they use. We don’t need a weight-loss pill for thin people; we need to solve the real problem behind failure in our industry. The [...]

One of my favorite websites, Worse Than Failure, today posted an article slamming the Agile Programming methodology. Their basic premise:

Good people can build good software no matter what methodology they use. We don’t need a weight-loss pill for thin people; we need to solve the real problem behind failure in our industry. The bar for “acceptable� is far too low. We need to focus on improving the skills of the less-than-good in our industry.

While totally 100% correct, it also misses the point. This is easy as there are so many directives, software add-ons, books and other wacky things being shoved wholesale under the “Agile” tent that the central message has been lost. At it’s heart, Agile was a way for programmers of any skill-level to improve their code in the only way that matters: it’s usefulness to it’s users.

If you have to write a program (even one of the gigabyte plus “Excel Databases” that regularly find their way onto the WTF site), it’s better to incrementally deliver multiple versions of a program than to try and write a monolithic app that a year plus after it’s spec’d out you drop onto your end users lap.

This has as much to do with clueless end users as it does programmers. No amount of programming skill can get around such deadly obstacles as:

“You know, the new regulations went into effect and don’t have to do that anymore.”

“Who told you that? Denise? You know she drinks a bottle of Nyquil every day at lunch right?”

“We were told it was going to be a website, do you install the website onto our computers?”

Agile’s emphasis on early delivery of software of some functionality is a way to identify problems quicker than they would otherwise be discovered.

Have someone on your team who is “almost” done with that crucial library you need written? Better to find out now that it’s an unworkable Frankenstein of: generated code, inapplicable cut and pasted demo applications and chunks of a now defunct GPL licensed project that they found on SourceForge, than to wait 3 months down the line and be really screwed.

Agile’s not some be all end all of programming goodness and it won’t magically add IQ points or common sense to someone’s brain, but as a general strategy for writing code that is of actual value to someone; despite the foibles of humanity, it’s tough to beat.

Technorati Tags: , , ,

One Comment

  1. Jim added these pithy words on May 5, 2008 | Permalink

    Ah. Now I get it. So many of these “Agile Programming” books made it sound like… well, like something you needed to buy their book to understand. But now I see what it really is. Thanks!

POST A COMMENT

Your email is never published nor shared. Required fields are marked *

*
*