Work in progress: 181,232 of 181,233 sites checked so far, more every week · updated 2 Nov 2026Missing a blog? Tell us

Top all-time · #172

T

The Clean Code Blog

Personal blog · blog.cleancoder.com/uncle-bobprogrammingcareer

The Clean Code Blog is a personal blog at blog.cleancoder.com about programming and career. Since 2014, 250 different Hacker News readers have linked it 353 times, most often “My Lawn”. The last post was in 2023, but the archive is still widely read.

Visit the blog
353mentions?
9recommend?
250HN people?
2014–2026first – last linked?
Links on Hacker News per year · peak 69 in 2017

Sometimes recommended · 9 of 40 sampled comments recommend it?

Why HN links it

HN readers link Martin's blog for essays on clean architecture, TDD, single responsibility and the programmer-age 'MyLawn' post, mostly as citations, with a few explicit praises and two critiques.

Recommended for · 9 comments
Called a great article, clever, the most concise piece on unit testing, a nice article, a fun read, and worth everyone reading.12345678

Summarised by Claude from a sample of 40 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.

Most-linked posts?

  1. My Lawn
    14 people · 15 mentions · first linked 2014-06-21
  2. Clean Architecture: Dependency Inversion
    13 people · 14 mentions · first linked 2019-05-10
  3. The Dark Path
    10 people · 10 mentions · first linked 2017-01-11
  4. Tools are not the Answer
    9 people · 9 mentions · first linked 2017-10-04
  5. Why Clojure?
    7 people · 7 mentions · first linked 2019-08-22
  6. The Programmer's Oath
    7 people · 7 mentions · first linked 2015-11-18
  7. Types and Tests (by Uncle Bob)
    6 people · 6 mentions · first linked 2017-01-13
  8. Uncle Bob: The Software Crafters Movement Is the New Agile
    6 people · 6 mentions · first linked 2018-10-24
  9. Clean Code: FP vs. OO (2018)
    6 people · 6 mentions · first linked 2018-10-29
  10. /uncle-bob/2014/06/20/MyLawn.html
    5 people · 6 mentions · first linked 2019-03-28

