4/9/2026 at 2:57:29 PM
> LLMs are pretty good at picking up the style in your repo. So keeping it clean and organized already helps.At least in my experience, they are good at imitating a "visually" similar style, but they'll hide a lot of coupling that is easy to miss, since they don't understand the concepts they're imitating.
They think "Clean Code" means splitting into tiny functions, rather than cohesive functions. The Uncle Bob style of "Clean Code" is horrifying
They're also very trigger-happy to add methods to interfaces (or contracts), that leak implementation detail, or for testing, which means they are testing implementation rather than behavior
by Insensitivity
4/9/2026 at 3:03:58 PM
And so many helper factories in places that don't need it.by datadrivenangel
4/9/2026 at 7:28:44 PM
Yeah. We have an AI reviewer. Just now I had a PR where I didn't normalize paths in some configuration and then compared them. I.e. let's say the configuration had file = /foo/bar/
and then my code would do: if file == other_file:
...
instead of: if normalized(file) == normalized(other_file):
...
and the AI reviewer suggested a fix by removing the trailing slash instead. I.e. the fix would have "worked", but it would've been a bad fix because the configuration isn't under program's control and can't ensure paths are normalized.I've encountered a lot of attempted "fixes" of this kind. So, in my experience, it's good to have AI look at the PR because it's just another free pair of eyes, but it's not very good at fixing the problems when it does find them. Also, it tends to miss conceptual problems, concentrating on borderline irrelevant issues (eg. an error raised by the code in the use-case beyond the scope of the program like when a CI script doesn't address the case when Git is not installed, which is of no real merit).
by crabbone
4/9/2026 at 3:26:30 PM
[dead]by heyethan