… Extreme Programming (XP), that is.
XP is a radical new style of computer programming that’s taken some subgroups of the computer industry by a storm. It features embarrassing rituals, a cork-board with all of the known errors, and a kind of copilot programming where two people sit in front of the screen and code-review every line as it is written. (Theory: two heads are better than one, and you catch stupid errors faster.)
YP is one step better than XP, just as Y follows X. It’s the style of programming being developed by Bjorn Freeman-Benson and Alan Borning at University of Washington. Key features of YP is cooperative engagement, a large traffic light that show GREEN if “All’s Well” (that is, if the system builds and passes all of its test), and RED if there is a problem with the build.
Specifications in YP are written by the customer in terms of test that the program is supposed to satisfy, rather than wishy-washy qualifications written in English. (Eventually, the folks at UW hope to have the customers write the specifications in code.) YP doesn’t use two-person programming (it’s hard to get the undergraduates to sit still), but instead has design reviews, code reviews, and daily status messages.
Why should you care? Because the Freeman-Benson/Borning paper that was published last summer at the 2003 Agile Development Conference in Salt Lake City is a real pleasure to read. Because the folks at UW have found a novel and creative use for used traffic lights. Because the Urban Sim project shows that policy makers really can learn from computer simulations. Because it’s fun.