Back to Home11/16/2025, 8:46:30 PM

The Pragmatic Programmer: 20th Anniversary Edition (2023)

214 points
62 comments

Mood

informative

Sentiment

positive

Category

tech_discussion

Key topics

programming

software development

book review

Discussion Activity

Very active discussion

First comment

5h

Peak period

24

Day 1

Avg / period

14

Comment distribution28 data points

Based on 28 loaded comments

Key moments

  1. 01Story posted

    11/16/2025, 8:46:30 PM

    2d ago

    Step 01
  2. 02First comment

    11/17/2025, 1:23:53 AM

    5h after posting

    Step 02
  3. 03Peak activity

    24 comments in Day 1

    Hottest window of the conversation

    Step 03
  4. 04Latest activity

    11/18/2025, 3:37:28 PM

    1d ago

    Step 04

Generating AI Summary...

Analyzing up to 500 comments to identify key contributors and discussion patterns

Discussion (62 comments)
Showing 28 comments of 62
IgorPartola
2d ago
3 replies
I have read a number of programming books but the only two that really stood out to me and that I still remember are The Pragmatic Programmer and K&R The C Programming Language. They are obviously very different but foundational in ways that enabled me to get a lot of things done.

I do still encourage people to learn C only because you could understand how the language works or a long weekend and it will help you appreciate just how things actually work under the hood (and a bit above the assembly instructions level). And TPP is great for helping you understand what to do when actually working on a deliverable project and not just the exciting parts. It’s the difference between building a toy that runs on your machine and a project others can run and use.

kylecazar
2d ago
1 reply
My first programming book was K&R as well. It was an excellent introduction to programming.

You might think that coming from K&R, I wouldn't have liked my second and third books, which were two of the first Head First series. They took essentially the opposite approach from K&R, but I enjoyed them too and learned quite a bit. Something about the content lended itself to a more visual approach to the material (maybe the nature of OOP).

IgorPartola
2d ago
It was technically not my first. Really my first was around age 6 or 7 and it was a companion to my grandfather’s Pravetz 8D which had a listing of BASIC commands and I think like 20 or so listings of programs. His students had also programmed a few games that he had copies of which were cool. I ended up trying to modify them and writing some of my own but that’s how I got into this whole thing.

But K&R was the first book that I read that made me feel like I fully understood what was happening. Of course I was missing a lot of nuance a a bunch of abstraction layers that I learned about later but that book felt very self-contained. I read the first time it when I think I was 25 or 26 and at 39 I might want to do a refresher.

android521
2d ago
1 reply
You should read A philosophy of software design by John Ousterhout. It might become your favourite book.
breppp
2d ago
1 reply
I second that, absolute favorite
ebcode
1d ago
Thirded.
conor-
1d ago
The book that's really stood out to me is the Kernighan/Pike "The Practice of Programming" as something that steered me in a really good direction when I was first learning to write code.

I really wish they'd do a revised 2nd edition using Golang as the base for the book instead of C; but otherwise it still really holds up well

android521
2d ago
1 reply
I have read many books. If you can only read one book about how to program in your life , I would say that it is this book: A philosophy of software design: John Ousterhout. It is 10 times better than the next best book.
OrderlyTiamat
2d ago
2 replies
Why did you repeat this comment all over this post?
nottorp
2d ago
Their "AI agent" did it.
kartofflo
2d ago
Maybe the author
1313ed01
2d ago
3 replies
When the first version came out, around the time I got my first job, it felt like everyone around me had read this book, and for a long time we were throwing around quotes from this book. Sadly after a few years it felt like the only thing that really stuck in the larger community was "Don't Repeat Yourself", which wasn't really something that at the time stood out as much more important than many of the other "rules".

My personal favorite was always the one about "English is just a programming language", but when I read the 20th anniversary edition that one seemed like it had been toned down? I did not go back to find the original one to compare, but the way I remember it it was pretty hardcore about keeping text as text and using tools like for programming (use macros in text to avoid repeating yourself etc).

Overall the 20th anniversary did feel a bit less idealistic? I guess for a "pragmatic" book that makes sense, but I remember the original like it was making stronger arguments for or against things. I really liked the (anti-)IDE chapter, or the parts on the importance of learning how to use a good text editor well, for instance, but now they basically cut that out. Did give me the impression that they were trying to be down with the kids at times.

