Hacker ApprovedDepartments

Clean Code

Clean Code by Robert C. Martin

by Robert C. Martin

Ranked 2 of 115 programming books by recommenders

Recommended as a source of naming and function-structure ideas, especially for newer programmers and legacy code. Critics say its rules are taken too far and its abstractions hurt performance and optimization.

Recommended as a source of naming and function-structure ideas, especially for newer programmers and legacy code. Critics say its rules are taken too far and its abstractions hurt performance and optimization.

118 people gave an opinion

recommend it
31
criticize it
87
approval share
26%
Each figure is one person. RecommendsCriticizes

Recommended in 9 of 13 months

  1. November 2025: recommended
  2. December 2025: not recommended
  3. January 2026: recommended
  4. February 2026: not recommended
  5. March 2026: recommended
  6. April 2026: recommended
  7. May 2026: recommended
  8. June 2026: not recommended
  9. July 2026: recommended
  10. August 2026: recommended
  11. September 2026: not recommended
  12. October 2026: recommended
  13. November 2026: recommended (month in progress)

Why it doesn’t carry the badge

  • 31 people recommend itNeeds 10 or more, met.
  • 0.3 recommenders for every criticNeeds 2 to 1 or better, not met.
  • Recommended in 9 of 13 monthsNeeds 4 or more, met.

The same three rules apply to every product, and the badge can’t be bought. How the badge works

What people say about it

The reasons people give, with the number of comments that give each one. Open a reason to read what they said.

Why people recommend it

Each mark is one comment

  • Helpful for early developers learning structure

    “helpful for early developers who need some structure, but harmful to late-stage developers who adopt it as dogma”

    Comment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”

    “when I read it as a newbie it was really helpful”

    Comment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”
  • Useful parts, skip the rest

    “Clean Code has some useful things, but it is a collection of one person's judgements (some good, some bad)”

    Comment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”

    “didn't think it was mind blowing, but I used the parts that made sense and left the parts that didn't”

    Comment from 1 Jul 2026 in “Solid and Clean Code never felt solid or clean to me”

What people warn about

Each mark is one comment

  • Rules taken to extremes

    “his reasoning, that 6 lines is too long, was a reflection of his desire to get every function as short as possible”

    Comment from 4 Jan 2026 in “Maybe Comments _Should_ Explain 'What'”

    “The examples in Clean Code show that Uncle Bob himself misunderstood heuristics as strict rules that are to be taken to the extreme.”

    Comment from 23 May 2026 in “Improving C# Memory Safety”

    “famous for making bad suggestions and producing unreadable code with too many functions just for the sake of following its rules”

    Comment from 28 Nov 2025 in “Tiger Style: Coding philosophy (2024)”
  • Abstractions hurt performance and optimization

    “it is empirically worse for performance, and that trade off matters for many use cases”

    Comment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”

    “the amount of abstractions Uncle Bob advises makes it just too easy to make the code extremely hard to optimize later”

    Comment from 1 Jul 2026 in “Solid and Clean Code never felt solid or clean to me”
  • Harmful for beginners or dogmatic use

    “i'd argue it is even more harmful for beginns, i remember we had to code a chess program and seeing students getting stuck on OOP stuff rather than actually solve the problems.”

    Comment from 5 Aug 2026 in “"Clean" Code, Horrible Performance”

    “People who read Clean Code as their first programming but and made that their identity have been the bane of my existence as a programmer.”

    Comment from 17 Mar 2026 in “"How I write software with LLMs"”

    “helpful for early developers who need some structure, but harmful to late-stage developers who adopt it as dogma”

    Comment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”
  • Author misapplies his own advice

    “Mr. Martin honestly just doesn't seem very good at implementing his ideas and getting the benefits that he anticipates from them.”

    Comment from 5 Jan 2026 in “Maybe Comments _Should_ Explain 'What'”

    “he doesn't seem to have been very good at implementing them, and he often does so in ways that contradict other principles”

    Comment from 26 May 2026 in “Using AI to write better code more slowly”

Other programming books people recommend

The four most recommended other programming books, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.

Clean Code by Robert C. Martin compared with 4 alternatives
ProductRecommendCriticizeApprovalMonthsOwnedBadge
Crafting Interpretersby Robert Nystrom60494%10—Approved
Clean Codeby Robert C. MartinThis page318726%9——
The Pragmatic Programmerby Andy Hunt and Dave Thomas28197%7—Approved
How to Design Programsby Matthias Felleisen and Robert Bruce Findler and Matthew Flatt and Shriram Krishnamurthi18290%7—Approved
Mastering Emacsby Mickey Petersen17194%8—Approved
See all 115 programming books, ranked

What people said

40 of the 133 comments that mention it, newest first. Each links to the original comment.

“I liked the book, so did my colleagues, and we even had a meetup to discuss the book”

RecommendsComment from 1 Nov 2026 in “It's the memory latency, stupid”

“pretty useful as a drop in solution”

RecommendsComment from 29 Oct 2026 in “Show HN: CleanCode – Claude Code and Codex collaborating on one canvas”

“CleanCode is open source under the MIT license”

RecommendsComment from 28 Oct 2026 in “Show HN: CleanCode – Claude Code and Codex collaborating on one canvas”

“some of the principles might be out of date, wrong, or overkill”

MixedComment from 17 Aug 2026 in “Software Engineering fundamentals matter more”

“consider naming and writing your functions in such a way that doesn't require a wall of comments”

RecommendsComment from 15 Aug 2026 in “Stop sending me PRs; a rant”

