I would agree that 0 is by far the most important (also with almost everything else). Given the agreement (and the fact that people comment mostly to object), I will note that I do disagree with #3 and #7 (partially).

Comments are by far overrated. Good code is self-documenting (one of the many things I agree with Martin Fowler). As such, I do agree that spending time on a naming convention is always a worthwhile investment.

Comments on the other hand are a mixed bag. What's useful to comment on? What some code does. Sure, a good description on a function/method does help. But as long as you follow a good amount of practices of your coding flavour (OOP/functional/etc) and you don't overload the functions with responsibilities, your code will be obvious as long as methods / variables are named appropriately (and sure, a comment on what it does won't hurt).

BUT ... the big issue with your own code feeling like gibberish later on isn't the lack of comments. 90% of my situations come from natural evolution. Along the way I simply found a better and cleaner way to do something which results in a decent amount of "what the hell is this convoluted way to do X?" which in practice means that any intervention in the same place again will result in a prompt rewrite.

A comment will tell me what the code is supposed to do, but that doesn't translate in being able to follow the implementation once I've evolved.


Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store