Book Review: Tidy Up First? | Heise Online

0
32
Book Review: Tidy Up First? | Heise Online


Kent Beck
Tidy up first?
Mini refactoring for better software design
O’Reilly, March 2024
124 pages, from 26.90 euros (print/digital)
ISBN: 978-3-96009-244-5

Advertisement


Kent Beck is known to most developers not only through the Agile Manifesto and his books on Extreme Programming and Test-Driven Development. Through his work, he has long since reached the hall of fame of software development.




Ralf D. Müller is mainly concerned with various aspects of software architecture and software design. He specializes in architectural documentation and is a proponent of the Arc42 and Docs-as-Code approaches.

Castle CK75 Mechanical Keyboard from SicakebCastle CK75 Mechanical Keyboard from Sicakeb

I have read many books without reading the introduction and foreword, as these usually do not contribute to the content. Here things are different, as the introduction contains two important pieces of information.

On the one hand, “Clean up first?” about the first book in a series of as yet unwritten books on the subject of software design. This explains the length of the book, which is 124 pages, and why after reading it the hunger for knowledge has not yet been fully satisfied. Like a good television series, at the end I wonder if I should have waited for the other parts and then finished them all in one go.



(Image: dpunkt.verlag (O’Reilly))

On the other hand, Beck defines software design as “an exercise in interpersonal relationships”. An important aspect, because often I have optimized my code not with readability as the top quality criterion, but by focusing on the fine art of my skill. In line with the non-serious motto that the code was hard to write, so it should be hard to read, code prefers to display the cognitive abilities of the author and forgets that it actually represents the human-machine interface from the developer’s point of view. Accordingly, Beck’s definition promotes collaborative work on code through good readability.

The book is divided into three parts, the first two of which are devoted to practice and the last to theory. The practical part about cleaning work and how to use it correctly is written in the relaxed style of a blog post and conveys ideas without going too deep. The practical parts can therefore be grasped quickly.

In the first part, Beck describes in 15 chapters various ways to clean up code to make it more readable. Each approach is briefly illustrated using pseudocode. The approaches seem like instructions from the Boy Scout rule that you should leave each place or each code snippet in a better state than you found it.

For experienced developers, most of the cleanup ideas will seem mundane (e.g. “write explanatory comments”). But it’s useful to see them all written down on paper in a structured way.

The second part is about how to make the best use of this cleanup. When is it appropriate to clean up? Do I make my changes and clean up only after everything is in place? Or do I clean things up first so that it will be easier for me to apply my changes?

The third part is where things get the most exciting as it is about the theory behind tidiness and therefore software design. Beck explains his theory in twelve short and concise subchapters. He defines the concept of software design as “beneficial relationships between elements”. While I missed some of the more substantial material at the beginning of the book, at this point the lessons become more detailed and encourage you to think.

To make the value of software design more tangible, Beck makes an analogy between finance and the value of options. This comparison is certainly useful for those who know the world of finance, but it can be confusing for others. Cleaning up the code to improve the software design and thus keep more options open for features in the future is a balancing act. How much time do I want to invest now for a change that is easy to make later, but which may never come? The third part of the book answers this and similar questions exactly.

New book “Clean Up First?” by Kent Beck Interesting and makes you curious about further, suggested parts of the series on the topic of software design. The translation was successful. At the beginning, I looked at the original from time to time and found that the writing style was sometimes unusual, even in English. In terms of content, it provides interesting perspectives on refactoring code, especially to simplify the work on code, not just refactoring.

(Editor’s note: dpunkt.verlag, as the publisher of the German-language O’Reilly book, is, like iX, part of the Heise Group)


(Map)

Logitech introduces the G515, a low-profile keyboard for gamersLogitech introduces the G515, a low-profile keyboard for gamers

LEAVE A REPLY

Please enter your comment!
Please enter your name here