The most recommended books for programmers

Who picked these books? Meet our 21 experts.

21 authors created a book list connected to programmers, and here are their favorite programmer books.
When you buy books, we may earn a commission that helps keep our lights on (or join the rebellion as a member).

What type of programmer book?

Loading...
Loading...

Book cover of Margaret and the Moon

Sandra Nickel Author Of The Stuff Between the Stars: How Vera Rubin Discovered Most of the Universe

From my list on children’s books about astronomy.

Why am I passionate about this?

I am an award-winning children’s book author who writes stories about unexpected friends, women who did the impossible, people who are (almost) forgotten & ideas that seem too complicated until I find the right way to tell them.

Sandra's book list on children’s books about astronomy

Sandra Nickel Why did Sandra love this book?

Margaret and the Moon tells the story of Margaret Hamilton, who wrote the computer code that was key to the US first landing on the moon. The story is full of suspense. Margaret—not the astronauts—is the real hero of the story. But what is best about this book is that it is bursting with curiosity. Margaret wonders, Why are there only DADDY Longlegs? Why aren’t more girls scientists? How big is the moon? And with each of her questions, readers themselves became more and more curious! Isn’t that fabulous?!

By Dean Robbins, Lucy Knisley (illustrator),

Why should I read it?

1 author picked Margaret and the Moon as one of their favorite books, and they share why you should read it. This book is for kids age 4, 5, 6, and 7.

What is this book about?

A true story from one of the Women of NASA!

Margaret Hamilton loved numbers as a young girl. She knew how many miles it was to the moon (and how many back). She loved studying algebra and geometry and calculus and using math to solve problems in the outside world.

Soon math led her to MIT and then to helping NASA put a man on the moon! She handwrote code that would allow the spacecraft’s computer to solve any problems it might encounter. Apollo 8. Apollo 9. Apollo 10. Apollo 11. Without her code, none of those missions could have…


Book cover of Proving Ground: The Untold Story of the Six Women Who Programmed the World's First Modern Computer

Aram Sinnreich Author Of The Secret Life of Data: Navigating Hype and Uncertainty in the Age of Algorithmic Surveillance

From my list on books about data that will blow your mind.

Why am I passionate about this?

I can’t explain my lifelong fascination with the strange dance between culture, power, and technology. Maybe it’s because I grew up as a math whiz with a deep love of music or because I read too much sci-fi under my blanket by flashlight when I should have been getting my beauty sleep. I was lucky to become friends with Jesse Gilbert at the age of 14 - we goaded each other into spending our lives researching, writing about, and playing with tech in a cultural context. We wrote this book together as a way to bring our decades-long dialogue into the public eye and invite a wider range of people to participate in the conversation.

Aram's book list on books about data that will blow your mind

Aram Sinnreich Why did Aram love this book?

I’ve always been a big fan of books that explode the “great man” myth and lift the curtains to show all of the unsung heroes behind history’s greatest accomplishments. The sociologist Howard Becker’s classic Art Worlds did this for creative professions, and Kathy Kleiman’s Proving Ground does the same thing for digital computers.

The birth of modern computing is usually credited to the mathematician Alan Turing. But the actual work of programming the world’s first general purpose digital computer, named ENIAC, was undertaken by six remarkable women mathematicians (Kathleen McNulty, Jean Jennings Bartik, Frances Elizabeth Snyder, Frances Bilas Spence, Marlyn Wescoff Meltzer and Ruth Lichterman Teitelbaum) whose names were left out of the history books.

Author Kathy Kleiman has made it her life’s work to restore these trailblazers to their rightful place at the beginning of the data revolution that has radically changed global society over the past 80 years.…

By Kathy Kleiman,

Why should I read it?

1 author picked Proving Ground as one of their favorite books, and they share why you should read it.

What is this book about?

A fascinating, forgotten story of the six brilliant women who launched modern computing.

