Extreme Programming (XP) has nothing to do with developers hanging suspended from bridges, and despite its name, it is pretty far removed from "cowboy development." Extreme Programming is actually a proven methodology that takes the best of other methodologies and pushes it to the limit, always maintaining a strong customer focus.
The 12 practices that comprise the heart of XP include commonsense ideas, like having a user on the team full-time, as well as more radical ideas, such as paired programming (two programmers, one terminal/workstation). Extreme or not, this methodology can get the job done. XP is designed to deliver quality software that customers want, when they want it.
Since we all know that a happy customer is a paying customer, maybe you should take a closer look at XP for your shop. Here’s a list of Web resources that can give you an Extreme education.
A gentle introduction
ExtremeProgramming.org and its "gentle introduction to XP" is a good resource for newbies and veterans alike. The site offers a series of articles that do a good job of explaining the basics of XP, but the emphasis on advantages and strengths of the methodology may seem stale to programmers who are already familiar with XP. On the other hand, if you're still new to the whole thing, you'll probably appreciate the candid discussion of why XP was created and why you may want to use it.
Aside from introductory articles, ExtremeProgramming.org hosts a full set of rules, practices, and a process chart for the planning, design, coding, and testing development phases. Other articles give you advice for getting started using XP on your next project. The site also hosts an extensive list of relevant conferences, books, and other sites where you can get even more Extreme information.
A community resource
XProgramming.com bills itself as a "community resource site for those interested in XP and related topics." It houses quite a few interesting documents, including an introduction to XP, the C3 papers that first discussed the methodology, and a suggested set of XP practices. You can also find online back issues of XP Magazine and links to other XP-related publications on the site. If you have a specific question, check out XProgramming's XP Q&A feature.
What are the C3 papers?
Many of the practices of XP were created and tested during work on the Chrysler C3 Project. This project was the implementation of a payroll system written in Smalltalk and is considered to have been a big success.
The XP FAQ
If you've ever wondered what YAGNI or DTSTTCPW might stand for, the XP FAQ at Jera.com might be worth checking out. It answers quite a few frequently asked questions about XP, including basic practices and terms, and it addresses some common objections to some XP practices. The FAQ should prove interesting reading regardless of your Extreme IQ.
What the heck is a Wiki?
I have to admit that I wasn't exactly sure what a Wiki was until I visited XPDeveloper.com—which sure has a lot of them. XPDeveloper.com is the Web manifestation of London's XP Developer club. Its site is a massive storehouse of XP information with a good dose of humor thrown in. The site includes a large discussion board, downloads, book lists, links for coaching and training, and a worldwide job board. If you live in the London area, you might want to check out the group's Extreme Tuesday Club meetings.
Get it from the source
If you want XP information, you need go no further than the guy who started it all. The Webmaster of ootips.com has collected excerpts from message board posts by Kent Beck, the "father of XP." These nuggets of wisdom should prove to be interesting reading and contain some insights that you won't find elsewhere.
Do you push it to the limit?
Do you use XP techniques—or do you plan to? What are your favorite resources for XP information? Send us an e-mail with your experiences and recommendations.