A software team’s working conditions are part of its engineering system
The Joel Test assesses a team through twelve concrete questions: version control, a repeatable build, bug tracking, specifications, testing, and the conditions under which programmers work. It deliberately avoids measuring productivity through lines of code.
The interesting connection is between these apparently separate practices. A broken build interrupts everybody. Untracked defects disappear from memory. Delayed fixes become harder as knowledge of the original code fades. Quiet space and adequate tools protect the same scarce resource: a person’s ability to keep a complicated problem in mind.
Some prescriptions reflect Microsoft-era development, including a particular division between programmers and testers. Spolsky also explicitly says a perfect score cannot rescue a product nobody wants. Read as a historical checklist rather than a certification, it offers a useful way to distinguish an impressive team from an environment that consistently lets that team ship.