“it is actually a well-written book”

RecommendsComment from 8 Aug 2026 in “"Code was never the hard part" is an insult to all programmers”

“I like how at least he tried. I've been a fan of his for awhile but I'm not big on objects”

MixedComment from 7 Aug 2026 in “Taste Is All That's Left”

“in large part because of efforts like "Clean Code" putting bugs in ears”

MixedComment from 5 Aug 2026 in “"Clean" Code, Horrible Performance”

“There is still good meat-on-the-bone in the book, and especially interesting if you're working in a legacy system from that older time and place.”

MixedComment from 5 Aug 2026 in “"Clean" Code, Horrible Performance”

“i'd argue it is even more harmful for beginns, i remember we had to code a chess program and seeing students getting stuck on OOP stuff rather than actually solve the problems.”

CriticizesComment from 5 Aug 2026 in “"Clean" Code, Horrible Performance”

“I think you've missed the point of clean code if this is your gripe with it.”

RecommendsComment from 5 Aug 2026 in “"Clean" Code, Horrible Performance”

“Even Robert Martin, very often in his videos and blogs, espouses "engineering judgment" and is quite fine abandoning advice in his book when the situation calls for it.”

MixedComment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”

“extensively revised to account for the many misconceptions which new programmers might have gotten from the old edition”

MixedComment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”

“Your code is bad or slow - not the programming principles.”

RecommendsComment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”

“Mature programmers know that the idea that everything is an object is a myth.”

RecommendsComment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”

“it is empirically worse for performance, and that trade off matters for many use cases”

MixedComment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”

“The book is written by someone with a very limited experience and the advice is either basic and obvious or harmful.”

CriticizesComment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”

“Clean Code is unhelpful to beginners too, though: misuse of industry-standard terms, shunning of comments in favor of tiny functions with long names”

CriticizesComment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”

“So they hate clean code because they don't actually know clean code”

RecommendsComment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”

“It is not without merit, but tends to attract the tedious killjoys and midwits.”

MixedComment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”

“it's that length code with many branching conditions is prone to be untestable and introduce non trivial bugs”

RecommendsComment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”

“Clean Code has some useful things, but it is a collection of one person's judgements (some good, some bad)”

MixedComment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”

“helpful for early developers who need some structure, but harmful to late-stage developers who adopt it as dogma”

MixedComment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”

“when I read it as a newbie it was really helpful”

RecommendsComment from 4 Aug 2026 in “"Clean" Code, Horrible Performance”

“some other guy would distill some patterns, market another book with a catchy title that'd be inevitably somewhat misunderstood and misused”

CriticizesComment from 1 Jul 2026 in “Solid and Clean Code never felt solid or clean to me”

“didn't think it was mind blowing, but I used the parts that made sense and left the parts that didn't”

MixedComment from 1 Jul 2026 in “Solid and Clean Code never felt solid or clean to me”

“found it revealing, but also annoying in parts”

MixedComment from 1 Jul 2026 in “Solid and Clean Code never felt solid or clean to me”

“the amount of abstractions Uncle Bob advises makes it just too easy to make the code extremely hard to optimize later”

CriticizesComment from 1 Jul 2026 in “Solid and Clean Code never felt solid or clean to me”

“he doesn't seem to have been very good at implementing them, and he often does so in ways that contradict other principles”

CriticizesComment from 26 May 2026 in “Using AI to write better code more slowly”

“The examples in Clean Code show that Uncle Bob himself misunderstood heuristics as strict rules that are to be taken to the extreme.”

CriticizesComment from 23 May 2026 in “Improving C# Memory Safety”

“Clean Code has its really "meh" areas, but the core idea and spirit of it is sound”

MixedComment from 22 May 2026 in “The AI Elephant in the Room”

“The whole point of 'Clean Code' is to establish a body of ethics software 'engineers' collectively agree to”

RecommendsComment from 24 Mar 2026 in “Cyberattack on vehicle breathalyzer company leaves drivers stranded in the US”

“People who read Clean Code as their first programming but and made that their identity have been the bane of my existence as a programmer.”

CriticizesComment from 17 Mar 2026 in “"How I write software with LLMs"”

“Mr. Martin honestly just doesn't seem very good at implementing his ideas and getting the benefits that he anticipates from them.”

CriticizesComment from 5 Jan 2026 in “Maybe Comments _Should_ Explain 'What'”

“It was written in different times, different audiences.”

MixedComment from 4 Jan 2026 in “Maybe Comments _Should_ Explain 'What'”

“his reasoning, that 6 lines is too long, was a reflection of his desire to get every function as short as possible”

MixedComment from 4 Jan 2026 in “Maybe Comments _Should_ Explain 'What'”

“I have had so many discussions about that style where I tried to argue it wasn't actually simpler and the other side just pointed at the book.”

CriticizesComment from 4 Jan 2026 in “Maybe Comments _Should_ Explain 'What'”

“The world would be a better place if Philosophy of Software Design would replace all mentions of the second book.”

CriticizesComment from 21 Dec 2025 in “Show HN: Books mentioned on Hacker News in 2025”

“famous for making bad suggestions and producing unreadable code with too many functions just for the sake of following its rules”

CriticizesComment from 28 Nov 2025 in “Tiger Style: Coding philosophy (2024)”

“it's Java centric and has a lot of questionable tips”

MixedComment from 16 Nov 2025 in “The Pragmatic Programmer: 20th Anniversary Edition (2023)”

Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.