What books are the absolute bibles for different languages

I know there are hundreds if not thousands of books for learning the different languages but generally I find there is usually a “one book to rule them all” for any subject.

For C for example I am going to buy the “The C Programming Language 2nd Edition” Yes it is an old book but the guy who wrote the language is one of the writers and you cant get much better than that.

I however don’t know much about what books are out there for all the different languages.

I don’t want to buy all the books or the cheapest books, I just want to buy what is considered the best books on the subject matter.

I did a search but didn’t get any truly definitive answers.

For Go, it’s definitely “The Go Programming Language”, by Donovan and Kernighan.

Though, I usually just keep these books as a reference for when I can’t intuit something.

Yeah I know what you mean, I’m new to this so I don’t have the underlying knowledge to work things out intuitively.

Can recommend The C Programming Language by K&R as you’ve already mentioned.
C Programming: A modern Approach by King is highly regarded as well as far as I know, though I’ve never read it myself.

For Python I used Python Crash Course by Eric Matthes to get off the ground. I believe it’s highly recommended though I got it from a friend who decided programming wasn’t for him when I was checking Python out.

The C++ Programming Language by Bjarne Stroustrup I believe is the K&R equivalent, or as close as can be for C → C++ in one book. That said, I don’t think it’s near as beginner friendly.

If you’re a student (or otherwise have a .edu email) then chances are decent you can access the O’Reilly online book catalog for free which can let you try before you buy, or not buy at all. Many of their books are great substitutes in my experience. Practical C Programming by Steve Oualline is a good example, though the edition I have is outdated in terms of enterprise application, the info is solid.

1 Like

For C, I recommend getting a copy of the C99 spec (ISO/IEC 9899) which you can download for free. It mentions functions, types and header files compliant (POSIX) operating systems will provide. I reference it often.

Thanks I’ll look that up. I’m not completely against digital books but I’m trying to get them all in print.

Which reminds me if anyone can find a way to read books digitally that actually replicates reading a real book I’d be very interested. I grew up as a library fanatic so it’s a hard thing to give up.


The Art of Software Testing is likely a great place to start for all languages.

Ereaders are the next best thing in my opinion but relatively expensive.

Yeah Ive thought about things like a kindle, they aren’t badly priced as long as I actually used it otherwise it would be a wast. My dislike is not being able to quickly and easily flip through parts of the book quickly the way you can with a physical book. But expecting a digital interface to do that is asking a bit much.

Not all ereaders are the same and I’ve only used a small Kobo for an extended time. In the future I intend to get an e-ink monitor for having documentation up on the side. Pricey but worth it for personal reasons.
Cutting to my point, if the ebook is properly made, you can click through them similar to a web page to jump to a section and then quickly flip pages. Probably all modern ebook software lets you make bookmarks as well.

Nothing beats a physical book but there is a nice convenience to having the equivalent of multiple books a click away for quick reference or ctrl+f-ing.

Related would be 5 Books Every Software Developer NEEDS - YouTube

On another note. It’s one thing to learn code but what would be the book bible for learning about the underlying machine code?

I find this way funnier than I probably should