My favorite books about programming for people who actually 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.


I wrote...

The Rules of Programming: How to Write Better Code

By Chris Zimmerman,

Book cover of The Rules of Programming: How to Write Better Code

What is my book about?

We’ve got a problem. When freshly-minted programmers join our team at Sucker Punch they need to be turned into effective professional coders as quickly as possible so that we can get on with making games like Ghost of Tsushima. To accelerate this process we’ve distilled our combined programming wisdom into a set of easy-to-remember and easy-to-apply rules that we teach our newbies, which we imaginatively call “The Rules.”

The Rules of Programming uses plenty of examples to explore these rules—really more like guidelines than rules, guardrails to let new programmers know they’re heading towards trouble. It’s a fun and thought-provoking read whether you’re a new-ish programmer or just someone looking for a new perspective on coding.

Shepherd is reader supported. When you buy books, we may earn an affiliate commission.

The books I picked & why

Book cover of The Pragmatic Programmer: Your Journey to Mastery

Chris Zimmerman Why did I 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 The Soul of a New Machine

Chris Zimmerman Why did I love this book?

It feels a little weird to recommend a book written forty-something years ago about the development of a computer you’ve never heard of… but this book does a better job than any book I’ve ever read of capturing how it feels to be part of an engineering team completely committed to doing something great.

It’s hard for muggles to understand why engineers get so passionate about their projects, but this book gets it. I felt seen.

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 Software Engineering at Google: Lessons Learned from Programming Over Time

Chris Zimmerman Why did I 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 Why did I 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 Becoming a Better Programmer: A Handbook for People Who Care About Code

Chris Zimmerman Why did I 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,…


You might also like...

Api's Berlin Diaries: My Quest to Understand My Grandfather's Nazi Past

By Gabrielle Robinson,

Book cover of Api's Berlin Diaries: My Quest to Understand My Grandfather's Nazi Past

Gabrielle Robinson Author Of Api's Berlin Diaries: My Quest to Understand My Grandfather's Nazi Past

New book alert!

Why am I passionate about this?

Author Retired english professor

Gabrielle's 3 favorite reads in 2023

What is my book about?

Gabrielle found her grandfather’s diaries after her mother’s death, only to discover that he had been a Nazi. Born in Berlin in 1942, she and her mother fled the city in 1945, but Api, the one surviving male member of her family, stayed behind to work as a doctor in a city 90% destroyed.

Gabrielle retraces Api’s steps in the Berlin of the 21st century, torn between her love for the man who gave her the happiest years of her childhood and trying to come to terms with his Nazi membership, German guilt, and political responsibility.

Api's Berlin Diaries: My Quest to Understand My Grandfather's Nazi Past

By Gabrielle Robinson,

What is this book about?

"This is not a book I will forget any time soon."
Story Circle Book Reviews

Moving and provocative, Api's Berlin Diaries offers a personal perspective on the fall of Berlin 1945 and the far-reaching aftershocks of the Third Reich.

After her mother's death, Robinson was thrilled to find her beloved grandfather's war diaries-only to discover that he had been a Nazi.

The award-winning memoir shows Api, a doctor in Berlin, desperately trying to help the wounded in cellars without water or light. He himself was reduced to anxiety and despair, the daily diary his main refuge. As Robinson retraces Api's…


5 book lists we think you will like!

Interested in computer programming, management, and algorithms?

10,000+ authors have recommended their favorite books and what they love about them. Browse their picks for the best books about computer programming, management, and algorithms.

Computer Programming Explore 39 books about computer programming
Management Explore 135 books about management
Algorithms Explore 36 books about algorithms