Saturday, October 16, 2010

No Comment

It seems that only a rant-worthy topic can stir me to blog these days, for which I apologize.

However, I just had an experience with a practice that I cannot fathom, and I had to rant about it.

I was looking over some code for another part of The Job's product, in preparation for implementing a similar thing in code I am responsible for.   The initial set of changes were relatively clear, and had been done by a local colleague.  Then it appears that there was a second set of changes made by another programmer that were less clear.  The second set was a bit more sweeping, and were done by a supposedly mid-senior developer.  There were no comments in the code that had been changed.  Wait, I was wrong - there were comments - every if/then and while block had the closing brace commented with "// end if" or "// end while" - EVEN THOSE IN FUNCTIONS ONLY 5 LINES LONG!!!!!

I remember when I was in college taking a FORTRAN class, we were told to comment heavily, and the ends of sections were required to have such comments, but we also had to have block comments before every major section of code.  How did this get mutated into commenting only the ends of blocks?  No comments about the intent of the block, the actions in the block, nothing.  Just the little end markers for the blocks, cluttering up the diff report.

The part that scares me is that this was also allegedly reviewed by the offshore manager, and passed without comment (or any comment was ignored).  What the hell is being taught as programming practices these days?!

I'd have preferred no comments at all to those useless bookends.