• Prunebutt@slrpnk.net
    link
    fedilink
    arrow-up
    29
    arrow-down
    3
    ·
    5 months ago

    I don’t really get the hate he gets in the other comments. Are you all joking, or can someone elaborate? I always liked what I’ve read/heard of Bob.

    • ByteOnBikes@slrpnk.net
      link
      fedilink
      arrow-up
      42
      arrow-down
      5
      ·
      edit-2
      5 months ago

      I’m not as much vitriol as others about Clean Code, but I will argue that engineers who preach the book as some sort of scripture are really obnoxious.

      I love the Single Responsibility Principle, in theory.

      What I don’t like is when devs try to refactor everything to that idea to achieve “Clean Code”. I’ve seen devs over-architect a solution, turning one function into many, because they don’t want to break that rule. Then point to this book as to WHY their code is now 20x longer than it needs to be.

      It also doesn’t help that every recommendation about good programming books include this.

      It’s like recommending a Fitness book from the 70s - information made sense at the time, but new research has made a lot of the advice questionable.

      My main issue is the whole “Uncle Bob” persona. Robert C Martin is sexist and a racist, and has been uninvited by conferences. We don’t need that type of toxicity in the industry.

    • asyncrosaurus@programming.dev
      link
      fedilink
      arrow-up
      33
      arrow-down
      2
      ·
      5 months ago

      It’s a beginners book filled with a mix of bad and good advice, which takes considerable experience to separate the two. Those who can point out all the bad advice already don’t need the book, and newer developers will pick up absolutely atrocious coding advice. There’s simply better books that target beginners better, like The Pragmatic Programmer.

      So when you are on-boarding junior devs that have bought into the clean code/SOLID dogma, you’re spending several months beating all their terrible coding habits out of them.

      • bleistift2@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        5
        ·
        5 months ago

        While we’re giving advice on good reads, I foudn “Code Complete” to be much more useful than “The Pragmatic Programmer” (also about 10x the size).

    • Carighan Maconar@lemmy.world
      link
      fedilink
      arrow-up
      24
      arrow-down
      1
      ·
      5 months ago

      Personally I have been around longer than him but I used to like his stuff at first.

      As I’ve coded more and more on stuff that is built not only on legacy code but specifically legacy code by coders influenced substantially by clean code… damn has this single author given me a headache like nothing else ever has.

      The level of inane unmaintainability and complexity achieved by younger coders being encouraged or forced to code “clean” is remarkable.

      • anti-idpol action@programming.dev
        link
        fedilink
        arrow-up
        7
        ·
        5 months ago

        personally I’d sum it up this way: it is usually enough to abstract two parts of your code: the repetitive stuff and the stuff that can be separated from external dependencies like db or network. That should be enough to ensure readability and that you can test it properly and not have to deal with rewriting half your codebase when you decide to change an external dependency.

      • Prunebutt@slrpnk.net
        link
        fedilink
        arrow-up
        5
        ·
        5 months ago

        Can you give examples? I genuinely can’t think of how the principles applied with proper restraint not to overdo it make code hard to maintain. But I’ve only watched his talk a few years ago - not the book.

    • noproblemmy@programming.dev
      link
      fedilink
      arrow-up
      7
      arrow-down
      1
      ·
      5 months ago

      I take it as people just joking. Personally I’m in doubt if the tweet is serious and the new book is true, or is it just a joke about refactoring/re-writing code.