The Pragmatic Programmer

From Wikipedia, the free encyclopedia
The Pragmatic Programmer
The pragmatic programmer.jpg
  • Andrew Hunt
  • David Thomas
CountryUnited States
SubjectsEducation, computer programming
Published1999 by Addison-Wesley

The Pragmatic Programmer: From Journeyman to Master is a book about computer programming and software engineering, written by Andrew Hunt and David Thomas and published in October 1999.[1][2][3] It is used as a textbook in related university courses.[4] It was the first in a series of books under the label The Pragmatic Bookshelf. A second edition, The Pragmatic Programmer: Your Journey to Mastery was released in 2019 for the book's 20th anniversary, with major revisions and new material reflecting changes in the industry over the last twenty years.[clarification needed]

The book does not present a systematic theory, but rather a collection of tips to improve the development process in a pragmatic way. The main qualities of what the authors refer to as a pragmatic programmer are being an early adopter, to have fast adaptation, inquisitiveness and critical thinking, realism, and being a jack-of-all-trades.[5]

The book uses analogies and short stories to present development methodologies and caveats, for example the broken windows theory, the story of the stone soup, or the boiling frog.[6] Some concepts were named or popularised in the book, such as code katas, small exercises to practice programming skills,[7] DRY (or Don't Repeat Yourself) and rubber duck debugging, a method of debugging whose name is a reference to a story in the book.[8]

Andy Hunt and David Thomas gave a GOTO Book Club interview celebrating the 20th anniversary release of the book, covering their journey to writing the book, how the content has evolved since the first release, and what's remained unchanged in the last two decades.

Publication history[edit]

  • The Pragmatic Programmer, Andrew Hunt and David Thomas, 1999, Addison Wesley, ISBN 0-201-61622-X.
  • The Pragmatic Programmer, 20th Anniversary Edition, David Thomas and Andrew Hunt, 2019, Addison Wesley, ISBN 978-0135957059.


  1. ^ "8 Most Influential Books on Programming of All Time". 11 January 2016.
  2. ^ "Top 40 Software Engineering Books".
  3. ^ "12 Most Influential Books Every Software Engineer Needs to Read". 16 March 2015.
  4. ^ "CSE 331 17sp Software Design & Implementation: Information and Syllabus".
  5. ^ Hunt and Thomas, pp. xviii–xix.
  6. ^ Hunt and Thomas, pp. 7-9.
  7. ^ Steve Fenton (2014). Pro TypeScript: Application-Scale JavaScript Development. Apress. p. 209. ISBN 978-1430267904.
  8. ^ Pete Goodliffe (2014). Becoming a Better Programmer: A Handbook for People Who Care About Code. O'Reilly Media. p. 82. ISBN 978-1491905586.

External links[edit]