When I reject AI code even if it works

205 points · 137 comments on HN · read original →

Points and comments are a snapshot, not live.

AI-generated code that works can still be a bad solution if the engineer cannot understand or explain it.

The author rejects AI code when they cannot explain the approach in their own words, when the diff is larger than the problem, when abstractions are introduced prematurely, when the system becomes harder to reason about, and when they are trusting the output more than their own understanding. Without thorough review, code that passes tests may still be inadequate. Coding agents still require a skilled engineer to guide them toward good solutions.

What commenters are saying

Commenters broadly agree that accepting AI code without understanding it is risky. Top commenters emphasize that code must be comprehensible to the author, especially for on-call support. One commenter notes that vibe coders often assume AI-generated tests prove correctness, but failure modes can be unexpected. Another points out that risk tolerance matters: internal tools and static websites may be fine, but critical infrastructure demands human understanding. A commenter warns that organizations already rewarding cowboy coders will accelerate this behavior with LLMs, accumulating tech debt.