CS is a gigantic field and if you start midnlessly wandering around, you're surely to be overwhelmed with how much stuff exists. I have a MS in CS and I still feel like a majority of topics are way over my head. I find that I have to spend a bulk of my time for some period on very specific things to feel like I got a grasp on them.
I think you have to first figure out what you're goals from this are. Do you want to write a web app? Do you want to write an operating system? Some people approach the problem from the latter goal and are very quickly dismayed by its depth. If you want to write something more simple, you can start at tutorials of just languages, and then work up from there. HN is usually a good barometer of interesting CS topics.
In terms of just pure CS fundamentals, I think looking at the freshman curriculum of a reputable school should be a good start. The danger with diving into CS from the theoretical side though, is being dismayed at the little perceived relevance of CS theory to actually writing code. A good plan to prevent losing interest is learn with micro-projects that can be completed in a short amount of time. Having small rewards regularly can help you stay on track.
Good comment. Basically, my aim is to learn as much math and theory as possible. Also, to eventually become a rock star web programmer and a compiler writer(I want to write fun little computer languages one day).
I think you have to first figure out what you're goals from this are. Do you want to write a web app? Do you want to write an operating system? Some people approach the problem from the latter goal and are very quickly dismayed by its depth. If you want to write something more simple, you can start at tutorials of just languages, and then work up from there. HN is usually a good barometer of interesting CS topics.
In terms of just pure CS fundamentals, I think looking at the freshman curriculum of a reputable school should be a good start. The danger with diving into CS from the theoretical side though, is being dismayed at the little perceived relevance of CS theory to actually writing code. A good plan to prevent losing interest is learn with micro-projects that can be completed in a short amount of time. Having small rewards regularly can help you stay on track.