|
|
|
Ask HN: Books/courses for self-taught programmer
|
|
29 points
by throwaway0071
3071 days ago
|
|
As a self-taught programmer, I realize I've many blind spots. I would like to get better well rounded when discussing software engineering topics. Things like data structures but also modern software engineering practices. Any books, courses or other resources I should focus on? |
|
Computer architecture course. - you need to understand the machine you are programming. Something like Meltdown/Spectre will make sense to you.
Learn assembly programming & C, does much for your confidence, you understand how your programs get turned to 10101
Take a programming language course, understand the difference programming languages. When people start talking about the new XYZ language, you can quickly evaluate it based on the paradigm and decide if you should get on it or not.
Operating System course. - The OS coordinates resource allocations to your program, you can begin to understand the discussion such as why fork() takes longer than a thread. You will make many wise decisions.
Algorithm & Design - You can write better program.
Software Engineering - You can deliver better softwares.
Automata Theory - you can understand machines more, sometimes complex logic is best representated as a simple machine. This becomes useful if you are parsing (compiler, NLP, etc)
Distributed Systems - if you have ever uttered the word microservices or plan to.
The below 3 maths are the main maths of computer science, most cutting edge work today employ some or all of them.
Linear Algebra, Discrete Maths, Probs & Statistics