Teach Yourself Computer Science
I have many degrees in computer science, and have used almost none of the knowledge in programming jobs.  So, the content is fairly useless, practically speaking.  I've also found the more I focus on theoretical elements while at work, the more useless I become.  The actually useful elements are big picture, and can probably be taught in one or two classes.  Much more useful than technical knowledge are the abilities to reason about systems and solve problems.  In my opinion, the CS classes seem to be almost purposefully obtuse.