Am I the only one who likes to write comments when I find code that took me a while to understand even when I didn’t write the code? It helps me when I go back to that place and it helps other devs that have to do the same figuring things out as me. Idk if I’m just weird but I really like writing documentations and commenting my code
In my opinion the important information we should record in comments is WHY, because the code can only explain HOW, maybe WHEN, but never WHY. If we don’t know WHY, any refactoring done in the future could break the logic by ignoring assumptions made by the authors.
I think comments are good in a first result, along with the other points you mentioned. To me reading a single line summary and or explainer will always be faster than reading 15 lines of code even if it’s very well made and self documenting
As mentioned in my other comment, names will rarely explain the reasons why a given solution was chosen. These reasons are important from maintenance perspective and should be recorded next to the relevant code.
I agree, and I count that as “key information that’s difficult to understand from the code”.
IMO, comments should be used to provide value to the code. If they’re used too much, then readers of the code will more likely stop reading them altogether. They already got what they need from the code itself and the comments usually don’t add much value.
If they’re sparse, then that’s a good indication they’re important and shouldn’t be missed.
Am I the only one who likes to write comments when I find code that took me a while to understand even when I didn’t write the code? It helps me when I go back to that place and it helps other devs that have to do the same figuring things out as me. Idk if I’m just weird but I really like writing documentations and commenting my code
You’re definitely not the only one.
In my opinion the important information we should record in comments is WHY, because the code can only explain HOW, maybe WHEN, but never WHY. If we don’t know WHY, any refactoring done in the future could break the logic by ignoring assumptions made by the authors.
// because I said so.
I think comments are good as a last resort when it’s difficult to communicate the intention of the code with other means.
If I find code that’s hard to understand, I’ll first try to find better variable or function names. Often this is enough.
If it’s still too difficult to understand, I try to restructure the code to better communicate the flow of the code.
If that doesn’t help (or is too difficult), then I might add a comment explaining key information that’s difficult to understand from the code.
I think comments are good in a first result, along with the other points you mentioned. To me reading a single line summary and or explainer will always be faster than reading 15 lines of code even if it’s very well made and self documenting
As mentioned in my other comment, names will rarely explain the reasons why a given solution was chosen. These reasons are important from maintenance perspective and should be recorded next to the relevant code.
I agree, and I count that as “key information that’s difficult to understand from the code”.
IMO, comments should be used to provide value to the code. If they’re used too much, then readers of the code will more likely stop reading them altogether. They already got what they need from the code itself and the comments usually don’t add much value.
If they’re sparse, then that’s a good indication they’re important and shouldn’t be missed.
I definitely agree that too many comments is often a bad sign, esp. when large part of them is obviously generated.
In doing this as well, for the same reason