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.


Web Design, 7e (In Easy Steps)

Author: Sean McManus
Publisher: Easy Steps, 7th Ed, 2023
Pages: 228
ISBN: 978-1840789850
Print: 1840789859
Kindle: B0C24YV788
Rating: 4
Reviewed by: Sue Gee
Web design without a designer - is it possible?

Grokking Machine Learning

Author: Luis G. Serrano
Publisher: Manning
Date: December 2021
Pages: 512
ISBN: 978-1617295911
Print: 1617295914
Kindle: B09LK7KBSL
Audience: Python developers interested in machine learning
Rating: 5
Reviewer: Mike James
Another book on machine learning - surely we have enough by now?

More Reviews

Last Updated ( Monday, 05 September 2022 )