There are many resources available for software developers to develop their craft. On this page I list some of my personal favorites that I find myself recommending time and time again.

To leave feedback about these resources, please visit my Feedback page.

Software Development Templates

Templates are useful as checklists to ensure that all relevant concerns are covered. For a great source of templates covering all aspects of software development check out Klariti's software development templates.

Book Recommendations

Books are a valuable resource for learning and growing. This section lists my personal favorites - those books, out of the many I have read, that I classify as must-reads.

Also check out my remarkable books series to see my reviews of other highly inspiring and thought-provoking books.

For All Professionals

Personal Development for Smart People by Steve Pavlina presents an universal framework for personal development based on seven principles: Truth, Love, Power, Oneness, Authority, Courage, and Intelligence. He shows how to apply these principles to grow in all aspects of your life. Check out my detailed review of this book.
Getting Things Done : The Art Of Stress-Free Productivity by David Allen presents a brilliant organizational system for tracking and completing the tasks you need to accomplish. Applicable to both work and at home, this book is a must read for everyone. I've personally implemented the system described in this book: see my article on Getting Things Done for details.
Core Performance Essentials by Mark Verstegen and Pete Williams is a fitness and nutrition book that addresses many components of a healthy lifestyle including regular exercise, a healthy diet, proper rest, and more. Since good health is essential for all professionals, this topic is relevant for everyone.
I am most impressed with the exercise program presented in the book. It really maximizes the benefits you obtain for the time you spend. In only 30 minute workouts, 3 times a week, the program provides a full-body workout, including muscles and functions often neglected by other programs. Even better, the program can be done at home with minimal equipment and space needed. I recommend this book to everyone, but especially to those who don't have a regular exercise program and feel they don't have the time.

Software Development

The Pragmatic Programmer: From Journeyman to Master by Andrew Hunt and David Thomas is aimed at making the reader a more effective and productive software developer. Containing 70 tips for programmers and many stories and analogies, this book covers all aspects of the role of a software developer. Of particular note is that this book is the origin of the DRY principle (tip #11: Don't Repeat Yourself). This book is definitely a must-read for all developers.
Agile Software Development: Principles, Patterns, and Practices by Robert C. Martin covers object-oriented design principles, design patterns and agile methods of development in a unified manner, showing the importance and relevance of each topic in the context of several case studies. As a bonus, one appendix contains the classic article "The Source Code is the Design." Every developer using object-oriented languages such as Java or C# should be familiar with the principles and patterns covered in this book. While a good number of the patterns are taken from the famous book Design Patterns: Elements of Reusable Object-Oriented Software, I have not seen any other books that mention the OO design principles covered in this book.
Patterns of Enterprise Application Architecture by Martin Fowler is a must-read for all developers of enterprise software. Many essential enterprise concepts and patterns are covered such as object-relational mapping, ACID transactions, optimistic locking, and model view controller.


Rapid Development : Taming Wild Software Schedules by Steve McConnell is full of useful information, statistics and stories regarding all aspects of software project management. The book is a little dated but I still find myself coming back to it time and time again. I've referenced the book many times in the articles I've written on this website.
Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency by Tom Demarco is a great book. While it's focus is on the dangers of working too hard, it actually makes a number of very interesting and thought-provoking points. I've written two articles inspired by this book: Working Smarter, Not Harder and Overtime Considered Harmful.