Clean Craftsmanship

Author: Robert C. Martin
Publisher: Addison-Wesley
Date: November 2021
Pages: 416
ISBN: 978-0136915713
Print: 013691571X
Kindle:B095C16LSW
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.

Banner

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.

Banner


The Art of WebAssembly

Author: Rick Battagline
Publisher: No Starch
Date: May 2021
Pages: 304
ISBN: 978-1718501447
Print: 1718501447
Kindle: B08TSYXJTS
Audience: WebAssembly developers
Rating: 5
Reviewer: Ian Elliot
WebAssembly is the coming thing - or so we are told.



Go Programming Language For Dummies

Author: Wei-Meng Lee
Publisher: For Dummies
Date: April 2021
Pages: 336
ISBN: 978-1119786191
Print: 1119786193
Kindle: B0921HHN48
Audience: People wanting to learn Go
Rating: 4
Reviewer: Mike James
Can a dummy master Go?


More Reviews

Last Updated ( Monday, 05 September 2022 )