Recently, there has been a discussion about code comments on the pragmatic programmer mailing list: “Should you comment or not? What should be commented?”
The one point I haven’t seen expressed succinctly is the following: Given a finite amount of time and a codebase with some … issues (which codebase doesn’t have issues?) what is the most useful thing you could do with your time? How often is the answer “comment more”?
Many factors determine the answer: If the code has good test coverage, you can refactor it with impunity. That might be a better way to spend you time. If you’re good at “blind refactoring”, maybe you could restructure the code to bring more under test? Maybe you could improve the test coverage? Given finite amount of time, it is a question of priority.