13 comments

[ 3.6 ms ] story [ 41.7 ms ] thread
Usual misunderstanding, but needs to be pointed out:

  Automated testing

  Level 1:
    Has written automated unit tests and comes up with 
    good unit test cases for the code that is being written	

  Level 2:
    Has written code in TDD manner
TDD is not for testing, TDD is for system design and an automatic work list. Using TDD does not mean the automated tests are better or worse - you are probably thinking of code coverage.
Not to start another flame war on (T|B)DD, but (T|B)DD does not guarantee competence in any way, and I wouldn't force it on any of the engineers who work for me.
I thought the second 'D' in TDD was for Development, not Design. I don't think it works to write failing tests and have that influence the design.
What would you recommend as a substitution for that entry?
suggestion: make it interactive (click to select etc.)
Error establishing a database connection
i guess being able to keep a property up and running isn't one of them
What about "soft skills" like being able to manage their time well and relate to clients / customers in a productive manner?
Apparently I'm no good at the two categories of books or blogs, but then nobody has thought to test me on that before.

Never did care for coding books when the internet is just there, and the only blogs I've written were on travel and brewing...

One of my favorites was "Thinks Excel is a database" (or "1-2-3", back in the day).

However, some of these were a bit overstrict, I think:

* Source control: copying to a dated directory/archive deserves a bit more than "level 0". 0 would be more like "Sys admins do backups, right?" (or just "duh/what?")

* Books: forget "24 hours" and "dummies", 0 would be more like simply doesn't read.

I'm not sure giving extra kudos to those using git/hg instead of cvs/svn is appropriate either. You usually use what the employer has (demands), even if it's an abomination like MS Source Safe, Serena Version Manager, MKS Source Integrity or Clearcase :-)

A better criteria might be what you do with the rev ctrl system: concurrent development; release candidate tracking; release change audit support.

I just want to say that anyone who follows the "code organization in a file" levels should get kicked in the nuts and shown the door. I like consistent white space but regions, comments and license headers are generally signs of horrible incompetence.