Designing Data-Intensive Applications versus The Pragmatic Programmer.

Both show up on every "best" list. They're not competitors. They're a sequence. Here's which one to read first, and when.

Reviewed by Ashish Sheth · Updated June 2026
Option A
Designing Data-Intensive Applications
Designing Data-Intensive Applications
Martin Kleppmann, Chris Riccomini · 2026
READ FULL REVIEW →
Option B
The Pragmatic Programmer
The Pragmatic Programmer
David Thomas, Andrew Hunt · 2019
READ FULL REVIEW →
Author
Martin Kleppmann, Chris Riccomini
David Thomas, Andrew Hunt
Pages
720
352
Published
2026
2019
Publisher
O'Reilly Media
Addison-Wesley Professional
Level
intermediate to advanced
beginner to intermediate
Amazon Rating
4.7/5 (312)
4.7/5 (4,823)
Goodreads Rating
4.55/5 (480)
4.33/5 (24,500)
Designing Data-Intensive Applications
Strengths
+ Best-in-class explanations of distributed systems fundamentals
+ Vendor-neutral: teaches principles, not specific tools
+ Excellent diagrams that make consensus and replication finally click
+ 2nd edition refreshes every chapter and adds AI/ML data systems coverage
Caveats
Dense: not a weekend read, expect 3-4 months at one chapter per week
Light on hands-on code; pair with a database internals book for implementation depth
Some readers wish the new edition went deeper on cloud-native specifics
The Pragmatic Programmer
Strengths
+ Timeless principles that survived 20 years of churn in tools and languages
+ Short, self-contained tips you can dip into without reading cover to cover
+ 20th anniversary edition refreshes outdated examples while keeping the spine intact
+ Excellent for self-taught engineers filling in unstated industry expectations
Caveats
Some chapters read as opinionated essays rather than rigorous arguments
Senior engineers may find half the tips already internalized
A few examples still feel rooted in the 1999 worldview despite the refresh
The verdict
Read The Pragmatic Programmer first to build foundations, then move to Designing Data-Intensive Applications for advanced concepts.
Designing Data-Intensive Applications
Check Price on Amazon →
The Pragmatic Programmer
Check Price on Amazon →
Frequently asked
Which is better, Designing Data-Intensive Applications or The Pragmatic Programmer?
Read The Pragmatic Programmer first to build foundations, then move to Designing Data-Intensive Applications for advanced concepts.
Is the 2nd edition of Designing Data-Intensive Applications worth buying if I already own the first?
If you read the first edition cover to cover already, the upgrade is incremental: every chapter is refreshed and there's new coverage of AI/ML data systems, cloud-native architectures, and modern streaming. If you skimmed the first or read it years ago, the 2nd edition is the better starting point.
Should I read the original or the 20th Anniversary Edition of The Pragmatic Programmer?
Read the 20th Anniversary Edition. It's the same spine of ideas but with refreshed examples and several new sections (concurrency, agility, ethics). The original is a historical curio at this point.