02.18.08
OCD – Obessessive coding disorder

note: Just to ensure that this posting dates quickly. I’ve adopted the word “Yo” as a gender neutral pronoun (as used by kids in Baltimore).
I had an interesting case this week. A guy working on maintenance of telephony code asked for some advice. Now maintenance is one of the trickiest things to do if you are not the person who wrote the original code. You have to get into the head of the developer, try to figure out yo’s skill level, how much time was given to the design and what level of testing the module has received.
When a developer changes a bit of code, and alters its fundamental behaviour, then the safety net of test code which protects the module should trip up, politely announcing that the clean re-factored design is full of holes.
Back in the real world, a developer at some point in yo’s career can expect to inherit some spaghetti code with minimal to zero test code.
This is where the same clean re-factored design emerges as above, but now a whole lot of code paths will be missing from testing since the main focus will be on the feature which is being added or the defect being rectified.
Read the rest of this entry »