throwaway124567: Very good. It was MITs old CS textbook, it’s still highly relevant. It takes a while to get through and you probably would get the most value out of it if you already have a lot of programming experience. read comments

mindcrime: If you didn't take, or have forgotten, classes like Computer Architecture or Digital Logic, this is a great book for getting your head around the low level details of what's happening in side a digital computer... read comments

beat: Only a madman would actually read them all, but they're good to have to remind you that there are mountains you can't even begin to climb. read comments

OJFord: It covers automata and languages, computability, and complexity - and is brilliantly written, the proof style in particular: clear 'proof idea's followed by the details that can be easily skipped... read comments

robto: Starting at logic gates and moving up through the levels of abstraction until you can build a programming language and implement a video game is the most fundamental approach that I'm aware of. read comments

todd8: It's detailed enough to use when trying to understand how a shell works or how to write a signal handler, but the writing couldn't be clearer. read comments

brogrammer2: The first chapter in the book provides a detailed analysis of how other disciplines contribute to the idea of AI - from Philosophy to Psychology, Biology to Computer Science... read comments

ereyes01: One of the most important books ever written on software engineering practice. Author Frederick Brooks won the Turing Award for this book and for his work on IBM's System/360... read comments

DanHulton: One of the best books on programming style and function, backed up with actual research for the recommendations. read comments

zimmund: Is a great book to improve how you think about code and the way you implement your solutions. Even if you are a seasoned programmer you'll find it useful. read comments

butlersean: After reading I began to think about programming as an algebraic transformation from one system to another, in doing so radically reduced the amount of errors I made. read comments

HeckFeck: If you're interested in something closer to the hardware than Python, why not read about the language that implements Python? It's a programming classic, very concise, easy to read and... read comments