I’m a strong believer that there’s more to writing code than just making it functionally correct, and I’ve witnessed far too often how functionally correct comes back to bite. On the other hand, there’s much to be said for code that is skillfully designed and more accurately expresses the authors intent.

Aside from the code itself, there are other reasons for wishing to write great code. On the top of that list is taking pride in one’s work. Attention to detail is critical and trying to improve skills are what makes a professional a craftsman.

For these reasons, I thought to mention a book that many developers may find compelling. If you passionately care about code craftsmanship, then you may have an interest in Clean Code: A Handbook of Agile Software Craftsmanship, by Robert C. Martin. I believe the advice presented to be based on solid experience and Robert also happens to be one of the leaders in this next point.

The Software Craftsmanship Manifesto. In the current day of the mainstream software industry, there is a little known movement of professional software developers practicing what is now referred to as Software Craftsmanship.

From Wikipedia

Software craftsmanship is an approach to software development that emphasizes the coding skills of the software developers themselves. It is a response by software developers to the perceived ills of the mainstream software industry, including the prioritization of financial concerns over developer accountability. 

I hope this movement continues to grow.

Another book often mentioned when compared to the above, as it relates to the concepts of software craftsmanship, is The Pragmatic Programmer by Andrew Hunt and David Thomas. It may be dated, but still quite relevent, especially for those coming into the field. This book is a favorite and considered essential to be on the bookshelves of developers wanting to improve their practices of clean code.

If you’re a developer, or aspiring to be, and have an interest in Software Craftsmanship, I hope you push these two books onto your queue.

Would you like to be notified of future posts?

Gary is the principal software developer at NeuroQuest Software. An accomplished developer with over 26 years of experience largely dedicated to Open Source, his former position was spent working with NASA for nearly 15 years.