The Joel Test: 12 Steps to Better Code
Joel Spolsky’s article The Joel Test presents a quick assessment tool for evaluating software team quality through 12 yes/no questions.
The 12 Questions
- Do you use source control? - Essential for team coordination and preventing code loss
- Can you make a build in one step? - Automated compilation reduces errors during shipping
- Do you make daily builds? - Catches integration problems immediately
- Do you have a bug database? - Formal tracking prevents bugs from being forgotten
- Do you fix bugs before writing new code? - Prioritize fixes over features to maintain schedules
- Do you have an up-to-date schedule? - Enables business planning and prevents feature creep
- Do you have a spec? - Design problems are cheaper to fix in documents than code
- Do programmers have quiet working conditions? - Uninterrupted focus enables productive “flow” states
- Do you use the best tools money can buy? - Quality equipment prevents frustration
- Do you have testers? - More cost-effective than having programmers test their own work
- Do new candidates write code during their interview? - Actual coding demonstrates capabilities
- Do you do hallway usability testing? - Five users reveal 95% of UI problems
Scoring
A score of 12 is perfect; 11 is acceptable. Below 10 indicates serious problems. Most organizations score around 2-3.
My Takeaway
This test remains remarkably relevant decades later. As a builder, these fundamentals separate amateur operations from professional ones. The beauty is its simplicity—you can evaluate any team in minutes.
How does your team score? I’d love to hear at persdre@gmail.com.