What to learn
It's common to see people advocate for learning skills that they have or using processes that they use. For example, Steve Yegge has a set of blog posts where he recommends reading compiler books and learning about compilers. His reasoning is basically that, if you understand compilers, you'll see compiler problems everywhere and will recognize all of the cases where people are solving a compiler problem without using compiler knowledge. Instead of hacking together some half-baked solution that will never work, you can apply a bit of computer science knowledge to solve the problem in a better way with less effort. That's not untrue, but it's also not a reason to study compilers in particular because you can say that about many different areas of computer science and math. Queuing theory, computer architecture, mathematical optimization, operations research, etc. One response to that kind of objection is to say that one should study everything. While being an extremely broad generalist
What to learn It's common to see people advocate for learning skills that they have or using processes that they use. For example, Steve Yegge has a set of blog posts where he recommends reading compiler books and learning about compilers. His reasoning is basically that, if you understand compilers, you'll see compiler problems everywhere and will recognize all of the cases where people are solving a compiler problem without using compiler knowledge. Instead of hacking together some half-baked solution that will never work, you can apply a bit of computer science knowledge to solve the proble
related reading
- What to learndanluu.com
- What to learndanluu.com
- Don't Call Yourself A Programmer, And Other Career Advice | Kalzumeus Softwarekalzumeus.com
- Teach Yourself Computer Scienceteachyourselfcs.com
- Study Guide — LessWronglesswrong.com
- What every computer science major should knowmatt.might.net
- Things unlearnedscattered-thoughts.net
- How To Learn Stuff Quickly • Josh W. Comeaujoshwcomeau.com
- Get better at programming by learning how things workjvns.ca
- Post 34: Learning how to learn - Neel Nandaneelnanda.io
- Reflections on 10,000 Hours of Programming | Matt Rickardmatt-rickard.com
- Computers can be understood - Made of Bugsblog.nelhage.com