The Passionate Programmer was published in 2009 and I’ve had it sitting in my bookshelf for more than six months. I asked myself; why didn’t I read this earlier? It’s a book for any developer who wants more from their career than to just sit at their desk, write code from nine to five and then go home. The underpinnings of this book is that you should treat your career as a business and you should build and market it just as seriously as you would with any other critical product.
Chad Fowler is a writer, musician, programmer, speaker, teacher, conference organizer and currently the CTO of 6Wunderkinder, the makers of Wunderlist.
If you’re like me and want to continue growing by learning new things every day – and ultimately excel in this profession – then you should read this book.
The book is divided into five parts, containing 53 short chapters. Each chapter covers a single theme and most of them have actionable advice for you at the end. I have personally done a few of them and I will do the rest when I’m back at work after my parental leave.
The first part, “Choosing Your Market”, explores what you should think about regarding the evolution in programming and the tradeoffs between specializing in a programming language or technology that is bleeding edge, mainstream or on its way out.
The second part, “Investing in Your Product”, talks about how to be a better programmer and how to grow your skills in perpetuity and what you need to do to stay relevant.
The third part, “Executing”, is about productivity and how that can impact your career and overall well-being.
The fourth part, “Marketing… Not Just for Suits”, ties nicely together with the work that John Sonmez does with his Simple Programmer brand. You need to be seen and you need to be able to communicate with people in an effective way.
The fifth part, “Maintaining Your Edge”, is about staying relevant and how you can avoid waking up one day realizing that your skills are no longer relevant.
The book is more than a collection of actionable tips. Chad gives us insight into his own career and shows us some of the insights he’s made in his previous career as a professional saxophone player and how they translate into advice for programmers. It all boils down to the question “What can I do to help me have a great career?”
I loved reading this book and if you want to have a great career as a programmer I urge you to read it as well. Even better would be if you read it and then took action from the tips. This book will join Sandi Metz’s Practical Object-Oriented Design in Ruby, a must for anyone who writes object-oriented code, on the list of books that I will re-read every year or two.