Commented Code == Technical Debt


Over the last month I have spent countless hours modifying code in our

development framework. This framework is nearing the 4th grade now (9

years old) and has had many sections modified or rewritten extensively

over the ensuing decade.

A common technique I used when changing code was to comment large swaths

of code and insert new code in its place. I can tell you now this

technique was a poor idea and has wasted a considerable amount of my

time. This may sound obvious to you but to some it might not. Here’s

what I experienced:

1) Every time  found a commented block I was forced to perform a context

switch. Why did I comment this code? These context switches are the

equivalent of a phone call or a child coming into the home office to

play. It takes precious time away from the task at hand.

2) The commented out code takes up space on the screen and in the flow

of the code. This requires a mental filter and a minor context switch.

3) And finally it is like doing testing after the fact. If you find

yourself adding comments to your code: //REMOVE THIS CODE LATER you have

lost. Just kill the code now. You wont remember why you added that line

in the first place so just don’t do it. kill -9 that cruft now.

So what if you feel like your code is precious and needs to be kept

intact like it’s the Magna Carta? Just use your version control system.

The code will always be there to recover like the the Ark of the

Covenant. If you don’t have a version control system get one. There is

NO reason not to.

So now that I have your attention… kill that cruft. Otherwise I’ll submit your name to my new reality show: Code Hoarders

NOTE: For those of you that are code comment haters, this post is not

for you. Relevant comments are always a good ideas and should be used.

 Consider this flame bait if you so desire 🙂

JavaScript Can’t Do Math – SilverlightCalculator A New Silverlight OSS Project