Go to content Go to navigation Go to search

Clean Code

Posted in , Jan 23, 09:19 PM

This is a real craftsman type book for coding. It covers the vast number of design decisions that programmers make when building systems. I like the focus as failing to pay attention leads to bad names that torment the person having to perform maintenance later. There are plenty of examples to contrast good and bad code.

Given how specific the advice is, then it’s no surprise that I take issue with some of it. In a section called “Use Solution Domain Names” you are encouraged to use Computer Science terminology first and only resort to the problem domain if nothing springs to mind. I find that the improved communication with the Scientists from using their terms far outweighs easing talking to fellow software developers.

A particular emphasis I liked is the refactoring of real world code. It is hard taking over other people’s code but I try to see it as an opportunity. Too many programmers seem to adopt the attitude of write-once code. Certainly it can have value building from fresh to learn but so can pulling apart code and putting it back together better. It also allows you to improve the cleanliness of existing code without throwing the whole lot away!

It’s a good book with a back to basics attitude. The ordering and overall structure seems a bit erractic but I was happy with the snippet at a time. You will not agree with it all but there is a lot to learn about the construction of software one line, function, and class at a time.

Uncle Bob’s blog