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
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.
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.