in reply to
Measuring programmer quality
Those measurements seem to encourage one to develop and fix code quickly rather than carefully or efficiently, and to format code to use many lines.
Characteristics I might use:
- How easy is it to turn over a developer's code to another? Is it well commented? Is it clear what the code does and does not do? Is the code easily understood and adapted to other uses? Does it follow a style guide?
- Does the code include error checking and logging? How hard is it to recover from errors?
- How good is the boundary testing? By this, I mean to ask if the code scales well and handles the extremes of input data well. For example, a database export tool I inherited read all of a database into a hash tree and maintained all relationships in the database. The catch was that it stored the entire database in memory before exporting it to xml files. For any database with more than 50,000 users, the tool ran out of memory, making it useless for production systems.
- Does the developer create tools and practices that benefit others?