Code quality

Code quality is has two primary dimensions. One the functional or customer dimension, does the code deliver the functionality the end-user wants. Two, the kind of quality that makes a developer happy, nicely structured, well formed, and enough complexity to shy away lesser souls.

In my experience the latter kind of code quality is very very subjective. Code that one developer is happy developing in, and very effective, would make another developer run away. This subjective nature is influenced by the current thinking and experience of the developer. This thinking often leads to the one-true-way-of-doing-things-right.

For example these days there are developers say you cannot properly build a system without a complete set of unit tests. I have to disappoint these people, millions of software programs have been written with very good quality and without any unit tests being written. If you feel uncomfortable developing without unit tests, that is fine. Make sure you create unit tests in your project. But also respect the fact that colleagues can develop quality code without unit tests.

In general when approaching code written by others adopt an open mind. You might learn something from it.

If you want to have a laugh on why bad code comes around read the blog post Asshole driven development from Scott Berkun and the responses to that blog.


%d bloggers like this: