Thanks for this thread. I'm a software engineer trying to further my education with self-study, and I'll definitely be checking out some of the texts recommended in this thread. I was looking over at my bookshelf of computer science books and thought I'd contribute my thoughts on CS "bibles."
Demystifier said:
Knuth - The Art of Computer Programming, 4 volumes.
Zarlucicil said:
As for computer science, I'd add CLRS - Introduction to Algorithms, 3rd ed.
I'd like to enthusiastically second these two.
TAOCP is utterly authoritative, with
credit for finding errata being an absolute holy grail in the field. The only criterion that it arguably fails is that it doesn't "more or less cover everything" for its subject matter, since the work is incomplete and Knuth is unlikely to live to be 200+ years old (there are supposed to be at least 2 more books in Volume IV and at least three more volumes after that). Still, it does cover a lot so far, by my measure taking up almost 7 bookshelf inches. If you only ever read a single work in all of computer science, I think it's got to be this one.
CLRS is also a solid pick. It's just an introductory-level algorithms and data structures text, but it covers its material comprehensively, to the point that it's actually the single thickest volume on my shelf. It's a standard undergraduate text and it's well-respected enough as a reference to be cited all of the time in scholarly works and industry.
Dragon27 said:
I'm not such a big fan of this as a bible, though it's difficult to articulate why. I guess my hesitation primarily comes from it being so old. Really the whole point of the book is to teach freshman CS students the basic cognitive building-blocks of programming to prepare them for further study. But
SICP would not really be a great choice for that purpose nowadays. It's like nominating an introductory mechanics textbook from 1900. A student could get used to the archaic notation, but you still have to wonder whether it's a good idea to use a text completely uninformed by later developments like relativity. The archaic notation in the case of
SICP is the use of the Scheme programming language, and the book is littered with pedagogy that hasn't exactly stood the test of time (for example, I would feel bad for students forced to muddle through chapters 4 and 5 nowadays). It's tough to recommend a textbook published 35 years ago when the material in the book largely didn't even exist 35 years before it was written. The early volumes of
TAOCP have this same problem, but skirt it since their much more mathematical focus remains relevant today while
SICP's subject matter is more of an applied science that is a moving target.
Okay, so do I have anything new to add for CS? I've only got one thing on my shelf that unequivocally meets the entire definition:
Artificial Intelligence: A Modern Approach by Russell and Norvig. It doesn't cover everything in AI obviously, but the introductory material that it does cover is encyclopedic. It's a standard, well-respected text in the field.
(I could give other recommendations that do things better than the standard bible on the topic, but that's not the point of the thread!

)