On my way, i suggest you install slackware. Make a default install but don't include x yet. Now when you're using slackware, try to do everything you can do. Make some projects, compile programs, compile the kernel or enhance some programs. Optimizing the system is not a bad idea too.
About your console, try to install an fb driver (by recompiling the kernel) and set your screen to at least 1024x768-60. The friendliness of the screen to your eyes is important.
Master the basic commands especially the vi editor. Learn some shell scripting too and learn to combine commands.
Read the docs in /usr/doc/Linux-HOWTOs. You can also download HOWTOs. HOWTOs are almost equivalent to books. Remember also that the man command is almost an enough info for every command. I also suggest not to read too many documents with the same topic at once. Do variable reading but choose a good interval.
Also sometimes you'll learn faster when reading hardcopy books than reading the ones in your pc. I prefer you at least buy books in C and Linux. You can also buy some for other languages. Networking books on my opinion are only good for references.
Don't think of slackware as a difficult start. Think of it as a clean or plain start instead. It's just like what the oldschool linux used to be. And on my opinion that's what slackware's meant to be.
Don't be afraid to learn difficult things like how gcc compiles or how are libraries used.
Always have a pen and a piece of paper in front of you. Map the meaning of the docs and also the codes. Its' easier with that than doing the mappings in your brain.
And the very last thing, don't rush. You'll only make things slower. Learn the natural way just like how you learn from school. Please do this for even just one month. You'll get the picture of what I mean.