The Joel Test

The neat thing about the Joel Test is that it’s easy to get a quick “yes” or “no” to each question. You don’t have to figure out lines-of-code or anything else just give 1 point for each “yes”

Score

  • 12 is perfect
  • 11 is tolerable
  • 10 or lower, you’ve got serious problems.

The truth is that most software organizations are running with score of 2 or 3, and they need serious help, because companies like Microsoft run at 12 full-time.

Questions

  1. Do you use source control?
    • Programmers have no way to know what other people did. mistakes can’t be rolled back easily, without a source control.
  2. Can you make a build in one step?
    • The process should take one step to ship a build from the latest source snapshot.
  3. Do you make daily builds?
    • When using source control, make sure to run build before and after to make sure you code didn’t break the build.
  4. Do you have a bug database?
    • Keep track of bugs not in your brain but in GitHub.
  5. **Do you fix bugs before writing new code?
    • Fix bugs before writing new code.
  6. Do you have an up-to-date schedule?
    • Have some deadlines for when the code will be done.
  7. Do you have a spec?
    • Write RFC or Design docs
  8. Do programmers have quiet working conditions?
    • Getting in the flow mood is important and a quiet working space is way to get into the flow.
  9. Do you use the best tools money can buy?
    • Use tools, Devices, Environments Products to code better and faster, even if it costs money.
  10. Do you have testers?
    • Using modern type-safe practices, and doing small tests after code minimizes the need for doing complete test.
  11. Do new candidates write code during their interview?
    • Testing programmers before hiring is important.
  12. Do you do hallway usability testing?
    • Test the user experience of your app with five or six people is enough to give you an idea about the biggest usability problems in your code.

Reference

The Joel Test by Joel Spolsky