Cover of "The Passionate Programmer"

“This book is about finding fulfillment and happiness in your career” is the first line of the introduction to The Passionate Programmer, Chad Fowler’s book for software developers. If that goal wasn’t bold enough, the first line of the following paragraph is “The book is also about cultivating the desire to live a remarkable life.”

The Passionate Programmer is actually the second edition of a book that went by another title: My Job Went to India: 52 Ways to Save Your Job. When that book was released back in 2005, the threat of having one’s job outsourced to lower-wage countries was the topic of many articles and conversations. My Job Went to India provided a collection of strategies to take control of one’s high-tech career, build a plan to keep skills up to date, make the right choices, stay relevant and not be the expendable sort whose job would be outsourced.

The bogeyman may have changed from outsourcing to the economy, but the concerns that developers have about their careers remain the same. Chad saw the need for a new edition of his book, and with the new version came a new tone. He gave it a more positive-sounding (and less alarmist) name and changed its focus from surviving to thriving.

The Passionate Programmer is split into five chapters, each covering a different aspect of a developer’s career:

  • Choosing Your Market: “Which technologies should we invest in? Which domain should we develop expertise in? Should we go broad or deep with our knowledge?”
  • Investing in Your Product: In this case, your product is yourself. How do you become better at what you do?
  • Executing: Tactics and habits for getting things done.
  • Marketing: Not Just for Suits: As the title implies, marketing skills aren’t just for the business people – developers need to market themselves.
  • Maintaining Your Edge: How stay relevant and not be a one-hit wonder.

The chapters are themselves divided into sections, each one covering a specific approach or bit of advice. This arrangement lets you treat the book as if it were an agile project, picking and choosing a section at a time to read and put into practice instead of doing “big reading up front” from start to finish. It also makes the book easier to revisit when the need arises.

In the end, the message of the book is to find and follow your passion, and do so with intention. In the final section of the book, appropriately titled Have Fun, Chad closes with:

Ultimately, the most important thing I’ve learned over the journey that my career in software development has been is that it’s not what you do for a living or what you have that’s important. It’s how you choose to accept these things. It’s internal. Satisfaction, like our career choices, is something that should be sought after and decided upon with intention.

The Passionate Programmer is an engaging, fascinating book, and it will have a longer shelf life than most of the technical books in your library. I know many people who own a copy and have recommended it to their friends, and the Amazon and Dr. Dobbs reviews have been nothing short of glowing. No matter what platforms, programming languages or technologies you use, The Passionate Programmer should be in your technical library.

Book Details

The Passionate Programmer by Chad Fowler

  • Publisher: Pragmatic Programmers
  • Published: May 2009
  • ISBN: 978-1-93435-634-0

The book is available directly from the publisher in the following formats:

  • Paperback book: USD$23.95
  • Ebook (DRM-free PDF, epub and mobi formats): USD$15.00
  • Paperback/ebook bundle: USD$29.95

You can also order the book from Chapters/Indigo, Amazon.ca and Amazon.com.

(This article also appears in my personal technical blog, Global Nerdy.)