Yeah, that's why I said "I'm not sure how useful it is to say this", because I know a lot of people will be a) offended by the message or b) offended that I was the one to say it.
The issue of "do you review every line of code or not" is the single most complex in all of the conversations about the practice of applying coding agents. If my messaging on that is inconsistent it's because of that complexity, and because my understanding of that issue is evolving over time.
I don't actually buy that tweet from Boris Cherny. When the Claude Code source leaked some months ago, there were many posts on Mastodon about how the revealed code was a shit show, a big pile of hacks. I wish now that I had bookmarked some of those posts.
I wasn't very impressed by that pile-on, personally.
Has there ever been a rapidly evolving 1,000,000+ line codebase that suitably motivated critics couldn't pick a thousand holes in and conclude that the code was garbage?
Claude Code is used by millions of people on a daily basis, has generated billions of dollars in revenue, and spits out new features on a weekly basis.
Many of the complaints I saw - things like the absurdity of asking for JSON and then looping against a schema until it matches - are common patterns for building software against language models, which are weird components to need to tame.
I'm still inclined to question whether the agent harness needs to be a million lines, or even a hundred thousand lines, in the first place. I mean, isn't one supposed to just hook up tool calling and let the LLM's intelligence do the rest? At least, that's the way it appears from things like tptacek's post about writing an agent. https://fly.io/blog/everyone-write-an-agent/
Then again, I'm also sympathetic to the idea that the anti-AI backlash has also provoked an unreasonable backlash against development speed and scale themselves.
To be fair, I was mostly pointing out that you can get to the kernel of a useful agent very quickly and without much code, not making a claim that coding agents would or should generally be tight. Competitive coding agents in particular are tricky, in part because the two mainstream agents (Codex and Claude) are big RL targets and you generally want to be in their slipstream --- or so I'm told.
On the other hand: I have basically zero interest in writing a coding agent (there are so many effective ones already), but I write lots of little agents, for instance in my music player, and those are as code artifacts pretty trivial.
Harnesses are a lot of prompting and sandboxing also. Then you need to add goldfish reminders when it makes mistakes depending on model quality. It isn’t a lot of code, it definitely isn’t a lot of code that you can’t build with an agent.
That particular reference isn't fair though. You need to view that comment in context: https://news.ycombinator.com/item?id=49176830#49178944
The issue of "do you review every line of code or not" is the single most complex in all of the conversations about the practice of applying coding agents. If my messaging on that is inconsistent it's because of that complexity, and because my understanding of that issue is evolving over time.
Just today, Boris Cherny (Claude Code creator) tweeted that "Production code written by Claude should have a higher bar than if it was written by a human": https://twitter.com/bcherny/status/2098217573276131577
I'm entirely in agreement with that. The interesting challenge is how we achieve that new high bar.