Fans pick 100 books like Becoming a Better Programmer

By Pete Goodliffe,

Here are 100 books that Becoming a Better Programmer fans have personally recommended if you like Becoming a Better Programmer. Shepherd is a community of 12,000+ authors and super readers sharing their favorite books with the world.

When you buy books, we may earn a commission that helps keep our lights on (or join the rebellion as a member).

Book cover of The Soul of a New Machine

Alex Tapscott Author Of Web3: Charting the Internet's Next Economic and Cultural Frontier

From my list on technological innovation and what drives it.

Why am I passionate about this?

It was while on the job as an investment banker that I first heard about this new thing called Bitcoin, before the word "web3" entered the vernacular. Initially I was skeptical but curious. But I became convinced the underlying technology of blockchains was ushering in nothing short of a new internet. My father Don Tapscott and I agreed to collaborate on a major research initiative that became the international best-seller, Blockchain Revolution. Since then, I have traveled to 40 countries and seen first-hand how blockchain and now Web3 is changing the world, setting the stage for a new digital age. My new book charts a course for this coming transformation.

Alex's book list on technological innovation and what drives it

Alex Tapscott Why did Alex love this book?

Kidder’s book follows the lives of a group of brilliant, funny, and maniacally driven entrepreneurs as they race to get their new minicomputer, the “Data General Eclipse MV/8000,” to market.

The technology is totally obsolete – who under the age of 40 has heard of a minicomputer? – but the story is somehow timeless. The book won the Pulitzer and is still a fun and riveting tale of what it takes to get a product to market on an ever-changing technological frontier.

By Tracy Kidder,

Why should I read it?

5 authors picked The Soul of a New Machine as one of their favorite books, and they share why you should read it.

What is this book about?

Tracy Kidder's "riveting" story of one company's efforts to bring a new microcomputer to market won both the Pulitzer Prize and the National Book Award and has become essential reading for understanding the history of the American tech industry.

Computers have changed since 1981 when The Soul of a New Machine first examined the culture of the computer revolution. What has not changed is the feverish pace of the high-tech industry, the go-for-broke approach to business that has caused so many computer companies to win big (or go belly up), and the cult of pursuing mind-bending technological innovations.

The Soul…


Book cover of The Pragmatic Programmer: Your Journey to Mastery

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?

This book’s title is absolutely perfect! There’s no agenda here other than identifying things that will make you a more effective and productive programmer.

That leads to a book packed with solid advice, whether it’s about how to write code or how to think about your career. The authors are consultants, so there are plenty of clear and interesting examples drawn from many different problem domains. That’s super fun for someone like me who’s hyper-focused on a single kind of programming.

By David Thomas, Andrew Hunt,

Why should I read it?

4 authors picked The Pragmatic Programmer as one of their favorite books, and they share why you should read it.

What is this book about?

"One of the most significant books in my life." -Obie Fernandez, Author, The Rails Way

"Twenty years ago, the first edition of The Pragmatic Programmer completely changed the trajectory of my career. This new edition could do the same for yours." -Mike Cohn, Author of Succeeding with Agile , Agile Estimating and Planning , and User Stories Applied

". . . filled with practical advice, both technical and professional, that will serve you and your projects well for years to come." -Andrea Goulet, CEO, Corgibytes, Founder, LegacyCode.Rocks

". . . lightning does strike twice, and this book is proof." -VM…


Book cover of Software Engineering at Google: Lessons Learned from Programming Over Time

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?

A thoroughly fascinating (and fascinatingly thorough) look at engineering practices at Google.

It’s an encyclopedia written by a bunch of authors, so some of the chapters are a little dry, but for those of us who aren’t on teams with 25,000 engineers it’s spell-binding to see what programming at that sort of scale looks like. Some of the chapters prompted us to think really hard about the way we do things at Sucker Punch.

By Titus Winters, Tom Manshreck, Hyrum Wright

Why should I read it?

2 authors picked Software Engineering at Google as one of their favorite books, and they share why you should read it.

What is this book about?

Today, software engineers need to know not only how to program effectively but also how to develop proper engineering practices to make their codebase sustainable and healthy. This book emphasizes this difference between programming and software engineering.

How can software engineers manage a living codebase that evolves and responds to changing requirements and demands over the length of its life? Based on their experience at Google, software engineers Titus Winters and Hyrum Wright, along with technical writer Tom Manshreck, present a candid and insightful look at how some of the world's leading practitioners construct and maintain software. This book covers…


Book cover of Introduction to Algorithms

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?

Yes, it’s a textbook, albeit a particularly well-written one. You may already have it on your shelf, if you’ve taken a programming class or two.