begueradj
2d ago
1 reply
That's because being strongly opinionated about anything nowadays is viewed down.
FrustratedMonky
2d ago
But was it actually changed? Or was it a memory of a strong opinion that upon re-read years later, wasn't that strong of an opinion?

I am curious if they did change that much, or it is just peoples memory and nostalgia playing into the impression.

tantalic
2d ago
1 reply
Twenty years ago, I was strongly anti IDE and pro text editor. In the last ~10 years or so text editors have gained features previously only found in IDEs and IDEs have improved their performance and brought in features from text editors. I would argue the distinction between text editors and IDEs at this point is academic.
globular-toast
2d ago
1 reply
The main difference is "IDEs" typically contain custom, ad hoc text editors in them. They don't allow you to build transferable skills that can be used to edit any text. People who use them will typically use some other editor to make documents, another one for their notes, and one per programming language.

I started using Emacs 15+ years ago because you can easily make it into an IDE, but it works for any text. Essentially it's like learning to use a kitchen knife vs buying a mincer, a grater, a food processor, a mandolin, and whatever other single-purpose tools they're peddling at the kitchen shop today.

Since then, the Emacs way has caught on. I see stuff like Atom and VSCode as just vastly inferior forms of Emacs. They can all be text editors or IDEs if you want them to be.

Suppafly
1d ago
>People who use them will typically use some other editor to make documents, another one for their notes, and one per programming language.

I'll never be convinced that that is a bad thing. And honestly, by the time you make emacs have the features that dedicated editors have, it's not emacs anymore anyway.

marcosdumay
2d ago
Well, cutting the IDE out may happen because IDEs improved.

AFAIK, all the hate from IDEs at the time came from the way Eclipse and the Microsoft ones work, and all the love came from the Borland ones. As Borland failed, the "correct" opinion became obvious, but it was actually only correct by accident and didn't reflect any inherent properties of the software.

software_writer
2d ago
1 reply
A classic book. I learn something new each time I read it.

Also, Dave Thomas, one of the authors, is looking for a job.

> So, I'm looking for a job!

> Internal or external consultant, devrel, training, team fixing, design, architecture. WFH or travel the world.

> So, if you know any company that has a Dave-shaped hole, please email me. Some more about me on my site. Links below.

> Many thanks.

> email: dave@pragdave.me

https://x.com/pragdave/status/1978142569272877078

huherto
2d ago
I know that there are many reasons for people to work after 65. I also know that sometimes life takes surprising turns. But it makes me nervous to see people so capable as Dave that are well known in our industry looking for a job. What is the hope of the rest of us ? I love software engineering but I still hope to be able to retire to work on my own projects.
adzm
2d ago
> Keep Knowledge in Plain Text

One of the smartest takeaways from all of this, which keeps getting proven over and over.

lvl155
2d ago
I don’t know why seasoned veterans praise these books and then implement some of the worst interview practices to test people on writing convoluted bs code for hours. Just doesn’t make sense.
kristianp
1d ago
Was it this book that introduced YAGNI? (You Ain't Gonna Need It). I feel like it was back around peak Rails hype in 2009 that that was bandied about a lot.
jjice
2d ago
It's a very solid broad programming book! I thought it was going to be too generic or over hyped, but it was solid. That said, I do find the most interesting software books to be about specifics, but that's nothing against this book.

Out of the classic broad books that get recommended all the time, this is one of the best IMO. I really don't like Clean Code (Martin's follow up, Clean Architecture is fantastic, though). Refactoring by Fowler is also a great generalist language and system book (but a specific topic).

hamdouni
2d ago
My first programming book was The ZX81 Basic. The best I ever read.
itpragmatik
2d ago
One of the best book on software as a craft - read it couple decades ago and still recommend it to anyone who wants to be good in this craft!
alkh
2d ago
I’m really glad I got it after stumbling across the original at my university library. It’s really nice reading it from time to time and getting inspired to become a better developer
arthurfirst
2d ago
Have the first edition and I had the PDF version before the print was released I'm pretty sure... it was a thing with those Ruby/Pragmatic books when they were 'in development'. Still have my K&R The C Programming Language from 97 with my notes in it.

34 more comments available on Hacker News

ID: 45948254Type: storyLast synced: 11/19/2025, 5:05:58 PM

Want the full context?

Jump to the original sources

Read the primary article or dive into the live Hacker News thread when you're ready.