Teach Yourself Computer Science - Books and video lectures for programmers without a CS degree
Teach Yourself Computer Science is a guide created by the Bradfield School of Computer Science in San Francisco. It aims to help people find the best books and video lectures available for programmers to learn Computer Science on their own, without having to go to University.
Many programmers don't have a CS degree and you can certainly get by without one, for most things in programming it's not needed, but there will always be low level areas in programming that you have to stay away from or even high level areas where the code you write is less than ideal because you lack the knowledge that is taught in a Computer Science course.
The guide itself puts it this way:
I certainly fall into that category myself, I'm a self-taught programmer, started programming as a kid when I was 8 or so with ABasic on the Amiga 500 and then later QBasic on the PC, followed by C++ when I was 11 and Java about two years later. The only formal programming education I have is from middle school, where we were taught Pascal, Delphi and C++. So I find this guide very intriguing, because I sure don't plan to go to University at this point in my life, but I'm always willing to learn more things that can lead me to write better software whenever I find the time to do so :)
The Teach Yourself Computer Science guide covers Computer Science in 9 topics and suggests you should learn each of them roughly in the order they are presented, which is: