5 ms·
React is hundreds of thousands of lines of code (or millions - I haven’t looked in awhile). Sure, you can start by having the LLM create a simple way to sync st
by all_factz 9mo ago
React is hundreds of thousands of lines of code (or millions - I haven’t looked in awhile). Sure, you can start by having the LLM create a simple way to sync state across components, but in a serious project you’re going to run into edge-cases that cause the complexity of your LLM-built library to keep growing. There may come a point at which the complexity grows to such a point that the LLM itself can’t maintain the library effectively. I think the same rough argument applies to MomentJS.
- simonw 9mo agoIf the complexity grows beyond what it makes sense to do without React I'll have the LLM rewrite it all in React! I did that with an HTML generation project to switch from Python strings to Jinja templates just the other day: https://github.com/simonw/claude-code-transcripts/pull/2 https://github.com/simonw/claude-code-transcripts/pull/2
- zdragnar 9mo agoThat would go over on any decently sized team like a lead balloon.
- simonw 9mo agoAs it should, normally, because "we'll rewrite it in React later" used to represent weeks if not months of massively disruptive work. I've seen migration projects like that push on for more than a year! The new normal isn't like that. Rewrite an existing cleanly implemented Vanilla JavaScript project (with tests) in React the kind of rote task you can throw at a coding agent like Claude Code and come back the next morning and expect most (and occasionally all) of the work to be done.
- zdragnar 9mo agoAnd everyone else's work has to be completely put on hold or thrown away because you did the whole thing all at once on your own. That's definitely not something that goes over well on anything other than an incredibly trivial project.
- pertymcpert 9mo agoWhy did you jump to the assumption that this: > The new normal isn't like that. Rewrite an existing cleanly implemented Vanilla JavaScript project (with tests) in React the kind of rote task you can throw at a coding agent like Claude Code and come back the next morning and expect most (and occasionally all) of the work to be done. ... meant that person would do it in a clandestine fashion rather than this be an agreed upon task prior? Is this how you operate?
- zeroonetwothree 9mo agoIf you have 100s of devs working on the project it’s not possible to do a full rewrite in one go. So its to about clandestine but rather that there’s just no way to get it done regardless of how much AI superpowers you bring to bear.
- zdragnar 9mo agoMy very first sentence: > And everyone else's work has to be completely put on hold On a big enough team, getting everyone to a stopping point where they can wait for you to do your big bang refactor to the entire code base- even if it is only a day later- is still really disruptive. The last time I went through something like this, we did it really carefully, migrating a page at a time from a multi page application to a SPA. Even that required ensuring that whichever page transitioned didn't have other people working on it, let alone the whole code base. Again, I simply don't buy that you're going to be able to AI your way through such a radical transition on anything other than a trivial application with a small or tiny team.
- nl 9mo ago> meant that person would do it in a clandestine fashion rather than this be an agreed upon task prior? Is this how you operate? This doesn't mean this at all In an AI heavy project it's not unusual to have many speculative refactors kicked off and then you come back to see what it is like. Wonder you can do a Rust SIMD optimized version of that Numpy code you have? Try it! You don't even need to waste review time on it because you have heavy test coverage and can see if it is worth looking at.
- reactordev 9mo agoI’m going to add my perspective here as they seem to all be ganging up on you Simon. He is right. The game has changed. We can now refactor using an agent and have it done by morning. The cost of architectural mistakes is minimal and if it gets out of hand, you refactor and take a nap anyway. What’s interesting is now it’s about intent. The prompts and specs you write, the documents you keep that outline your intended solution, and you let the agent go. You do research. Agent does code. I’ve seen this at scale.
- Teever 9mo agoLet's say I'm mildly convinced by your argument. I've read your blog post that was popular on HN a week or so ago and I've made similar little toy programs with AI that scratch a particular niche. Do you care to make any concrete predictions on when most developers will embrace this new normal as part of their day to day routine? One year? Five? And how much of this is just another iteration in the wheel of recarnation[0]? Maybe we're looking at a future where we see return to the monoculture library dense supply chain that we use today but the libraries are made by swarms of AI agents instead and the programmer/user is responsible for guiding other AI agents to create business logic? [0] https://www.computerhope.com/jargon/w/wor.htm https://www.computerhope.com/jargon/w/wor.htm
- simonw 9mo agoIt's really hard to predict how other developers are going to work, especially given how resistant a lot of developers are to fully exploring the new tools. I do think there's been a bit of a shift in the last two months, with GPT 5.1 and 5.2 Codex and Opus 4.5. We have models that can reliably follow complex instructions over multiple hour projects now - that's completely new. Those of us at the cutting edge are still coming to terms with the consequences of this (as illustrated by this Karpathy tweet). I don't trust my predictions myself, but I think the next few months are going to see some big changes in terms of what mainstream developers understand these tools as being capable of.
- mkozlows 9mo ago"The future is already here, it's just unevenly distributed." At some companies, most developers already are using it in their day to day. IME, the more senior the developer is, the more likely they are to be heavily using LLMs to write all/most of their code these days. Talking to friends and former coworkers at startups and Big Tech (and my own coworkers, and of course my own experience), this isn't a "someday" thing. People who work at more conservative companies, the kind that don't already have enterprise Cursor/Anthropic/OpenAI agreements, and are maybe still cautiously evaluating Copilot... maybe not so much.
- DrammBA 9mo agoSimon, you're starting to sound super disconnected from reality, this "I hit everything that looks like a nail with my LLM hammer" vibe is new.
- simonw 9mo agoMy habits have changed quite a bit with Opus 4.5 in the past month. I need to write about it..
- v64 9mo agoLooking forward to hearing about how you're using Opus 4.5, from my experience and what I've heard from others, it's been able to overcome many obstacles that previous iterations stumbled on
- remich 9mo agoPlease do. I'm trying to help other devs in my company get more out of agentic coding, and I've noticed that not everyone is defaulting to Opus 4.5 or even Codex 5.2, and I'm not always able to give good examples to them for why they should. It would be great to have a blog post to point to…
- indigodaddy 9mo agoCan you expound on Opus 4.5 a little? Is it so good that it's basically a superpower now? How does it differ from your previous LLM usage?
- pertymcpert 9mo agoTo repeat my other comment: > Opus 4.5 is categorically a much better model from benchmarks and personal experience than Opus 4.1 & Sonnet models. The reason you're seeing a lot of people wax about O4.5 is that it was a real step change in reliable performance. It crossed for me a critical threshold in being able to solve problems by approaching things in systematic ways.
- godelski 9mo ago
- wanderlust123 9mo agoNot all UIs converge to a React like requirement. For a lot of use cases React is over-engineering but the profession just lacks the balls to use something simpler, like htmx for example.
- all_factz 9mo agoSure, and for those cases I’d rather tell the agent to use htmx instead of something hand-rolled.
- zeroonetwothree 9mo agoCore react is fairly simple, I would have no problem using it for almost everything. The overengineering usually comes at a layer on top.
- chairmansteve 9mo ago"React is hundreds of thousands of lines of code". Most of which are irrelevant to my project. It's easier to maintain a few hundred lines of self written code than to carry the react-kitchen-sink around for all eternity.