The Pragmatic Programmer
   HOME

TheInfoList



OR:

''The Pragmatic Programmer: From Journeyman to Master'' is a book about
computer programming Computer programming or coding is the composition of sequences of instructions, called computer program, programs, that computers can follow to perform tasks. It involves designing and implementing algorithms, step-by-step specifications of proc ...
and
software engineering Software engineering is a branch of both computer science and engineering focused on designing, developing, testing, and maintaining Application software, software applications. It involves applying engineering design process, engineering principl ...
, 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 which reflects new technology and other changes in the software engineering 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 Stone Soup is a European Folklore, folk story in which hungry strangers convince the people of a town to each share a small amount of their food in order to make a meal. In varying traditions, the stone has been replaced with other common inedib ...
, or the
boiling frog The boiling frog is an apologue describing a frog being slowly death by boiling, boiled alive. The premise is that if a frog is put suddenly into boiling water, it will jump out, but if the frog is put in tepid water which is then brought to a bo ...
. Some concepts were named or popularized in the book, such as DRY (or ''
don't repeat yourself "Don't repeat yourself" (DRY) is a principle of software development aimed at reducing repetition of information which is likely to change, replacing it with abstractions that are less likely to change, or using data normalization which avoids r ...
'') and
rubber duck debugging In software engineering, rubber duck debugging (or rubberducking) is a method of debugging code by articulating a problem in spoken or written natural language. The name is a reference to a story in the book ''The Pragmatic Programmer'' in which ...
, a method of debugging whose name is a reference to a story in the book.


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

* Computer programming books Book series 1999 non-fiction books Addison-Wesley books Software engineering books Collaborative non-fiction books {{compu-book-stub