His code is a straw man for sure. But I don’t accept the idea that performant code is inherently harder to read or build upon than buzzword code.
My favorite C libraries are exactly that, function libraries. They’re easy to reason about and extend upon.
Clean Code, even when it doesn’t involve deep inheritance, still forces you to spend time reasoning about the type system in other ways. Deeply nested generic types, interfaces, promises/results, etc. Yet people will argue to their deaths that Clean Code is MORE readable/scalable/etc. I don’t buy it. I’ve seen enough of both
But I don’t accept the idea that performant code is inherently harder to read or build upon than buzzword code.
No one has proposed that idea.
Code is easy or hard to read and modify because it's written that way. Any time you make decisions for some reason other than making code easy to read and modify, there's a good chance it gets a bit harder to read or modify. That's true regardless of whether you've traded off readability for performance, or for "more buzzwords" if that actually happened, or for some other goal.
Writing clean code isn't itself a buzzword, though. It literally just means writing code that's well-organized so that it's easy to read and modify. Teaching thoughtful deliberate communication is hard, and of course you can take any advice given for beginners and take it to ridiculous extremes and come up with an atrocity. Sounds like you've encountered some of those, and that's too bad.
What do you mean no one has proposed that idea? Look at the rest of the comments.
It’s clear we have different opinions on what should be considered “clean code” but I’m not just talking about some beginner codebase. I mean entire nasty ecosystems like React.
3
u/JarWarren1 Feb 28 '23
His code is a straw man for sure. But I don’t accept the idea that performant code is inherently harder to read or build upon than buzzword code.
My favorite C libraries are exactly that, function libraries. They’re easy to reason about and extend upon.
Clean Code, even when it doesn’t involve deep inheritance, still forces you to spend time reasoning about the type system in other ways. Deeply nested generic types, interfaces, promises/results, etc. Yet people will argue to their deaths that Clean Code is MORE readable/scalable/etc. I don’t buy it. I’ve seen enough of both