Fuck, I’ll look at code I wrote like a month ago and be like, “what was I thinking?”. So I try to fix it, run into some stupid issue and be like, “oh, right.”
And this is why comments are useful on code who’s purpose or reasoning isn’t super obvious or even looks counter intuitive.
A professor used to say, we don’t write code for the machine. The machine doesn’t need code. It would be just as happy whether we hand carve 1s and 0s on ferromagnetic disks or if we wrote a compiler for emojis. Binary is binary. We write code for the humans. So make it legible.
I never said anything about comments. My professor advocated that the code should tell yourself and other humans what it was making the machine do. Comments should document the design and the architecture. Not explain the code. A well designed and correct code needs few comments.
Fuck, I’ll look at code I wrote like a month ago and be like, “what was I thinking?”. So I try to fix it, run into some stupid issue and be like, “oh, right.”
And this is why comments are useful on code who’s purpose or reasoning isn’t super obvious or even looks counter intuitive.
A professor used to say, we don’t write code for the machine. The machine doesn’t need code. It would be just as happy whether we hand carve 1s and 0s on ferromagnetic disks or if we wrote a compiler for emojis. Binary is binary. We write code for the humans. So make it legible.
But at the same time you can over comment. If your variables are self described it’s not needed.
I never said anything about comments. My professor advocated that the code should tell yourself and other humans what it was making the machine do. Comments should document the design and the architecture. Not explain the code. A well designed and correct code needs few comments.