Clean Craftsmanship

Author: Robert C. Martin
Publisher: Addison-Wesley
Date: November 2021
Pages: 416
ISBN: 978-0136915713
Print: 013691571X
Audience: General
Rating: 4
Reviewer: Mike James
Well, I'm a clean craftsman - are you?

Robert C. Martin, usually known as Uncle Bob, has written at least 15 books and the uncharitable might say the same book 15 times. In case you have missed out on the cult of Bob, all I really need to tell you is that he is credited with inventing SOLID and being a promoter of Test Driven Design and Agile. However these aren't his real claim to fame - being an inspirational guru probably is. Not everyone agrees with his exact prescriptions for better code but you can't help like the intent - better code.


Books by Uncle Bob, how did he come by that moniker which he claims to dislike, are always very readable and very persuasive. There is an element of the suspension of critical faculties brought about by good humoured story telling. At the end of a comparison you are generally in agreement. It is usually only much later you start to think about the validity of the case. In this book I was taken by the comparison between double entry book-keeping, yes double entry book-keeping and test driven design. The idea is that double entry book-keeping made it possible to see what the inputs and the outputs were and so for the first time made running a business possible. So too TDD makes clean software possible for the first time. As a long time anti-TDD programmer, although I'm obviously not anti-tests per se, I found the argument compelling - yes I was convinced. Then I put the book down and all the counter arguments came flooding back - well at a trickle at least.

I'm not asking you to agree with me I'm just illustrating a common occurrence while reading the book - be on your guard. I think what I'm saying is that Uncle Bob is an avuncular salesman capable of selling whatever is going. I think he believes in what he is saying, but I also think he could change his mind and sell the new idea just as effectively. OK, I can't prove the last part, it's just a feeling I get as I read.

Now at this point you are probably thinking that this is all a very bad thing. It isn't. This particular book is motivational. It makes you want to get out of your seat and... or is it get into your seat as we are programming, .... do better. Uncle Bob's books aren't academic works on methodology but they sure are a pick-me-up.


This particular volume covers the psychological aspects that affect how clean the code is that a programmer produces. I quote: 

  • Moving towards the "north star" of true software craftsmanship: the state of knowing how to program well
  • Practical, specific guidance for applying five core disciplines: test-driven development, refactoring, simple design,
  • collaborative programming, and acceptance tests
  • How developers and teams can promote productivity, quality, and courage
  • The true meaning of integrity and teamwork among programmers, and ten specific commitments every software professional should make

Overall there is less technical focus in this book than the others which makes it even more "motivational". The book is divided into three parts:

I Craftsmanship - a look at what you are aspiring too and how TDD can help change your life through refactoring.

II The Standards - business aspirations such as how low we are prepared to reduce quality just to ship the software.

III Ethics - how to work with others including source control and teamwork

If you have read any other book of this sort you probably don't need to read this one, but it is fun - but don't take it hook, line and sinker -- put up a fight before Uncle Bob reels you in.

To keep up with our coverage of books for programmers, follow @bookwatchiprog on Twitter or subscribe to I Programmer's Books RSS feed for each day's new addition to Book Watch and for new reviews.


Professional Scrum Development with Azure DevOps

Author: Richard Hundhausen
Publisher: Microsoft Press
Pages: 432
ISBN: 978-0136789239
Print: 0136789234
Kindle: B08F5HCNJ7
Audience: Developers interested in Scrum
Rating: 5
Reviewer: Kay Ewbank

This is a book designed for teams using Scrum and Azure DevOps together for developing complex product [ ... ]

Oracle PL/SQL By Example, 6th Ed

Author: Elena Rakhimov
Publisher: Oracle Press
Pages: 480
ISBN: 978-0138062835
Print: 0138062838
Audience: Developers interested in Oracle PL/SQL
Rating: 4
Reviewer: Kay Ewbank

This is the sixth edition of a well established title that has been updated for the latest version of PL/SQL (21c).

More Reviews

Last Updated ( Monday, 05 September 2022 )