If you only ever buy/read two computer science books, get your hands on Abelson/Sussman's SICP and Knuth's TAOCP. I could program before studying at uni, but thanks to our two-term course Algortmics I+II at FAU Erlangen (part I based on SICP), it seems a fog that I wasn't even aware of cleared.
Have you read TAOCP?
Volume 1 really works well if you also work through Concrete Mathematics (my professor and I started on Volume 1, diverted to CM, then back to Volume 1). CM provides enough additional math to get through chapter 1, where I was having a bit of trouble on some of the math heavy portions.