The Joel Test is an excellent, simple metric for gauging software team quality (and potential pitfalls). But what if you are acting as an independent programmer, a MicroISV, or a one-person shop? Some aspects of the original test don't apply (hallway usability testing, interview questions), while other aspects are missing (things specific to the MicroISV).
Can we improve the Joel Test for the independent programmer?
The original test:
- Do you use source control?
- Can you make a build in one step?
- Do you make daily builds?
- Do you have a bug database?
- Do you fix bugs before writing new code?
- Do you have an up-to-date schedule?
- Do you have a spec?
- Do programmers have quiet working conditions?
- Do you use the best tools money can buy?
- Do you have testers?
- Do new candidates write code during their interview?
- Do you do hallway usability testing?
To jumpstart discussion, right away I would posit that #11 and #12 do not apply in the daily life of a MicroISV, and could be replaced with:
- Do you regularly learn new things (languages, frameworks)?
- Do you regularly perform work outside of your domain (solve problems on stackoverflow, do puzzles or interview riddles)?
- Do you bounce ideas (or have actual code reviews) with your peers?
There are also several work/life balance metrics (key to software quality) that would also be useful here.