The Great Software Test

11 out of 12 is just tolerable

I was surprised to be reminded that it was around 8 years ago that I first came across The Joel Test, and am still shocked by the number of teams involved in the production of software that would not come close to getting any where near 12 out of 12. What am I talking about? Well, Joel Spolsky came up with 12 simple questions in 2000, published on his (highly recommended) website Joel on Software; the answers to which give a great insight into whether or not you have the environment and processes in place to develop and deliver great software. All questions require a simple ‘yes’ or ‘no’ response, and as a consequence taking the test takes no more than about three minutes. So what are you waiting for - take the ‘12 Steps to Better Code’ test!

I am sure there are many of you who will say that you can produce good software without getting 11 or 12 out of 12, and indeed there are always exceptions, but as a general principle I can only see good coming from trying to get a perfect score. It sure isn’t going to do any harm and will only improve the overall quality of your product, increase profit and reduce risk.

When I recently went through the list with a client, there was one question that was going to get a resounding ‘no’ and that is ‘Do your programmers have quiet working conditions?’. The team I was talking to was a small development team in large blue-chip working in big open plan environment. Getting individual offices in this case would have been an impossibility, and even if it were possible, that’s not the whole story.

What Joel was driving at with his question was the negative impact of interruptions and the cost to the schedule of programmers being distracted and breaking their ‘flow’. So some simple re-organsisation was in order to try and eliminate the distractions, or at least bunch them all up so that once ‘in the zone’, the programmers remain in it. We worked towards meetings being minimised and those that were required, where possible, were arranged at the start and end of day. Email notification was turned off so people didn’t get side-tracked by the latest incoming email. The team moved location to a quieter part of the office away from other teams that had regular visitors and phone calls. A roster was set up so that each member of the team took it in turns throughout the week to handle any support calls they received (this was part of their remit, but not a big enough part of their jobs to take on a full or part time employee specifically to do this). Along with other things and the help from their manager, it was possible to turn the ‘no’ answer to Joel’s question into more of a ’sort of’. So they may not be running at a perfect 12, but they are somewhere between 11 and 12 now.

This may seem excessive to some, but a number of studies have been carried out, particularly in the area of software development and coding that indicated that ‘codus-interruptus’ is a real problem: a 1 minute interruption actually costs 15-20 minutes, because the cognitive activity required to return to point prior to interruption takes that long (see what Stephen B. Jenkins has to say on the Computer Society’s website). So think carefully before uttering those five little words, “Have you got a minute?”.

There are a number of other things that lead to success that aren’t mentioned in Joel’s test, especially in relation to recruiting, managing and retaining great people, but scoring highly on The Joel Test is a very good start.

The test and a detailed discussion of each question is also to be found in Joel’s book Joel On Software. He also covers a number of people-related issues in both this book and his latest one called Smart and Gets Things Done.

Miles

Leave a comment