Matt Rickard shares his reflection on 10,000 hours of programming
I'm noting down a couple ones that I would like to remember.
On finding answers
- Browsing the source is almost always faster than finding an answer on StackOverflow
- In many cases, what you're working on doesn't have an answer on the internet. That usually means the problem is hard or important, or both.
On code
- Simple is hard.
- Delete as much code as you can.
- If it looks ugly, it is most likely a terrible mistake
- Name variables correctly
- It should probably be refactored if you have to write a comment that isn't a docstring. Every new line of comments increases this probability. (For a more nuanced take, the Linux Kernel Documentation)
On knowing how it works
- Know the internals of the most used ones like git and bash
- If you don't understand how your program runs in production, you don't understand the program itself
On productivity
- There's no correlation between being a 10x programmer and a 10x employee (maybe a negative one).
- Some programmers are 10x more efficient than others. I know because I've been both a 10x programmer and a -1x programmer.