As the Cold War began, America's race for tech supremacy was taking off. Experts rushed to complete the top-secret computing research started during World War II, among them six gifted mathematicians: a patriotic Quaker, a Jewish bookworm, a Yugoslav genius, a native Gaelic speaker, a sophomore from the Bronx, and a farmer's daughter from Missouri. Their mission? Programming the world's first and only supercomputer-before any code or programming languages existed.

These pioneers triumphed against sexist attitudes and huge technical challenges to invent computer programming, yet their monumental…


Book cover of Working Effectively with Unit Tests

Jan Van Ryswyck Author Of Writing Maintainable Unit Tests: Mastering the Art of Loosely Coupled Unit Tests

From my list on starting your software developer journey.

Why am I passionate about this?

I’m a professional software developer for more than 22 years now. I’ve used many programming languages, platforms, frameworks, etc. throughout my career. However, the only constant for me personally was the practice of Test-Driven Development. I’ve never stopped learning about the principles and practices behind it, and it paid huge dividends throughout my career. I’m very humbled and grateful to be able to learn from all those amazing people over the years, that I decided to write a book on the topic. Giving back some of the knowledge that I gathered about TDD throughout 18+ years. 

Jan's book list on starting your software developer journey

Jan Van Ryswyck Why did Jan love this book?

I was quite late in picking up this book after it got published in 2014. Turned out that this mistake was all mine. Although the book is very opinionated, this masterpiece is filled with many nuggets of wisdom when it comes to writing highly maintainable unit tests. There are lots of code examples to be found as well. The ideal book to read after Test-Driven Development By Example and Growing Object-Oriented Software, Guided By Tests.

By Jay Fields,

Why should I read it?

1 author picked Working Effectively with Unit Tests as one of their favorite books, and they share why you should read it.

What is this book about?

This book details Jay Fields' strong opinions on the best way to test, while acknowledging alternative styles and various contexts in which tests are written. Whether you prefer Jay Fields' style or not, this book will help you write better Unit Tests.

From the Preface:

Over a dozen years ago I read Refactoring for the first time; it immediately became my bible. While Refactoring isn’t about testing, it explicitly states: If you want to refactor, the essential precondition is having solid tests. At that time, if Refactoring deemed it necessary, I unquestionably complied. That was the beginning of my quest…


Book cover of Becoming a Better Programmer: A Handbook for People Who Care About Code

Chris Zimmerman Author Of The Rules of Programming: How to Write Better Code

From my list on programming for people who want to be good at it.

Why am I passionate about this?

I’ve spent most of my life writing code—and too much of that life teaching new programmers how to write code like a professional. If it’s true that you only truly understand something after teaching it to someone else, then at this point I must really understand programming! Unfortunately, that understanding has not led to an endless stream of bug-free code, but it has led to some informed opinions on programming and books about programming.

Chris' book list on programming for people who want to be good at it

Chris Zimmerman Why did Chris love this book?

I’ve read a lot of books about programming; very few of them have made me laugh. None made me laugh as much as this book.

There’s one chapter where… nah, I don’t want to spoil it for you. Plus it has cartoons! Obviously, none of that would matter unless it also had interesting things to say about the practice of programming, but it’s packed full of interesting perspectives on all sorts of issues, from team dynamics to thinking about your career to an explicit consideration of the ethics of programming.

When we make games at Sucker Punch, we aim to “surprise and delight” the player—and that’s exactly what this book did for me.

By Pete Goodliffe,

Why should I read it?

1 author picked Becoming a Better Programmer as one of their favorite books, and they share why you should read it.

What is this book about?

If you're passionate about programming and want to get better at it, you've come to the right source. Code Craft author Pete Goodliffe presents a collection of useful techniques and approaches to the art and craft of programming that will help boost your career and your well-being. Goodliffe presents sound advice that he's learned in 15 years of professional programming. The book's standalone chapters span the range of a software developer's life - dealing with code, learning the trade, and improving performance - with no language or industry bias. Whether you're a seasoned developer, a neophyte professional, or a hobbyist,…


