Article/Lecture Recommendation: Grady Booch’s “The History of Software Engineering”

I'm a member of the IEEE, and I like to read the monthly Edge magazine which is put out by the IEEE Computer Society. This month, the feature article was "The History of Software Engineering" by Grady Booch. Grady walks us through a brief overview of the history of computing. Grady's account spans from the …

Programmers: Let’s Study Source Code Classics

Contemporary programmers are lucky: we live in a world where historical and influential program source code is available for us to review. However, most programmers only learn and study the programs they have worked on themselves. We rarely take the time to study historical works, and programming courses don’t typically spend any time on the …

Want to Start Consulting? Here Are My Musings and Recommended Resources

I started this website as a way to share the notes and lessons I've learned over the years. I've been consulting for almost two years now, and I wanted to share some resources that helped me start and grow my business. If you have any questions or suggestions for additional resources, send me an email! …

Recommended Reading: The Architecture of Open Source Applications

As I'm progressing in my career, I am increasingly responsible for architecting libraries and systems. I've acquired some quality architecture ideas from working on a wide variety software projects (though most of those ideas are firmly in the "don't do it that way" camp). I'm always trying to learn more about good software architecture, though …

Debugging: 9 Indispensable Rules

The official title of this book is quite a mouthful: Debugging: The 9 Indispensable Rules for Finding Even the Most Elusive Software and Hardware Problems, by David J. Agans. Agans distills debugging techniques down to nine essential rules and includes engineering war stories that demonstrate these principles. This book helped me crystallize my debugging strategy and provided the …