Intelligent Machines

Extreme Programming: The Zero G Experience

How a software company saved itself by overhauling its development process-and trusting its engineers’ instincts.

Zero G is a survivor. The San Francisco company makes installation software-the programs that run when you’re putting new software on your PC. Its headquarters are in the once booming south-of-Market area, where it has remained happily profitable even as its former dot-com neighbors have disappeared. But it almost bit the dust along with them, says president and cofounder Eric N. Shapiro-not because of the economy, but because of the slapdash way it wrote software before adopting a methodology known as “extreme programming.”

The change came not a moment too soon. Until last year, Zero G-like many software companies-followed a six-month cycle for developing new releases of its products, with marketing handing the engineers a list of features, and the engineers agreeing to transform them into software code by a certain date. According to Shapiro, at the beginning of the cycle, engineers would cherry-pick the features that looked the most fun to program, rather than those most important to the customer. Consequently, in early 2002, as the May ship date for Zero G’s release of its InstallAnywhere software grew closer, company programmers found themselves working 15-hour days to complete all the required features, even as the marketing department tried to foist new requests on them. The programmers heroically coded one fix after another, only to find that each fix broke something else. The bug list grew longer every day.