Book cover of Programming Pearls

John Z. Sonmez Author Of Soft Skills: The Software Developer's Life Manual

From my list on fun for software developers.

Why am I passionate about this?

I love to expand my knowledge and learn not just about new technologies, but how things work. I find it fascinating to dig deep into computer programming, technology concepts, and really geek out on things. That’s why I love software development or programming books that aren’t just about some technology and how to do something, but rather books that really make you think and teach you not just programming skills but critical thinking about problem-solving skills. As a software developer for over 15 years and a person who teaches software developers, I have learned that if someone isn’t entertained, they aren’t learning. That’s why I put together a list of fun, entertaining and useful books.

John's book list on fun for software developers

John Z. Sonmez Why did John love this book?

Even though this book is a bit older, I had a ton of fun doing the programming problems in this book. This book really makes you think outside the box as a programmer and try to solve various problems in different ways depending on what you are trying to optimize for.

I really learned a lot about not just solving a problem, but solving a problem for a specific set of goals. Overall it made me a better programmer and made me think more deeply about programming problems.

If you want to improve your problem-solving skills and have fun doing it, I would definitely recommend this book.

By Jon Bentley,

Why should I read it?

1 author picked Programming Pearls as one of their favorite books, and they share why you should read it.

What is this book about?

When programmers list their favourite books, Jon Bentley's collection of programming pearls is commonly included among the classics. Just as natural pearls grow from grains of sand that irritate oysters, programming pearls have grown from real problems that have irritated real programmers. With origins beyond solid engineering, in the realm of insight and creativity, Bentley's pearls offer unique and clever solutions to those nagging problems. Illustrated by programs designed as much for fun as for instruction, the book is filled with lucid and witty descriptions of practical programming techniques and fundamental design principles. It is not at all surprising that…


Book cover of Mastering Django

Arun Ravindran Author Of Django Design Patterns and Modern Best Practices

From my list on Django for building solid web apps in Python.

Why am I passionate about this?

I’ve been dabbling in Python for the last 22 years. I am a regular speaker at Pycon India ever since its inception. Most of my talks are related to Django. I host arunrocks.com where I write tutorials, and articles and publish screencasts on several Django and Python topics. My initial screencast titled "Building a blog in 30 mins with Django" is one of the most popular screencasts for beginners in Django. I’m a developer member of the Django Software Foundation.

Arun's book list on Django for building solid web apps in Python

Arun Ravindran Why did Arun love this book?

Another book with a detailed coverage of the Django web framework. This is a revised book written originally by Adrian Holovaty and Jacob Kaplan-Moss—the creators of Django themselves. Hence the initial chapters are an excellent in-depth description of how Django works. The remaining parts of the books go into intermediate and advanced topics.

By Nigel George,

Why should I read it?

1 author picked Mastering Django as one of their favorite books, and they share why you should read it.

What is this book about?

Mastering Django is the latest version of Mastering Django: Core—the original, best-selling programmer’s reference for Django.

Mastering Django is not just a revision of the original book—it has been completely rewritten from the ground up to meet the needs of modern Django programmers.

The main goal of this book is to make you a Django expert. By reading this book, you’ll learn the skills needed to develop powerful websites quickly, with code that is clean and easy to maintain.

This book is also a programmer’s manual that provides complete coverage of modern Django version 3 and above.

For developers creating…


Book cover of Code Complete: A Practical Handbook of Software Construction

Rod Stephens Author Of Beginning Software Engineering

From my list on making you a better software developer.

Why am I passionate about this?

During my career, I’ve worked on projects large and small (1 - 60+ people) in a wide variety of fields (like repair dispatch, ticket sales, and professional football coaching--the NFL kind not the FIFA kind). All of them, and particularly the big ones, were like antique clocks: they had lots of moving pieces and if any piece broke, the whole thing wouldn’t work. (Unfortunately, failed software projects don’t look nice on your mantelpiece.) In this list, I’ve tried to pick some books that you might not discover if you look only for programming books. Read those, too, but don’t ignore the more human-oriented dimensions of software development. Hopefully you’ll find these choices interesting and useful.

