I'm self-taught and currently learning Python, but I'm eager to dive deeper into the theoretical side of programming. I want to know which essential topics I should study, beyond just computation theory, algorithms, and data structures. I've already covered formal logic during my university studies, so I'm looking for more areas to focus on.
4 Answers
It really depends on your goals! Computer science covers a lot more than just programming. You might find this interesting roadmap (roadmap.sh/computer-science) useful. It includes everything from theories of computation to applied math aspects like proofs and correctness.
Don't forget about computer organization! It helps to understand the inner workings of computers. Check out 'Dive Into Systems' as it’s a great free resource to start with.
Consider looking into object-oriented design principles, networking concepts, and working with sockets. Understanding operating systems can also be really beneficial for a well-rounded foundation.
Thanks for the reply! I'm not aiming to be a theorist—I want to program with a strong understanding of what I'm doing. I’m still a beginner, but I realize there's a lot behind even simple programming tasks. Eventually, I want to work in programming, maybe in databases or web development.