Essential Books That Every Programmer Should Read

by B. Batsov, Uncle Bob, K. Beck, J. Atwood and DHH

Never ask advice of someone with whom you wouldn’t want to trade places — Darren Hardy

The idea to collect a list of books that knowledgeable, experienced and well-known programmers recommends to read comes to me from The long Journey to Ruby Mastery conference talk by Bozhidar Batsov.

Here I share what I have found so far: the books recommendations from the Bozhidar talk, lists by Uncle Bob, and Kent Beck, books from blog posts by Jeff Atwood and DHH.

Bozhidar Batsov VP Engineering at Toptal and open-source hacker in his talk named 15 books to reach mastery as a programmer independently of programming language:

Even if you have 20 years of experience in programming you can learn a lot from the books above thinks Bozhidar.

This a essential minimum for a good developer.
– Bozhidar

For programmers working with object-oriented languages Bozhidar recommends:


I asked Robert C. Martin, aka Uncle Bob Martin, software engineer, author, instructor, co-author of Agile Manifesto, for books recommendations. Here is his list:

I asked speaker and author of the Extreme Programming book series Kent Beck, for books recommendations:

David Heinemeier Hansson, aka DHH, creator of Ruby on Rails, founder and CTO at Basecamp, author, and public speaker share the 5 books that meant most for him:

David comments on each book in his post, and I recommend reading it.

Call to action

What your list of “Essential Books That Every Programmer Should Read”?

Which programmer would you like to ask for advice about which book to read next?

Comment below or tweet me.

If you like this writeup share it with friends and clap a lot (Click 👏) to make it reachable to more people on Medium.

Another way to spread the word is to retweet this 👇