Rod's book list on making you a better software developer

Rod Stephens Why did Rod love this book?

Software engineering involves several phases such as requirements gathering, design, programming, testing, and deployment.

This book explains techniques that allow you to build quality and robustness into every phase of the process. It discusses design, classes, defensive programming, collaboration, refactoring, and more.

The book uses many examples in an assortment of languages but the concepts apply to any programming language. In fact, the main themes like building error detection into every step of the process generalize to even non-programming parts of the development process.

If you’re an experienced developer, you may have discovered some of this book’s ideas elsewhere or even on your own, but you only need to pick up one or two new tidbits to make the book worthwhile.

By Steve McConnell,

Why should I read it?

1 author picked Code Complete as one of their favorite books, and they share why you should read it.

What is this book about?

Widely considered one of the best practical guides to programming, Steve McConnell's original CODE COMPLETE has been helping developers write better software for more than a decade. Now this classic book has been fully updated and revised with leading-edge practices-and hundreds of new code samples-illustrating the art and science of software construction. Capturing the body of knowledge available from research, academia, and everyday commercial practice, McConnell synthesizes the most effective techniques and must-know principles into clear, pragmatic guidance. No matter what your experience level, development environment, or project size, this book will inform and stimulate your thinking-and help you build…


Book cover of How to Write for the World of Work

Rod Stephens Author Of Beginning Software Engineering

From my list on making you a better software developer.

Why am I passionate about this?

During my career, I’ve worked on projects large and small (1 - 60+ people) in a wide variety of fields (like repair dispatch, ticket sales, and professional football coaching--the NFL kind not the FIFA kind). All of them, and particularly the big ones, were like antique clocks: they had lots of moving pieces and if any piece broke, the whole thing wouldn’t work. (Unfortunately, failed software projects don’t look nice on your mantelpiece.) In this list, I’ve tried to pick some books that you might not discover if you look only for programming books. Read those, too, but don’t ignore the more human-oriented dimensions of software development. Hopefully you’ll find these choices interesting and useful.

Rod's book list on making you a better software developer

Rod Stephens Why did Rod love this book?

When people think about software engineering they mostly think about programming, but that’s not where a project starts. It starts with requirements.

(Really it sometimes starts with company politics, bickering, excuses, and backstabbing, but requirements gathering is often the official start.)

A good set of requirements keeps developers pulling in the same direction; a bad one can make the team inefficient, cause endless arguments, set developers against each other, and make the project feel like Lord of the Flies. I’ve seen projects scrapped and restarted from scratch or even canceled due to poor documentation.

Every software developer should know at least a little about writing so they can produce clear requirements and documentation.

This book isn’t specifically about writing documentation (which is something of an art in itself), but it can help you learn how to make your business writing more effective. This book won’t turn you into Shakespeare,…

By Donald H. Cunningham, Thomas E. Pearsall, Elizabeth O. Smith

Why should I read it?

1 author picked How to Write for the World of Work as one of their favorite books, and they share why you should read it.

What is this book about?

Designed for advanced professional, technical or business writing courses, this concise text covers basic principles, correspondence and reports, and provides a guide to common problems.


Book cover of Test Driven Development: By Example

Jan Van Ryswyck Author Of Writing Maintainable Unit Tests: Mastering the Art of Loosely Coupled Unit Tests

From my list on starting your software developer journey.

Why am I passionate about this?

I’m a professional software developer for more than 22 years now. I’ve used many programming languages, platforms, frameworks, etc. throughout my career. However, the only constant for me personally was the practice of Test-Driven Development. I’ve never stopped learning about the principles and practices behind it, and it paid huge dividends throughout my career. I’m very humbled and grateful to be able to learn from all those amazing people over the years, that I decided to write a book on the topic. Giving back some of the knowledge that I gathered about TDD throughout 18+ years. 

