The Pragmatic Programmer: Your Journey to Mastery, 20th Anniversary Edition

Today I finished The Pragmatic Programmer: your journey to mastery, 20th Anniversary Edition (2nd Edition). This is one of the 2 books that I have been procrastinating for two decades to read. The other book is The Mythical Man-Month: Essays on Software Engineering. When pragmatic programmer came out 20 years back, it was a phenomenon on its own! Numerous books, articles, and ideas have been generated out of it. This new 20th-century edition that just came out now will attract similar attention from the industry.


Here are some of the useful ideas outlined in this new edition.

  1. Try to be aware of the bigger picture –
    • think beyond the immediate problem
    • place the problem in its larger context
  2. Take responsibility for everything you do – 
    • don’t allow projects to fail through neglect
    • don’t be afraid to admit ignorance or error
    • be responsible for yourself, your career, your project, your day-to-day work
  3. Provide options instead of excuses –
    • analyze the issue
    • find alternative options or solutions
    • explain what can be done to resolve it
  4. Address software entropy (disorder) –
    • broken window theory
    • fix issues when it is discovered
  5. Develop well, based on what you know for sure and how to do it
  6. Develop good enough software –
    • involve your users in the trade-off
    • don’t’ develop ignoring user requirements
    • make quality a requirements issue
    • no code is perfect; so don’t spoil it by over-engineering and over-refinement
  7. Build your portfolio –
    • invest regularly, update knowledge
    • diversify your technical skills
    • experiment with different environments
    • manage risk: don’t put all your technical eggs in one basket
    • learn an emerging technology before it becomes popular
    • review and rebalance your skillset to stay current
    • learn a new programming language every year
    • read a technical book every quarter
    • take classes
  8. Communicate well –
    • know what you want to say
    • know your audience
    • choose your moment
    • choose a style and make it look good
    • involve your audience, be a listener, get back to people


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.