What Hacker News says?

  1. berkes · 2022-04-15Recommends
    I'd suggest going through all Uncle Bob Martin[1]s talks on clean code. He has a great article (2014), old, on why you may not want to build that framework at all[2] too: > Using a framework requires a significant commitment. By accepting the framework into your code, you surrender your control over the details that the framework manages. [...] > And yet despite the huge commitment you’ve made to the framework, the…

    Comment linking /uncle-bob/2014/05/11/FrameworkBound.html

    on “We lost 54k GitHub stars”
  2. Submitted Open Letter to the Linux Foundation as a story · 572 points

    HN discussion
  3. I'm not an Uncle Bob fan by any stretch of the imagination, but he wrote a somewhat famous article about this phenomenon: http://blog.cleancoder.com/uncle-bob/2014/06/20/MyLawn.html With each new wave - we get people that either lack the time, the willpower or the conditions to understand what came before them (the ground they're standing on), and this is how we end up rediscovering things every 2-3 years. It's much…

    Comment linking /uncle-bob/2014/06/20/MyLawn.html

    on “Fresh – Next-gen web framework”
  4. Submitted Blue. No, Yellow as a story · 337 points

    HN discussion
  5. I never recommended Clean Code, but I've become a strong advocate against it on teams that I lead after reading opinions by Bob Martin such as this one: https://blog.cleancoder.com/uncle-bob/2017/01/11/TheDarkPath... . That whole article reads as someone who is stuck in their old ways and inflexible, then given their large soapbox tries to justify their discomfort and frustration. I consider Swift, Kotlin (and Rust)…

    Comment linking /uncle-bob/2017/01/11/TheDarkPath.html

    on “It's probably time to stop recommending Clean Code (2020)”
  6. Submitted Classes vs. Data Structures as a story · 311 points

    HN discussion
  7. For me Clean Code is not about slavishly adhering to the rules therein, but about guidelines to help make your code better if you follow them, in most circumstances. On his blog Bob Martin himself says about livable code vs pristinely clean code: "Does this rule apply to code? It absolutely does! When I write code I fight very hard to keep it clean. But there are also little places where I break the rules specifical…

    Comment linking /uncle-bob/2018/08/13/TooClean.html

    on “It's probably time to stop recommending Clean Code (2020)”
  8. Submitted Why Clojure? as a story · 248 points

    HN discussion
  9. Uncle bob agrees http://blog.cleancoder.com/uncle-bob/2015/11/18/TheProgramme...

    Comment linking /uncle-bob/2015/11/18/TheProgrammersOath.html

    on “Pastejacking”
  10. Submitted TDD Doesn't Work as a story · 153 points

    HN discussion
  11. http://blog.cleancoder.com/uncle-bob/2014/06/20/MyLawn.html Uncle bob. This is five years ago, so if you have numbers that prove the opposite, now would be a good time to point that out.

    Comment linking /uncle-bob/2014/06/20/MyLawn.html

    on “Graying Out”
  12. Submitted REPL Driven Design as a story · 146 points

    HN discussion
  13. The number I saw was something like every 5 years the number of programmers doubles. So half if all devs have less than 5 years experience. And since most new devs are more likely to be closer to college age than retirement age devs tend to skew younger than 40 (probably by a lot). https://blog.cleancoder.com/uncle-bob/2014/06/20/MyLawn.html

    Comment linking /uncle-bob/2014/06/20/MyLawn.html

    on “Aging programmer”
  14. Submitted A Little Clojure as a story · 139 points

    HN discussion
  15. Cephlin · 2017-06-29Recommends
    Uncle Bob always has some clever things to say on TDD too: http://blog.cleancoder.com/uncle-bob/2017/03/03/TDD-Harms-Ar... and: http://blog.cleancoder.com/uncle-bob/2016/11/10/TDD-Doesnt-w...

    Comment linking /uncle-bob/2016/11/10/TDD-Doesnt-work.html

    on “TDD did not live up to expectations”
  16. Submitted Giving Up on TDD as a story · 131 points

    HN discussion
  17. This largely concurs with clean architecture[1], especially considering his foreword containing hindsight. Clean architecture can be summarized thusly: 1. Bubble up mutation and I/O code. 2. Push business logic down. This is how it's stated in [1]: > The concentric circles represent different areas of software. In general, the further in you go, the higher level the software becomes. The outer circles are mechanisms…

    Comment linking /uncle-bob/2012/08/13/the-clean-architecture.html

    on “John Carmack on inlined code (2014)”
  18. Submitted VW as a story · 120 points

    HN discussion
  19. You have a very high standard for what 'proficient' means, and yet a very low one. That is, I am not proficient with relational databases, and I can handwave why an SDD is faster, and why data may disappear from an in-memory DB. But I couldn't do an outer join without help. Nor do I know when I would want to do one. Bob Martin wrote the essay at http://blog.cleancoder.com/uncle-bob/2017/12/09/Dbtails.html , in which…

    Comment linking /uncle-bob/2017/12/09/Dbtails.html

    on “Why SQLite Does Not Use Git”
  20. Submitted Dijkstra's Algorithm as a story · 119 points

    HN discussion
  21. Absolutely. [Uncle Bob is clear]( https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-a... ) that the inside circles must not know about the outside world. That is, your business logic is not allowed to know what a DB operation is, nor should it do any DB operations behind the scenes. > Frameworks and Drivers. > The outermost layer is generally composed of frameworks and tools such as the Database, the Web Fr…

    Comment linking /uncle-bob/2012/08/13/the-clean-architecture.html

    on “A Theory of Software Architecture”
  22. Submitted The Disinvitation as a story · 71 points

    HN discussion
  23. That is a recurrent point that Uncle Bob tends to do. In my opinion, sounds resonable. e.g.: http://blog.cleancoder.com/uncle-bob/2014/06/20/MyLawn.html

    Comment linking /uncle-bob/2014/06/20/MyLawn.html

    on “On Getting Older in Tech”
  24. Submitted Pragmatic Functional Programming as a story · 71 points

    HN discussion
  25. Why isn't it discoverable? You know what type is returned by "To()" and if that has a BeCalled() method you can call it :) Now, the problem that requires an IDE, that many curse Scala for comes in when you have implicit things. So even if "To()" returns a WhateverTestDslElement that might not tell you anything because there might be a hundred implicit functions that convert WhateverTestDslElement to OtherFancyDslThi…

    Comment linking /uncle-bob/images/2012-08-13-the-clean-architecture/CleanArchitecture.jpg

    on “It's not what programming languages do, it's what they shepherd you to”
  26. Submitted Type Wars as a story · 59 points

    HN discussion
  27. rb808 · 2018-09-21Recommends
    Agreed on the testing fetish and usually they're not valuable. Uncle Bob wrote about this last year and its something I wish everyone would read https://blog.cleancoder.com/uncle-bob/2017/10/03/TestContrav...

    Comment linking /uncle-bob/2017/10/03/TestContravariance.html

    on “Ask HN: What open source project, in your opinion, has the highest code quality?”
  28. Submitted The Startup Trap (2013) as a story · 54 points

    HN discussion
  29. theptip · 2020-08-26Recommends
    > When people talk about "unit tests", a unit doesn't refer to the common pattern of "a single class". A unit is a piece of the software with a clear boundary. It might be a whole microservice, or a chunk of a monolith that is internally consistent. This is a really important aspect, and I think is one of the key things that separates "journeyman" level from "master" on the subject of testing. The most concise piece…

    Comment linking /uncle-bob/2017/10/03/TestContravariance.html

    on “Is TDD Dead? (2014)”
  30. Submitted Types and Tests as a story · 52 points

    HN discussion

Search all of HN for blog.cleancoder.com

Linked by the same people?