The Clean Coder: A Code of Conduct for Professional Programmers

Aleksandr Shitik
Aleksandr Shitik

I write my own posts and books, and review movies and books. Expert in cosmology and astronomy, IT, productivity, and planning.

The Clean Coder: A Code of Conduct for Professional Programmers
Robert C. Martin
Genres: Programming
Year of publication: 2012
Year of reading: 2020
My rating: Normal
Number of reads: 1
Total pages: 224
Summary (pages): 10
Original language of publication: English
Translations to other languages: Russian, Spanish, Portuguese, Chinese, French, German

General Description

A short book of just over 200 pages, consisting of 14 chapters. There are no code listings, and virtually no images, tables, or other visual content. The reading level is easy and accessible.

Quick Overview

The first chapter explores what sets an ordinary developer apart from a true professional.

One of the following chapters emphasizes the importance of saying "no" and explains that "no" is not a sign of weakness, but a way to preserve quality and maintain the client's trust. In contrast, the next chapter covers how to say "yes" appropriately and avoid making awkward or unrealistic promises.

Several subsequent chapters focus on coding and testing, but don't expect technical depth. When it comes to coding, for example, the discussion revolves around how factors like listening to music or programming at night affect code quality and productivity—according to Uncle Bob's perspective, of course. Testing, meanwhile, includes some theoretical foundation, though it shouldn't be treated as definitive.

Later come several chapters I’d group under the theme "planning, estimates, and risk management." These also discuss team meetings, time estimation techniques (like planning poker and fist of five), ways to resist pressure, and how to sustain code quality even under tight deadlines.

The final three chapters could collectively be titled "Management and Communication." They address interactions between developers, as well as between developers and clients, and touch on topics related to mentoring and basic team leadership.

My Opinion

Experienced developers might find this book of limited value, but it's highly beneficial for beginners. Beyond technical skills, Uncle Bob highlights the importance of soft skills (his other books focus more on hard skills). Overall, most chapters are quite basic—never boring, but not particularly informative either. The most interesting sections, in my view, are the ones on testing. Also, based on my experience working with programmers, many are overly compliant and struggle to say "no" or steer a client away from clearly flawed ideas. Given that the book is short and easy to get through, I’d recommend it to anyone who has recently become a developer or is planning to enter the field.

Вверх