Extreme Programming in risky position, says co-creator
End of opposition breeds challenge
Despite the growing popularity of the "quick and dirty" dynamic languages, Beck sees the cowboy coder as a dinosaur, a creature of a phase generally fading from the software development industry. Programmers today want the discipline, he said, and they're looking for ways to be more businesslike while retaining the technical excellence that underlies really top-notch execution.
The evolution of the current crop of dynamic languages "seems to me to be very much in that spirit," Beck said. "It's one of those things that just keep coming around. We [Smalltalk developers] forged ahead with a powerful new tool, shed the shackles of the past, and then realized that some of those shackles weren't shackles at all."
If that's true, it's a change that will be especially useful in the enterprise, where the byword is "sustainability".
"Your organization is going to spend a lot more on somebody - you or somebody else - reading what you're writing right now than they are ever going to spend on you writing it," according to Beck.
"You're going to read that code yourself 10 to 100 times for every time you write it, so it's worth taking the trouble to make it readable. You're going to modify it five times after you write it the first time, so it makes sense to make it easy to change. And because you can't predict the future, it doesn't make any sense to build a lot of stuff you don't need right away. These are unchanging principles of software development, and nothing about applying the words 'scripting' or 'model driven' or whatever the programming metaphor du jour happens to be changes any of that."
The basic principles of agile development haven't changed, either, but XP has evolved. The technical practices are more or less the same, but a number of XPers - Beck included - are less interested in them and more focused on the human aspects of the methodology.
"At this stage, it's not so much about how we can push these technical practices further," he said, "but how we can be more accountable. How can I work in a transparent way? How can I give everyone who needs information about my work the information they need? How can I take responsibility for the value of what I create?"®