I’m way too old to have used CLRS as a textbook, though! For me, it’s an effectively bottomless collection of neat little ideas—an easy-to-describe problem, then a series of increasingly clever ways to solve that problem. How often do I end up using one of those algorithms? Not very often! But every time I read the description of an algorithm, I get a nugget of pure joy from the “aha” moment when I first understand how it works.

Book cover of 97 Things Every Java Programmer Should Know: Collective Wisdom from the Experts

Jeanne Boyarsky Author Of OCP Oracle Certified Professional Java SE 17 Developer Study Guide: Exam 1Z0-829

From my list on becoming a better Java developer.

Why am I passionate about this?

I’ve always enjoyed mentoring folks whether new or experienced in programming. Whether it is teaching an intern or a high school robotics student, or onboarding an experienced Java developer, it brings me joy to see people learn. I also love to read. Being able to recommend some of my favorite books can help even more people absorb all of this information.

Jeanne's book list on becoming a better Java developer

Jeanne Boyarsky Why did Jeanne love this book?

When trying to become a better Java developer, there is so much to learn.

97 Things covers, well 97, of them in a series of brief essays. What’s cool is that the essays were written by different people so you get lots of points of view on what is important. Topics range from language (comments, fat jars) to the ecosystem (benchmarking, frequent releases) to the language-agnostic (definition of done and breaking down problems.)

Note that two of these are mine. The book is thin at just over 200 pieces. And since each “thing” is short, it’s easy to read on the go.

By Kevlin Henney, Trisha Gee,

Why should I read it?

1 author picked 97 Things Every Java Programmer Should Know as one of their favorite books, and they share why you should read it.

What is this book about?

If you want to push your Java skills to the next level, this book provides expert advice from Java leaders and practitioners. You'll be encouraged to look at problems in new ways, take broader responsibility for your work, stretch yourself by learning new techniques, and become as good at the entire craft of development as you possibly can

Edited by Kevlin Henney and Trisha Gee, 97 Things Every Java Programmer Should Know reflects lifetimes of experience writing Java software and living with the process of software development. Great programmers share their collected wisdom to help you rethink Java practices, whether…


Book cover of The Clean Coder: A Code of Conduct for Professional Programmers

Jesse Liberty Author Of Git for Programmers: Master Git for effective implementation of version control for your programming projects

From my list on for creating great software.

Why am I passionate about this?

I have been coding for over 30 years. I’ve seen some miserable interfaces, and some large programs that collapse under their own weight. Software was, at one point, notorious for being late, over budget, and unreliable. These books have helped turn the corner on these failings, and I have found each of them very valuable in my day-to-day programming. While you can learn technique and even languages online, the kind of insight found in these books is rare and worth spending time and money on.

Jesse's book list on for creating great software

Jesse Liberty Why did Jesse love this book?

Robert (Uncle Bob) Martin is the recognized go-to person for books on creating quality code. This is the first in a series of books that include The Clean Coder, Clean Architecture, and a number more. His advice and guidance in Clean Code have made a significant difference in my personal coding habits and best practices. This is an indispensable book for all programmers, no matter what they are coding or how much experience they have

By Robert C. Martin,

Why should I read it?

1 author picked The Clean Coder as one of their favorite books, and they share why you should read it.

What is this book about?

Programmers who endure and succeed amidst swirling uncertainty and nonstop pressure share a common attribute: They care deeply about the practice of creating software. They treat it as a craft. They are professionals.



In The Clean Coder: A Code of Conduct for Professional Programmers, legendary software expert Robert C. Martin introduces the disciplines, techniques, tools, and practices of true software craftsmanship. This book is packed with practical advice-about everything from estimating and coding to refactoring and testing. It covers much more than technique: It is about attitude. Martin shows how to approach software development with honor, self-respect, and pride; work…


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 Software Tools in Pascal

Arnold Robbins Author Of Linux Programming by Example

From my list on for learning the Zen of Unix.

Why am I passionate about this?

I am a professional software developer and technical author, with a number of books published by O’Reilly and Prentice Hall. I have been working in the C / C++ / Unix / Linux world for over four decades. I am also the maintainer of the Free Software Foundation’s GNU Awk interpreter for the awk programming language. I have a passion for writing clear, correct, efficient, and portable code, and for applying the UNIX and Software Tools principles in my development. I hope that this book list will help you climb the learning curve of doing great Unix / Linux development.

Arnold's book list on for learning the Zen of Unix

Arnold Robbins Why did Arnold love this book?

This book (an update to Software Tools by the same authors) codifies and instructs the principles by which the Unix / Linux toolset was designed. It emphasizes clear, robust code, and the building of tools, reusable, general purpose software components that can be hooked together to solve many kinds of programming and data management tasks. The lessons it teaches are timeless, and the current generation of programmers would be well served to try and learn them.

