The Pragmatic Programmer: From Journeyman to Master

The Pragmatic Programmer: From Journeyman to Master

The Pragmatic Programmer: From Journeyman to Master

  • Title: The Pragmatic Programmer: From Journeyman to Master
  • By: Andrew Hunt and David Thomas
  • ISBN: 020161622X / 9780201616224
  • Format: eBook, 352 pp
  • Published: Oct 20, 1999



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—taking a requirement and producing working, maintainable code that delights its users. It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible, easy to adapt, and reuse.

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.

Written as a series of self-contained sections and filled with entertaining anecdotes, thoughtful examples, and interesting analogies, The Pragmatic Programmer illustrates the best practices and major pitfalls of many different aspects of software development. Whether you’re a new coder, an experienced programmer, or a manager responsible for software projects, use these lessons daily, and you’ll quickly see improvements in personal productivity, accuracy, and job satisfaction. You’ll learn skills and develop habits and attitudes that form the foundation for long-term success in your career. You’ll become a Pragmatic Programmer.

Table of Contents

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
A. Resources
Professional Societies
Building a Library
Internet Resources
B. Answers to Exercises

Author Bios

Andy Hunt is an avid woodworker and musician, but, curiously, he is more in demand as a consultant. He has worked in telecommunications, banking, financial services, and utilities, as well as in more exotic fields, such as medical imaging, graphic arts, and Internet services. Andy specializes in blending tried-and-true techniques with leading-edge technologies, creating novel–but practical–solutions. Andy owns his own consulting business in Raleigh, North Carolina.

Dave Thomas likes to fly single-engine airplanes and pays for his habit by finding elegant solutions to difficult problems, consulting in areas as diverse as aerospace, banking, financial services, telecommunications, travel and transport, and the Internet. Before moving to the United States in 1994, Dave founded an ISO9001-certified English software company that delivered sophisticated, custom software projects throughout the world. Dave is now an independent consultant based in Dallas, Texas.

Backcover Copy

What others in the trenches say about The Pragmatic Programmer

“The cool thing about this book is that it’s great for keeping the programming process fresh. The book helps you to continue to grow and clearly comes from people who have been there.”

Kent Beck, author of Extreme Programming Explained: Embrace Change

“I found this book to be a great mix of solid advice and wonderful analogies!”

Martin Fowler, author of Refactoring and UML Distilled

“I would buy a copy, read it twice, then tell all my colleagues to run out and grab a copy. This is a book I would never loan because I would worry about it being lost.”

Kevin Ruland, Management Science, MSG-Logistics

“The wisdom and practical experience of the authors is obvious. The topics presented are relevant and useful…. By far its greatest strength for me has been the outstanding analogies—tracer bullets, broken windows, and the fabulous helicopter-based explanation of the need for orthogonality, especially in a crisis situation. I have little doubt that this book will eventually become an excellent source of useful information for journeymen programmers and expert mentors alike.”

John Lakos, author of Large-Scale C++ Software Design

“This is the sort of book I will buy a dozen copies of when it comes out so I can give it to my clients.”

Eric Vought, Software Engineer

“Most modern books on software development fail to cover the basics of what makes a great software developer, instead spending their time on syntax or technology where in reality the greatest leverage possible for any software team is in having talented developers who really know their craft well. An excellent book.”

Pete McBreen, Independent Consultant

“Since reading this book, I have implemented many of the practical suggestions and tips it contains. Across the board, they have saved my company time and money while helping me get my job done quicker! This should be a desktop reference for everyone who works with code for a living.”

Jared Richardson, Senior Software Developer, iRenaissance, Inc.

“I would like to see this issued to every new employee at my company….”

Chris Cleeland, Senior Software Engineer, Object Computing, Inc.

“If I’m putting together a project, it’s the authors of this book that I want. . . . And failing that I’d settle for people who’ve read their book.”

Ward Cunningham


To download an eBook version of The Pragmatic Programmer: From Journeyman to Master in CHM format for free please click the download link provided below.


Note: Source Code also included.

Like this book! You may buy a paperback edition of The Pragmatic Programmer: From Journeyman to Master from Amazon to enrich your library collection.

Your rating:
1 Star2 Stars3 Stars4 Stars5 Stars (3 votes, average: 5.00 out of 5)

Loading ... Loading …



  1. Random User says:

    Mediafire link is dead, please provide new one.

Speak Your Mind