Straight from the programming trenches, The Pragmatic Programmer: From Journeyman to Master cuts through the increasing specialization and technicalities of modern software development to examine the core process—what do you do, as an individual and as a team, if you want to create software that’s easy to work with and good for your users.

This classic title is regularly featured on software development “Top Ten” lists, and is issued by many corporations to new hires.

We wrote this book before we created our publishing business, and we do not publish it. The Pragmatic Programmer is published by Addison Wesley, and may not contain the same ebook features or format the same as our Pragmatic Bookshelf books. Paperbacks are available wherever old-fashioned paperback books are sold, and the ebook is available here—all available ebook formats for one price, with no restrictive DRM.

For more on The Pragmatic Programmer have a look at the Pragmatic Programmer Resources page.

Buy Now

Select a DRM-free Format:

In Stock
Buy the eBook and get these DRM-free formats delivered immediately:
  • epub (for iPhone/iPad, Android, eReaders)
  • mobi (for Kindle)
  • PDF
We can automatically send them to your Kindle or Dropbox, and for a social reading experience we can link the book to your Readmill account. (You'll need to log in to enable these options.)
 

About this Book

  • 320 pages
  • Published:
  • ISBN: 978-0-2016-1622-4

Read this book, and you’ll learn how to:

  • Fight software rot.
  • Catalyze change.
  • Avoid the trap of duplicating knowledge.
  • Write flexible, dynamic and adaptable code.
  • Harness the power of basic tools.
  • Avoid programming by coincidence.
  • Bullet-proof your code with contracts, assertions and exceptions.
  • Capture real requirements.
  • Keep formal tools in their place.
  • Test ruthlessly and effectively.
  • Delight your users.
  • Build teams of pragmatic programmers.
  • Take responsibility for your work and career.
  • Make your developments more precise with automation.

Contents and Extracts

The Pragmatic Programmer is written as 46 small sections, each section ranging from two to ten pages long. Associated with most sections are a small set of exercises (with answers) and possibly one or two challenges:

For excerpts and more, head on over to the Pragmatic Programmer Resources page.

  • FOREWORD
  • PREFACE
  • 1. A PRAGMATIC PHILOSOPHY
    • 1. The Cat Ate My Source Code
    • 2. Software Entropy
    • 3. Stone Soup and Boiled Frogs
    • 4. Good-Enough Software
    • 5. Your Knowledge Portfolio
    • 6. Communicate!
  • 2. A PRAGMATIC APPROACH
    • 7. The Evils of Duplication
    • 8. Orthogonality
    • 9. Reversibility
    • 10. Tracer Bullets
    • 11. Prototypes and Post-it Notes
    • 12. Domain Languages
    • 13. Estimating
  • 3. THE BASIC TOOLS
    • 14. The Power of Plain Text
    • 15. Shell Games
    • 16. Power Editing
    • 17. Source Code Control
    • 18. Debugging
    • 19. Text Manipulation
    • 20. Code Generators
  • 4. PRAGMATIC PARANOIA
    • 21. Design by Contract
    • 22. Dead Programs Tell No Lies
    • 23. Assertive Programming
    • 24. When to Use Exceptions
    • 25. How to Balance Resources
  • 5. BEND, OR BREAK
    • 26. Decoupling and the Law of Demeter
    • 27. Metaprogramming
    • 28. Temporal Coupling
    • 29. It’s Just a View
    • 30. Blackboards
  • 6. WHILE YOU ARE CODING
    • 31. Programming by Coincidence
    • 32. Algorithm Speed
    • 33. Refactoring
    • 34. Code That’s Easy to Test
    • 35. Evil Wizards
  • 7. BEFORE THE PROJECT
    • 36. The Requirements Pit
    • 37. Solving Impossible Puzzles
    • 38. Not Until You’re Ready
    • 39. The Specification Trap
    • 40. Circles and Arrows
  • 8. PRAGMATIC PROJECTS
    • 41. Pragmatic Teams
    • 42. Ubiquitous Automation
    • 43. Ruthless Testing
    • 44. It’s All Writing
    • 45. Great Expectations
    • 46. Pride and Prejudice
  • Appendices
    • A RESOURCES
    • B ANSWERS TO EXERCISES
    • INDEX

About the Author

Andy and Dave run the Pragmatic Bookshelf. Before that, we wrote a whole bunch of software, and worked with teams to help them write even more software.

One day we hope to get it right.

Comments and Reviews

  • The Pragmatic Programmer is more than useful, it’s inspiring.

    —Andy King WebReference
  • The BEST book on the practice of programming that I have ever read (and after 20+ years, that’s a lot of books) is The Pragmatic Programmer. Buy this book—it will be the best investment in your education and career you will make this year. The authors, Andrew Hunt and David Thomas, have done their time in the trenches, and it shows. Over the course of the years, I have learned many of the lessons they teach, but I would never have been able to express those lessons as clearly and eloquently as they have in this book.

    —W. Craig Trader Software Architect