The original Software Tools was perhaps the single most influential software book that I ever read. It taught me how to think with the Unix mindset, how to make the best use of what the Unix system (and now Linux) offers, and how to focus on readability and maintainability in my own software.

By Brian Kernighan, P.J. Plauger,

Why should I read it?

1 author picked Software Tools in Pascal as one of their favorite books, and they share why you should read it.

What is this book about?

With the same style and clarity that characterized their highly acclaimed The Elements of Programming Style and Software Tools, the authors have written Software Tools in Pascal to teach how to write good Pascal programs that make good tools. The programs contained in the book are not artificial, but are actual tools that have proved valuable in the production of other programs. Structured programming and top-down design are emphasized and applied to every program, as are principles of sound design, testing, efficiency, and portability. All of the programs are complete and have been tested directly from the text. The programs…


Book cover of JavaScript: The Good Parts: The Good Parts

Jeff Langr Author Of Modern C++ Programming with Test-Driven Development: Code Better, Sleep Better

From my list on doing it right in your programming language.

Why am I passionate about this?

I love computer programming books almost as much as I love computer programming. As a high school student in 1980 I remember typing in really frustrating source code from the book BASIC Computer Games. Was programming meant to be a black art? Was code supposed to be an impenetrable mess of buried intent? When I started getting paid to program, I was happy to see that the answer to both questions was "no." I began to seek and enjoy books that espoused the "right" way to code in a given language. Here is a handful of books that have helped me and countless others learn to produce correct, clear, and maintainable code.

Jeff's book list on doing it right in your programming language

Jeff Langr Why did Jeff love this book?

During my first few weeks of JavaScript coding, I encountered what seemed to be an endless number of head-scratching moments: "I'm slowly reading the few lines of code I just wrote, it seems fine, so why isn't it doing what it looks like it should be doing?" Even more insidious at times than C++, JavaScript contains a number of fairly clever constructs, including things like hoisting, duck typing, and a loosey-goosey argument passing mechanism. This concise tome of fewer than 175 pages helped get me past those first few months, and as an author-stated goal, it helped me "learn to think in JavaScript."

By Douglas Crockford,

Why should I read it?

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

What is this book about?

Most programming languages contain good and bad parts, but JavaScript has more than its share of the bad, having been developed and released in a hurry before it could be refined. This authoritative book scrapes away these bad features to reveal a subset of JavaScript that's more reliable, readable, and maintainable than the language as a whole-a subset you can use to create truly extensible and efficient code. Considered the JavaScript expert by many people in the development community, author Douglas Crockford identifies the abundance of good ideas that make JavaScript an outstanding object-oriented programming language-ideas such as functions, loose…


Book cover of Programming C# 10: Build Cloud, Web, and Desktop Applications

Jesse Liberty Author Of .NET MAUI for C# Developers: Build cross-platform mobile and desktop applications

From my list on C# programming from a C# expert.

Why am I passionate about this?

I've been a C# programmer for 23 years, and am passionate about the language. It is the perfect balance of power and ease of use, and each year it is extended by its amazing development team. I've used C# to build stand-alone applications, mobile applications, APIs, and database applications and I've never felt constrained. Finally, C# lends itself to best practices and design patterns, and continues to rise in popularity, especially with professional software developers.

Jesse's book list on C# programming from a C# expert

Jesse Liberty Why did Jesse love this book?

While it is true that I wrote the first few editions of this book, Ian has taken it over, revamped it, and made it an iconic work on the language.

It covers every aspect of C# programming, and explains not only how to do something, but why you would do it. It is chock full of best practices and patterns and anti-patterns, and is well written and engaging.

By Ian Griffiths,

Why should I read it?

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

What is this book about?

C# is undeniably one of the most versatile programming languages available to engineers today. With this comprehensive guide, you'll learn just how powerful the combination of C# and .NET can be. Author Ian Griffiths guides you through C# 10.0 and .NET 6 fundamentals and techniques for building cloud, web, and desktop applications.

Designed for experienced programmers, this book provides many code examples to help you work with the nuts and bolts of C#, such as generics, LINQ, and asynchronous programming features. You'll get up to speed on .NET 6 and the latest C# 9.0 and 10.0 additions, including records, enhanced…


Book cover of The Soul of a New Machine
Book cover of The Pragmatic Programmer: Your Journey to Mastery
Book cover of Software Engineering at Google: Lessons Learned from Programming Over Time

Share your top 3 reads of 2024!

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

1,581

readers submitted
so far, will you?

5 book lists we think you will like!

Interested in computer programming, programmers, and ethics?

Programmers 22 books
Ethics 143 books