Jan's book list on starting your software developer journey

Jan Van Ryswyck Why did Jan love this book?

During the early years of my career as a software developer, I regularly developed very small programs that would exercise parts of the system that I was working on back then. I realized very quickly that those small programs would save me a lot of time figuring out whether the changes that I made would actually work or not. Until at some point a colleague mentioned the concept of Test-Driven Development. I first did some experimentation, dipping a toe into the water to feel the temperature. It wasn’t until the first time I picked up this book that I jumped right in. From then moment on, it all made sense. Although this book was published back in 2002, for me it still is the book when it comes to the subject of Test-Driven Development.      

By Kent Beck,

Why should I read it?

1 author picked Test Driven Development as one of their favorite books, and they share why you should read it.

What is this book about?

Quite simply, test-driven development is meant to eliminate fear in application development. While some fear is healthy (often viewed as a conscience that tells programmers to "be careful!"), the author believes that byproducts of fear include tentative, grumpy, and uncommunicative programmers who are unable to absorb constructive criticism. When programming teams buy into TDD, they immediately see positive results. They eliminate the fear involved in their jobs, and are better equipped to tackle the difficult challenges that face them. TDD eliminates tentative traits, it teaches programmers to communicate, and it encourages team members to seek out criticism However, even the…


Book cover of Computer Systems: A Programmer's Perspective

Shimon Schocken Author Of The Elements of Computing Systems: Building a Modern Computer from First Principles

From my list on how computers work, and how they are built.

Why am I passionate about this?

As a computer science professor and educator, my teaching motto is Rigor and Vigor. I believe that the only way to learn something deeply, whether it's an abstract mathematical argument or a complex computer system – is building the thing from the ground up, from first principles. That's the rigor. The second requirement – vigor – comes from the need to make this learning experience captivating, rewarding, empowering. I spent much of my career developing books, courses, and games that help learn computer science and mathematics with gusto. I am pleased that this work has had an impact, and that it resonates with many students and self-learners around the world.

Shimon's book list on how computers work, and how they are built

Shimon Schocken Why did Shimon love this book?

This weighty tome delves deep into the low-level working of computer programs.

This book is a great resource for professional programmers who work close to the machine in such fields as embedded software, cybersecurity, and device drivers. Assuming a basic knowledge of the C language, Bryant and O’Hallaron, two CMU professors, teach how to read and understand compiled code, how to optimize it for better performance, and how to avoid common pitfalls.

This is a hard-core technical book, written by engineers for engineers, in a dense style that is nonetheless accessible and practical. I like the numerous applied problems, each accompanied by a worked-out solution.

By Randal E. Bryant, David R. O'Hallaron,

Why should I read it?

1 author picked Computer Systems as one of their favorite books, and they share why you should read it.

What is this book about?

&>standalone product; MasteringEngineering (R) does not come packaged with this content. If you would like to purchase both the physical text and MasteringEngineering search for 0134123832 / 9780134123837 Computer Systems: A Programmer's Perspective plus MasteringEngineering with Pearson eText - Access Card Package, 3/e

Package consists of:

013409266X/9780134092669 Computer Systems: A Programmer's Perspective, 3/e 0134071921/9780134071923 MasteringEngineering with Pearson eText -- Standalone Access Card -- for Computer Systems: A Programmer's Perspective, 3/e

MasteringEngineering should only be purchased when required by an instructor.

For courses in Computer Science and Programming

Computer systems: A Programmer's Perspective explains the underlying elements common among all computer…


Book cover of Margaret and the Moon
Book cover of Proving Ground: The Untold Story of the Six Women Who Programmed the World's First Modern Computer
Book cover of Working Effectively with Unit Tests

Share your top 3 reads of 2024!

And get a beautiful page showing off your 3 favorite reads.

1,586

readers submitted
so far, will you?