Wired Magazine has an interesting article on “Extreme Programming.” Supposedly, the solo programmer pulling all-nighters on excessive caffein is out. In are 40 hour work weeks, group coordination, and two people per computer. But what about productivity cry the managers. According to the article, coders do more, do it faster, and do it with fewer bugs this way.
[b]The 12 commandments of extreme programming [/b]
[b]I _ The Planning Game [/b]
Meet with coders, managers, and the customer each week to schedule tasks for the next phase. Update the plan regularly.
[b]II _ Small Releases [/b]
Put a simple system into production quickly, then release new versions on a short cycle.
[b]III _ Metaphor [/b]
Create an analogy that expresses how the parts of the new system work.
[b]IV _ Simple design [/b]
Design simply, and remove complexity at every stage.
[b]V _ Testing [/b]
Write test programs that assure every portion of the code runs flawlessly before attempting a new task.
[b]VI _ Refactoring [/b]
Edit the code to simplify, add flexibility, or remove redundancy.
[b]VII _ Pair Programming [/b]
Write all code with two programmers at one machine.
[b]VIII _ Collective Ownership [/b]
Permit anyone on the team to change code anywhere in the system at any time.
[b]IX _ Continuous Integration [/b]
Bring components of the program together several times throughout each day to make sure they work in concert.
[b]X _ 40-Hour Week [/b]
Strive to work no more than 40 hours a week. Never work overtime a second week in a row.
[b]XI _ Onsite Customer [/b]
Include a real, live user on the team, available full-time to answer questions.
[b]XII _ Coding Standards [/b]
Use agreed-upon styles and nomenclature to promote easy understanding of what the code does.