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. It is used as a textbook in related university courses. 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. 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. 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. Some concepts were named or popularised in the book, such as code katas, small exercises to practice programming skills, 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. 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 The Pragmatic Programmer, Andrew Hunt and David Thomas, 1999, Addison Wesley, . The Pragmatic Programmer, 20th Anniversary Edition, David Thomas and Andrew Hunt, 2019, Addison Wesley, . References External links GOTO Book Club interview Computer programming books Series of books 1999 non-fiction books 2019 non-fiction books Addison-Wesley books Software engineering books Collaborative non-fiction books