Sefism is free for learners. We are here to help you grow, one step at a time.Join for free
Sefism.
Book · OtherAbout $45

The Pragmatic Programmer

A book by Dave Thomas and Andy Hunt about the craft of software development rather than any language: responsibility, avoiding duplication, orthogonality, tracer bullets, automation, testing, debugging and working in teams. The 2019 20th anniversary edition was substantially rewritten, with new material on security and concurrency. It suits developers a few years into their careers, when the language is no longer the hard part and habits start to matter most.

Get access
Edition

20th anniversary (2nd), 2019

Pragmatic Bookshelf · Sept 2026

Structure

10 chapters, 53 topics, 100 tips

Publisher listings · Sept 2026

Goodreads rating

4.33/5 (24,591 ratings)

Goodreads · Sept 2026

Format

Book

Topic

Other

Provider

Hunt and Thomas

Time needed

4 to 6 weeks

Level

Intermediate

Access

About $45

What the book covers

The 20th anniversary edition is organised into ten chapters, 53 short, self-contained topics and 100 highlighted tips, with exercises along the way. Themes include:

  • A pragmatic philosophy: owning your mistakes, fixing "broken windows" before code decays, and investing in your knowledge like a portfolio.
  • A pragmatic approach: DRY (do not repeat yourself, about knowledge, not just code), orthogonality, reversibility, tracer bullets and prototypes, and estimating.
  • Basic tools: plain text, the shell, your editor, version control, debugging and text manipulation.
  • Pragmatic paranoia, bend or break, and concurrency: design by contract, assertions, decoupling, handling events and transformations, and avoiding shared state.
  • While you are coding: refactoring, testing, property based testing, security basics and naming.
  • Before the project and pragmatic projects: requirements, working with users, and team habits.

The authors say about a third of the anniversary edition is new, and examples were updated from the dated tools of the 1999 original.

How it is rated

Goodreads shows an average of 4.33 out of 5 from about 24,600 ratings as of September 2026, very high for a programming book. It is one of the books most often recommended to developers after their first job.

How to read it

Not in one go. A few topics a week, each applied to your current work, is better than a fast read that produces agreement and no change. For each topic:

  • Pick one tip and try it for a week: automate a task you do twice, add assertions to a module, write a tracer bullet for a new feature.
  • Discuss a chapter with a colleague or study group; the ideas land better in conversation.
  • Revisit it every year or two. Different topics matter at different stages of a career.

Who gets the most from it

Developers two to five years in, who have written enough code to recognise the problems it describes. Students can read it too, but some advice about teams and requirements makes more sense after real projects. Senior engineers will know much of it, though many still find it a useful reset.

Where it falls short

Some advice is general by design, and readers wanting deep technical content on a specific topic will need other books. A few sections read as common sense to experienced developers; the value is in actually practising them.

Common questions

First edition or 20th anniversary edition? The anniversary edition. It is updated and a third of it is new.

Is it language specific? No. Examples use several languages, but the ideas apply to any.

Is it worth it for a student? Yes, but it becomes more valuable after an internship or first job.

Best for: developers two to five years in, when the language is no longer the hard part.

careercomputer sciencetesting

Ready to start?

Opens on Hunt and Thomas in a new tab.

Get access
Link broken or out of date?

Report a problem

With "The Pragmatic Programmer". Only Tauseef reads this.

Work with me

Stuck on something specific?

Writing only gets you so far. If you want an answer to your situation rather than the general case, book a session and we will work through it together. Sessions are free for approved Sefism members, and a few slots open each week.