Skip to content
Author
PUBLISHED: | UPDATED:
Getting your Trinity Audio player ready...

Two men scrutinize a laptop computer screen in a conference room splattered with yellow Post-it Notes (this sentence as published has been corrected in this text). Conversation is interspersed with the tap-tap of keyboards.

“You don’t have to do that,” Joe Toussaint says to his partner, Andy Fabbrini.

“I don’t?”

“No. Just highlight it here,” says Toussaint, pointing at the computer screen.

“That works,” says Fabbrini.

The two programmers are riding the wave of a revolution in software development that aims to transform loners in cubicles toiling quietly into the night into teams of communicative, cooperative and customer-oriented programmers who work 9 to 5. The movement’s name–Extreme Programming, or XP–conjures images of geeks bungee jumping with laptops and suggests how radical the concept is for the techie set.

“There is this machismo culture in the [Silicon Valley] where, if you’re not in your cubicle drinking Jolt cola and eating pizza at 2 in the morning, you’re not a high-tech stud,” says Rob Mee, who runs XP coaching company Pivotal Computer Systems in San Francisco. “This is a cultural change. This forces them to be social creatures … with saner lives.”

At the heart of the new method is pair programming. Software developers code together on one computer, passing the keyboard back and forth. Arguments sometimes erupt, but programmers say teamwork leads to higher productivity and better software.

The programming philosophy, formulated in the 1999 book “Extreme Programming Explained” by software rock star Kent Beck, is gaining popularity at start-ups as well as at large, established companies such as Hewlett-Packard Co. and Qwest Communications International Inc. More than 30 Web sites are devoted to Extreme Programming (pro and con) and groups such as Bay Area XP exchange e-mail and meet offline.

There are thousands of software engineers in the Bay Area using some form of XP, which is not related to Microsoft Corp.’s Windows XP operating system.

If XP gains a toehold in Silicon Valley–home to the largest concentration of software engineers in the country–it could help XP gain credibility worldwide. Although XP principles are used in tech centers around the globe, it has not yet broken into the mainstream.

“Silicon Valley tends to have thought leadership in the programming world,” says Mee, who began using XP in the mid-1990s with Beck.

The method is one of a handful of approaches to development called Agile Programming, which aims to make software coding more responsive.

Those baptized in Extreme Programming extol its malleability. XP values simplicity and software that’s exactly what the customer ordered, rather than the complex and elegant code common to traditional software development.

Those who scoff at XP say it’s a corner-cutting method that lacks upfront “documentation” to map out what the team will build.

“Upfront design is synonymous with thinking ahead,” says Matt Stephens, a developer from the United Kingdom who runs a site critical of XP. “By de-emphasizing this vital aspect of software development, XP is reduced to a very myopic approach.”

Stephens, and even some ardent XP users, say productivity can be squelched if programmers constantly work together.

“You don’t need two programmers for everything, especially if it’s not a new task,” says Alon Salant at San Francisco-based Carbon Five, which uses XP. “Pair programming reduces the productivity of the most experienced programmers and increases the productivity of the least experienced.”

Another cultural change is that no one developer “owns” any portion of the code. Knowledge is dispersed among all engineers. The idea is that esprit de corps replaces pride of code ownership.

Engineering teams meet daily or more often to discuss projects. Fabbrini and Toussaint, part of a five-person team developing software for Santa Clara County, Calif., say teamwork promotes better code.

“You’re not sitting in your cubicle writing lines and lines of code and no one knows what anyone else is doing,” says Ted Young, architect of the county team for Caribou Lake Software of Minneapolis. “It builds a better product where everybody has knowledge of every aspect.”

But programming in pairs is the most difficult aspect for many to accept.

Even for XP die-hards such as Edward Hiett, programming with someone looking over your shoulder remains disconcerting.

“Programming is a very creative process and requires a lot of concentration. It’s natural to want to go away and do it by yourself,” says Hiett, who works for San Francisco-based Evant, where all programmers work in pairs. “With pairing, you have to give up control.”

Many women gravitate to XP precisely for its teamwork.

“XP resolves that issue that women don’t like: working by yourself in a cubicle with no interaction,” says Laura Waite, a freelance developer in San Francisco. “I know lots of women who love XP because of that.”

The XP movement calls for 40-hour workweeks with a pace that is predictable and sustainable.

“A team does not burn itself out by working crazy hours and doing the impossible,” says XP coach Joshua Kerievsky of Industrial Logic in Berkeley, Calif.

XP advocates that customers and developers eliminate miscommunication by having customers on site.