Hacker News new | ask | show | jobs
by JohnFen 205 days ago
I have heard devs (typically on the greener side) make the argument that comments in code are bad because they need to be maintained along with the code they're commenting on. It's quite common for devs to neglect this, leading to comments that are no longer correct, and an incorrect comment is worse than no comment.

The argument touches on truths, but in my opinion pretty seriously overstates the problem. Good comments tell you things like why a design decision was made, what hidden assumptions the code is relying on, etc. Things that don't often change unless refactoring is happening. The benefit of good comments is so large that, in my opinion, they are well worth this cost.

The same devs are often also of the opinion that writing code in a self-documenting manner eliminates the need for comments. This is just incorrect. Good comments tell you what the code itself can't.

1 comments

> writing code in a self-documenting manner eliminates the need for comments. This is just incorrect.

why do you think it is always incorrect? in my opinion "good comments" about design decisions, hidden assumptions the code is relying on, etc. should be included in documentation or surrounding .md files, but not in code sources. Sentences made of english words and sentences made of instructions for computer/interpreter are completely different constructions which imply separate language processing in programmer's brain. it is like mixing up english and french in a single book page -- one french sentence per 30 english is tolerable, while 30 french sentences mixed up with 30 english ones become much less informative than if they were seprarated into different pages.