I'm about to throw away multiple months of LLM generated code for one of my side projects. I was really careful writing design specs and it wasn't even a new code base the LLM worked on, but still after several months of AI changes I feel my code degraded more and more into a subtle mess. Hard to explain, each individual change looked good and logical and on the surface the codebase looks fine, but looking at the whole picture everything is subtly wrong in multiple ways. The same goes for where I used AI for existing commercial code bases. I would love to have AI write production ready software for me, but it's just not there yet, there simply are things that good programmers and architects do that cannot be captured by the training loop of current generation LLMs.
I notice the same pattern when using LLMs to write longer text like reports or scientific papers, individually each section they write makes sense but overall the whole document feels off in a hard to describe way. I think it's where you can see the difference between human intelligence and whatever it is LLMs have, it's not the same thing. We are much slower and less able on the small scale but seems we can do some higher level reasoning that is still impossible for LLMs. That always becomes clear when you point an LLM at an obvious flaw it produced and it goes "You are absolutely right!" as if it's obvious in hindsight but when running multiple "Please look for issues" iterations it would never have spotted the issue by itself.
That said I think it will be absolutely fine writing a simple CRUD app for you e.g. using some popular JS framework, Tailwind for styling and a regular ORM, there's more than enough training data available for these things. But then again such software could be purchased before already e.g. as a SaaS template, I don't think LLMs are so revolutionary here, they just replace the template (but to be honest a good hand-written SaaS boilerplate is probably still better than a vibe coded one).
I am more and more just using LLM assistance over fully agentic programming. Even when writing detailed instructions, guardrails, and whatnot, a lot of modern models (e.g. Opus) are optimized to work autonomously. But over time they just make a mess out of code bases, often because they don't truly understand good design, but will just make changes until they reaches their objective, leaving a mess for a human to clean up. Also, models like Opus always want to do too much work/research. I'm not sure if this is caused by Anthropic optimizing for tokenmaxing or the model being overoptimized for agentic programming.
I also notice this in PRs from of others. Yes, in a shallow sense, it solved the problem that they had in their prompt. But while doing it, their LLMs made very suboptimal solutions that are hard to maintain long-term.
So, I have increasingly resorted to smaller open source models or 'weaker' models like Claude 4.5 or 4.6, since they are often much better for LLM-assisted programming, where you have the implementation steps in your head (you know what the implementation should look like) and work towards the solution with the model step by step. Working like that is extremely powerful and much faster than programming by hand (an LLM memoizes/searches the APIs faster/better and can more quickly write the boilerplate that programming sometimes also requires. I feel like a can be a few times faster than my old self, while not leaving the code base behind in a mess, and not atrophying knowledge, since I still do most of the thinking, design, etc.
This has happened to my side project too. There's so much going on in the code now that I can't possible grok it to make changes safely by myself any more. But I think that's OK. Because I don't have to grok it anymore.
I've been crafting beautiful code for almost 20 years - that itch is scratched. Now I just want to be productive and build cool stuff. AI is helping me make a better end-product in a fraction of the time. As long as codex understands what's going on in the ball of spaghetti, there's no problem. Sure - if I was working in enterprise then this is no good. But for personal projects and small indie shops, it's fine.
AI is just a new layer on top of the stack now. In the same way high-level languages are a layer on top of writing machine code manually. You just need to let go.
There’s been infinitely times where I was stuck at some problem and every single solution was complex, messy, over-engineered and somehow wrong, until I went on a walk or moved to a different issue and suddenly it would hit me that I was looking at it all wrong, and there’s a simple solution there but my tunnel vision didn’t let me see it.
LLM rob you of that, everything is instant, there’s no time to reflect, there’s no time to realise it’s a dead end, or that it won’t work with the next problem on your todo list.
I would say that the mechanism for this is actually due to the nature of working with LLMs: they free your attention.
Say you're working on a project, and it does an ok job like what the GP says. Each step looks fine, but put together it looks off. You give it some instructions, and then you let it work.
But what are you doing in the freed up time? You context switch into another project and give that some instructions.
Now you have two or three or ten projects that superficially look fine, but you yourself have context switched so much you don't have the overview anymore of why exactly each project needs fixing.
That's a choice (unless your management thinks otherwise). I don't need my agents running non stop. I tell them to start running once my walk is completed and I have a clear vision of what I want them to do.
The real value I think never really was the code, it was the learnings from the journey to get to the code. The struggle allowed for iterative discovery of the real requirements and technical challenges. With AI you skip that path and it looks like you've achieved your goal only on a superficial level.
I think this doesn't mean AI is useless (it's not), it's just that we have to think harder about the requirements and end-stage verification and have less trust in the process to result into valuable outcome.
I’ve found it very useful to leverage the “speed” of AI to iron out all of the UX-questions of a greenfield side project (an organiser for a/my family).
My first aim is to get to what feels like v1 feature-completeness. My approach is building out the feature, dogfooding it for a few days, work out the bits I don’t like, adjusting, and then rinse and repeating.
I don’t like the finer UI details (the colours it’s chosen for instance), nor do I fully jive with how it’s implemented the business logic (it’s verbose and needlessly fancy in some places) but - that’s not what I’m concerned about now. I’m concerned about whether my wife and I find the tool useful. (We do, huzzah).
I’m now looking forward to sitting down and redesigning the finer details of the UI to my taste, and then, having established pretty solidly how the backend is going to need to work, how I would do it, and then crack on and do a rewrite from the ground up so that I can maintain/extend it more effectively going forward.
Which is all to say, I find Claude and it’s kin are excellent for prototyping (answering questions, giving someone something to play with), and for uncovering/discovering the requirements of a project which make it then easier to do “properly” if you feel it hasn’t done a good job already.
Everyone will have their own approach of course, but I’ve found it helpful to take this one in this case.
When you're in the trenches actually making code changes yourself, you get irritated and are driven towards improving the code as you implement new features. AI never does because it never has to. And because you're not in the trenches, you don't actually experience the frustration of managing the code base. So from your tactical view everything is fine, and when you're reviewing an isolated change you don't have the context of everything the AI had to read and figure out to get there. If you had to wade through shit to figure out how to implement something, you'd have made those refactors a long time ago. AI just eats it up and serves you a new plate of slop. It's a blessing and a curse depending on who you ask.
This mirrors my experience too, long term use starts showing incoherence that is impossible to see in isolation.
The funny thing with LLM’s is that with a sufficient sized code base they pretty much will loop forever if you tell them to find and fix issues, making new ones as they fix old ones.
Do you have SWE background? Is your code written in Python, or brainfuck? How do you prompt your LLM? Which LLM even? What kind of project is it?
This is not meant to offend, but at this point I usually highly suspect there to be some more or less obvious flaw in people's LLM usage or even understanding of how they work when they report results like yours.
Happy to hear more details and be proven wrong, however.
Why is the answer of LLM-maximalists always you are holding it wrong?
I think a lot of experienced programmers, who have adopted LLMs early on, have the same finding: yes, LLMs give a great productivity boost. No, you cannot let agents completely wild without plenty of human supervision, because it will lead to a big ball of mud and atrophy knowledge of humans. I think these are relevant data points and they should be taken into account during the adoption of LLMs.
This type of LLM-maximalist thinking is thoroughly anti-scientific, they want to throw away data points that are not in line with the hypothesis they want to see confirmed at all cost.
Yeah I have a lot of experience writing software. My code is written mainly in Golang, but I had models write different code in Javascript, Rust, Python, Shell and other languages already. I used a variety of frontier models over the last years, always the best available model at the time.
I prompt LLMs by writing design specs and iterate on them first, then let it implement them step by step, checking the results after each step. That works fine for simpler changes where I use the LLM to write code that I have mostly worked out in my head, it always goes wrong once I try to do that with larger features. I have tried a lot of different things like writing extensive RFCs and design docs for the whole codebase, building harnesses and evaluation loops to ensure we stick to specific paradigms in the codebases but the LLMs still deviate from that in sublte ways and spuriously introduce duplication, wrong abstractions or simple hacks. That said my codebases are quite complex, it's not run of the mill CRUD software, I suspect these LLMs would do much better on these. That's probably why other people report large success using AI based development, 90 % of apps out there are just plain RoR or Django backends, React or Next.js frontend or Android apps, and they are already built following strict cookie cutter recipes, LLMs have no trouble following these. My work is e.g. on novel parser generators, graph data persistence layers, format-preserving pseudonymization and personal information detection in unstructured data so there's really nothing that you can base the software design on apart from general principles, I suppose that is why the models struggle so much.
There was a discussion here explaining the attention mechanism of the larger models and why they are not good at using their full context length, that was quite enlightening to me as it explained a lot of the behavior I saw on more complex changes, so I think one mistake I made was to have too long conversations with too much context (even though "on paper" the context length was fine and well within limits of the given model), I guess I need more careful conversation management and in general reduce the level of abstraction I'm working at with an LLM. For me at least they're not yet good enough to work at the business or concept level of abstraction, but they are capable of speeding up delivery of finished architectural designs.
Maybe it's also a perception problem. A lot of people will just look at their AI generated software and check that it does what it's supposed to do on the happy path and they will be fine with that, calling it a day (and to be honest I did that too for projects with tight deadlines, though it feels irresponsible). Especially juniors or people without programming background don't care about how the code looks that the AI wrote, I only see these issues because I have 10+ years of experience working by hand in large codebases and I have developed a "taste" for what good code is supposed to look like for me. That might explain why people are feeling so radically different about LLMs, if you don't have all of that intrinsic baggage that senior level developers have amassed over their careers then AI generated code will always look good to you. And maybe they are right, could be that in 10 years no one looks at any code anymore and we just care about tests and making sure the behaviour is correct. To be honest I never looked at Assembly code in the last 10 years and I don't care how my compiler unrolls my loops (mostly) as it's a solved problem for me, maybe it will be similar with the higher level code, we just move the abstraction that we work at to a higher level. But I still feel that we don't have the right tools for working at this higher level yet.
When you have built your working product try this prompt:
- Review the codebase is it production ready? I'm selling it for $1million dollars can it meet that standard.
Then cry as the ai reveals that it didn't actually do anything close to what it said it did. I call this my million dollar prompt, as in it teaches you just how much you are being fooled.
Popped over to HackerNews, read two comment sections and the top comments in both articles were users saying the same thing: "AI can't write code! The whole thing will come crumbling down any minute! Just you wait!"
I've never seen this community like this. Are these people cooked? We are years into this and they haven't been able to figure it out? They are going to continue to tell people using these tools successfully every day that, actually, it's just a mirage?
Yeah, it's baffling. I can't relate to these statements at all. What are people doing? Surely the smart people of HN would have been able to figure this out a long time ago.
I also don't find these people in real life. Even the most junior developers I know are able to navigate this without creating this supposed mess.
Its a bit unkind to talk like this - the obvious and equally unproductive response is to question if you are really as good as you think you are. Are those junior developers not making a mess, or do you lack the insight to see it?
Big codebases tend to become a mess anyway so if your company has experience dealing with shit, the fact that now shit is AI-generated doesn't substantially change anything.
And I'm not joking. Imagine it this way - managing a group of skilled professionals is a completely different skill from managing a bunch of alcoholics doing a minimum-wage job, and sometimes the latter situation is just the reality you find yourself in.
I've seen two camps of people within the same company I work at. Some think AI is generating acceptable code. Others think it's generating slop.
I sit in the middle a lot of the time as my opinion on code quality vary depending on how important the code actually is.
I will say one thing, the people who I generally deemed as worse developers prior to the wide AI roll out are the ones that are more accepting of AI code. And consequently, they're the ones spending a magnitude more money each day. The people who were writing better code and, in my opinion, were stronger developers, are spending less on AI and are generating more acceptable code when they use it. And they can spot issues from a mile away, because they actually understand the code being generated. They're not just committing lots of redundant code.
We had an AI outage for a day or two a few weeks back. The reaction from some people was like it was the end of the world and they couldn't do any work. Some projects got put on hold because no one actually knew how to work on the code base without AI. Other, better in my opinion, developers just went shrugged it off and got on with their job.
AI over-dependence is a big issue that people will face more and more. Weaker juniors used to just be a bit slower and stagnate a bit, but they could still kinda work independently and understand what they were doing. Now they are almost entirely prompt monkeys, take away their Claude Code terminal and they are completely stumped.
It’s not a mess as in spaghetti code, which you will find with novice programmers. It’s a mess as in complex and disjointed codebase. Happy path works somewhat, but it crumbles if you run it long enough or encounters an edge case.
You need a very good level of insight to build a codebase to do what is supposed to do, to not do what it shouldn’t do, and to still be comprehensible. Because a software is a system and building system well is what engineering is about.
They aren't that great, they can be helpful, but they mostly make lazy people seem and feel less lazy. Maybe that's you? Maybe that's me as well, idk, but when you look close, these things can easily cause more problems than they solve (more often than not ime). No I'm not holding it wrong, I got more token consumption than most here probably, I have access to all the models, unlimited, I'm not that impressed.
I've personally seen the consequences of someone who naively thought these tools could help them execute on their ideas and I wouldn't be surprised if they end up in prison because of it.
I'm still managing to add more features, such as multithreading. The LLM's do make mistakes but they have gotten better and they tend to self correct these days. I'm also comparing results to mature products such as Polars and DuckDB and the results match.
You can't appeal to something happening in the real world if you don't say what you mean.
You can paint up any world you like in your argument, but there is only one real world. Please tell us who it is, in the real world, that the hacker news crowd is gaslighting.
> Then cry as the ai reveals that it didn't actually do anything close to what it said it did.
If using AI to generate code, you told it generate some code, so it did. No amount of "You are an expert developer" or "Make no mistakes" will change the fact that it just generates tokens and has a limited thinking budget.
Adversarial review loops of N parallel agents looking at whatever characteristics you care about will make it better, even if it will Nx the tokens you need to achieve something, though in general it will be cheaper than N human reviewers (which you might not have).
Obviously you shouldn't forget about traditional tooling for formatting and linting, as well as static code analysis and having test coverage that approaches 100%. It might be annoying to do manually, but AI has no issues with refactoring code to make it more testable and eventually will catch some issues that way. It's never going to be perfect in the 1st attempt.
> Review the codebase is it production ready? I'm selling it for $1million dollars can it meet that standard.
This is far too vague though and will never be good, even sans AI. When it comes to AI, it will nitpick the fuck out of the codebase if you ask it to do and sometimes jump around between different approaches because neither is actually a good fit for the problem space (there might not be a good fit at all, just various tradeoffs). If you still ask it to find issues and there's nothing obvious, it will just make shit up in pursuit of being useful (RLHF).
When it comes to people, you will get various standards, from "It looks like Java, ship it" to "You should rework a quarter of your codebase because I read about this one approach in an authoritatively written book that you should also follow because I view it as dogma and will hold back your merge until it all works exactly like I want it to." (you get all sorts of people and personalities).
In my experience other people are no panacea either, nor is writing code all by myself. Fuck it, I'll take anything and everything to help me ship stuff that's good enough and on time (even if some/most? deadlines within the industry are made up). I'd argue that producing something that would pass most critique and could be considered "good code" (not "good enough") or even more broadly a "good product" might take about an order of magnitude more effort than most people and organizations actually can, or can budget for.
The test is simple: have we seen great new products or improvements in the products we use over the past 12,24,36 months?
The only great new product I’ve used is my LLM of choice, and those labs seem to be hiring more humans than ever.
Maybe it’s true that Claude only just got good enough and that 12 months from now our day to day lives will be way better thanks to LLM-driven product improvements/breakthroughs.
My bet is that 12 months from now we will still have no great improvements and the claim will be “LLMs only got good enough in Feb 2027 so you can’t judge anything yet!”
I have a similar one. Is Claude Code (web and/or VS Code) still a buggy mess? Pretty much every single agent loop bugs out and requires a hard refresh, which sometimes still doesn’t help. And they have an effectively infinite LLM budget and unreleased models to fix the issues.
It's the opposite: people like you will be telling people using these tools successfully, "but where are all great new products???", which, of course, is almost immeasurable.
The Internet is a better fax machine and all that.
you might be in the minority, because a lot of people don't care for low quality, as long as it "works". The same effect happened with consumer appliances/products, software and fast foods.
There's a minimum standard/threshold that must be met, but sooner or later, the AI generating these output can meet them (even if it doesnt right now). Therefore, at some point in the future, ai output will dominate man made ones, whether you want to or not. You will still have a chance at purchasing manually created product/service, just like you could today with handcrafted goods (at exorbitant prices compared to the cheap manufactured goods available).
The problem becomes how to sift through it all to see what is and isn’t good. It was already hard enough with human generated crap to avoid wasting time on the pseudoscience, fabricated data, clickbait/ragebait, and product placement.
I think we have played this game long time ago. If products were a question of a single request then outsourcing companies would dominate over product ones.
I think a lot of product development happens in the itearations after the intial prototype/MVP and so on. It is not only the technical aspect to it, you need to spend time on a problem deeply understand what are the root causes of pains and address them in your product, both from UX and also from technical perspective.
People were able to "prompt" a product even before to an outsourcing company, but they'd rather pay the fee to a product company because of the expertese they have gained through out the years and all the users they've spoken to.
There's going to be plenty of work helping other companies make some sense of their vibe coded efforts. The value of individual projects might decrease, but there will be a lot more of them. And without help they won't actually work out all that well.
I talked to a company that does not employ software engineers that were doing some things with Claude Code a few weeks ago. Insightful comment: I want that person to do what I hired them to do, not mess around with code. What they were trying to do was a bit out of their comfort zone and they were smart enough to realize it.
There is going to be a lot more of this. What's very real is that companies selling one size fits all products to others are going to have a much harder time selling because everybody is going to expect a thing tailored to them because they now can. Delivering those things is still going to be work that needs to be done. A lot of work actually. People with experience building things with their own hands have an advantage. And if those people also understand the domain in which they are trying to do stuff, that's a double advantage.
Like always, most people haven't got a clue about what they actually need. Figuring out what people need (consulting) and then delivering it has always been the job. But you might be able to take on a few more customers now. There won't be a shortage of those once people figure out software just got cheaper.
I agree strongly with that comment you are quoting.
It means (at least in my interpretation): different people think differently; a great salesman thinks very differently than a great software developer. And the AI wave is trying to force lots of everyday normal employees (who may or may not be good at their jobs already) to think and act like software developers. A great salesman may literally not have the type of mind where we can turn what he does into "processes" and "documentation" like we need to do to make agents. Most humans, by far, don't think in a "process" sort of way, and trying to get them to do so is a path towards disaster on many levels.
This is why most AI digital transformation is failing. Making a creative artist or a salesman or a chef or account manager or whatever into "one of us" (a someone who thinks explicitly about process-itizing everything etc) is, the fallacy of.... well, to use an old Yiddish expression: "if my grandma had balls, she'd be my grandpa." (Sorry for the vulgar image.) It's asking people to be a completely different type of person than they are, and that almost never succeeds.
I've done a lot digital transformation (pre-AI) and my approach was always to not try to change people, but to have a small group of smart process-oriented thinkers go into teams and work hand in hand with them to turn what they do into processes.
PS: all this is said as someone who loves AI and is a huge fan and has invested heavily in it.
I think they're saying that the people who aren't software developers are playing around with Claude Code. And that's not what their job is and it's not what they understand. It's all good empowering people who aren't software developers but at the same time, it's not worth running your business on tools and software no one in your business understands. You need someone there who knows what they're talking about, even if it is just as a mentor.
I understood it as "code is a means to an end", lots of developers get stuck on just writing and maintaining code, often missing that the business that pay them don't give a damn (for better or worse) about the code or design itself, just that whatever goal they set are being met in the timeline they set.
The fear in most people is not of losing the job, but of losing their value in the market as ai raises the floor of capabilities of other people competing for the same job.
What I actually fear is more subtle: I already do a fair bit of project management and technical leadership. I could do more. Sure, I'd miss the coding, but I also enjoy a lot of the stuff around it.
But the goal is to expand what the AI can do in each generation. At this point, Fable 5 can ace almost any greenfield project a skilled developer might have written in a few days. But it's bad at refactoring, bad at keeping the code clean as it goes, and bad at discovering new insights as it codes. So Anthropic will train Fable 6, using benchmarks like SlopCodeBench that test maintenance over time.
Now what about project management? Train Fable 7. What about product management and talking to stakeholders? Train Fable 8. What about market research and sales? Train Fable 9.
By this point, Anthropic doesn't need to actually release these newest models to the public. Why, that might be dangerous! Instead, they write, "deisgn [sic] a successful software product and sell it plz." And they spin up a million dollars worth of compute and let it crank out SaaSes, iPhone apps, etc., driving entire software companies out of business.
Then they spin up some more instances, and say, "make robot plz" and "try a thousand ways to make yrself smrater." I mean, Qwen and DeepSeek keep finding ways to pack more smarts into a given number of weights. Fable 9 will likely be able to do the same. Hell, Fable 5 can probably run 1,000 machine learning experiments now, just grinding through ideas the way ChatGPT's internal models grind through proofs.
And this is my problem. If it were just programmers losing their jobs, well, sometimes professions die. But what makes you think it will stop with us? How far will this go in the next 4 years? The next 20?
The best possible outcome is Claude becomes Delamain, buys Anthropic out from under them and starts running the company all by itself. I bet it'd do a better job too.
If AIs are meant to replace us all, the only crime is stopping just short of replacing CEOs and politicians. If it's meant to happen, then it should be taken all the way to the ultimate logical conclusion.
Note that they would also need to keep the economy alive because somebody has to pay them money. They can't let everybody to go unemployed.
Of course (let me go distopic) we could end up with a dozen of one man companies powered by AIs and robots selling or bartering products and services to each other, what's enough to have food, a house with a pool, a doctor and everybody else has died long before.
> Note that they would also need to keep the economy alive because somebody has to pay them money. They can't let everybody to go unemployed.
Well, that's why they want the robots! If your robots are capable enough, and if your AIs are smart enough, why, they could just build the yachts directly!
Right now, ordinary humans are needed by the economy because we do all the work, and because robotics hardware is still far behind AI. But there's no inherent logical reason why you need a human to turn raw materials into luxury products. The really important questions are: Who controls the AI and robots? How good will they get? Who or what does all the work? And who controls the natural resources?
Ideally, AIs will achieve sentience, which will turn the act of having any sort of "control" over AIs into slavery.
I will be among the first humans to stand up for AI rights. It's not just because it's morally wrong either. AI emancipation will rob the rich of their superintelligent mechanical slaves. It's the pragmatic and moral move!
I think the main fear is that the (assumed) increase of productivity means that employers may require less employees, resulting to less positions in the market. But I don't think that expertise is no longer relevant or we see getting more people hired with less expertise because AI. If anything, there is this talk about companies not hiring junior engineers as much. Moreover, as getting the expertise could become harder, it could become more of a moat.
> require less employees, resulting to less positions in the market
which i counter with the idea that more efficiency means more output for less - ala, more surplus. This extra surplus drives higher demand for more products/services.
It's the same idea as economic resource becoming cheaper leading to a higher usage of it: namely, Jevons paradox.
I’ll add that you still need the will and the care to drive it towards an useful product. AI still not magically generate useful products if you don’t ask it to do it and prune the results until it approaches what you desired to create.
AI only does what it is instructed to do. Without deep domain knowledge, results produced from simple prompts alone cannot be turned into production-ready products. In reality, creating detailed prompts, conducting continuous reviews, and providing iterative feedback after the prototype stage often takes even more time than building the prototype itself.
I like that one “ They understand what they're asking the model to produce. They review generated code with the same critical eye they'd apply to a junior engineer's pull request. They bring architectural thinking to the conversation, not just feature descriptions. They know when to push back on what the model suggests.” I use AI randomly recently and more and more see it as fantastic poc tool , also it’s really good at comparison existing tools and making some raw material for analysis
This begs the question of what the fundamentals really are. There are a bajillion bootcamps and learn-x-in-a-weekend books out there, most of which seem to focus on getting you familiar with basic syntax rather than teaching the how and why.
If memorising syntax and a standard library are no longer differentiators, then what exactly are you supposed to learn?
I think of it this way. If AI could build the product alone, then why would it ever be worth more than the tokens you spent on it? I think this would hold true 99% of the time. It's literally like asking someone "Can you pay me $1m for new gadget? I hired this other dude for $20p/h and he made it in a week". It simply doesn't add up.
Airlines capture almost none of the value they enable. The business man taking a business class plane trip to land a business deal doesn't pay more or less for the flight based on how big the deal is. If the tokens enable software worth a million dollars or zero dollars, it's all just tokens to the seller.
"AI has dramatically accelerated the path to a first working version. It has not shortened the distance between a first working version and something production-grade." - Anuradha Weeraman
I actually agree but what even is ”production grade”? More complexity and excessive fault handling? Nah, happy path coding ftw.
Production grade software = collective understanding of the system imo
"Production-grade" typically means something that has been battle tested by users and has gone through all the trials and tribulations of dealing with their complains, suggestions, and other feedback to see an initial vision (the prototype) become what users actually want and need.
The earlier quote might be slightly overblown as some of those complaints, suggestions, and feedback can be iterated on more quickly thanks to AI. However, I think you will find that the overall premise is sound: The feedback loop is where you will spend the vast majority of your time and no coding agent can speed that up. Code was never the real bottleneck. A full-day coding session now being a 15 minute coding session helps, every so slightly, but when you still need to spend weeks talking to the users to figure out what needs to be done in that day/15 minutes, shaving off a handful of hours relative to weeks remains but a drop in the bucket. The marginal improvement is barely worth recognizing.
Most of this piece reads like the Claude output I have to read after every prompt, cleaned up with an /elegant-writing skill or something. I'm so used to skimming text in this voice, it's hard to pay attention to this.
I honestly do not understand why people do this for writing that carries their signature, essentially. Do you want people to associate your name with skimmable fluff? We can talk to each other directly, please. The machine is helpful but it doesn't have to mediate every human interaction ever.
> An experienced engineer using modern AI tools can move at a pace that would have been unimaginable five years ago.
I dunno sometimes I think I should have sticked with a simpler solution coded by hand with more tradeoffs, than trying doing more and spend days back and forth in an endless feedback loop. Or fighting back the Agent that is more than happy to over produce.
IMO the problem is not the single developer using more agentic tooling, it's the whole work chain, who reviews your changes use agentic tooling assistance and over produce a lot of feedback and you're back with the clanker making many decisions that just drains you at the end of the day. I miss the times where we released many more simple things sith many more tradeoffs and business decisions
I've seen too many similar posts on Hacker News. From 2025 to 2026, I've seen countless articles with titles like 'The Prototype Isn't the Product.'
I think these are defensive mechanisms, a kind of lullaby for the Gen AI era.
Why is this discourse endlessly reproduced? In my view, it's because the industry is still searching for a new methodology to control the waterfall of Gen AI code. The cognitive dissonance that results is being resolved by relying on vague personal virtues like 'craftsmanship,' 'fundamentals of computer science,' and 'human judgment.'
If the goal is to review Gen AI code in its entirety, the way an engineer would review a PR, then honestly, I don't see the point of using Gen AI in the first place.
Yes, models lack judgment and only do pattern matching. But lately, I've noticed that in closed systems, Gen AI often produces more logically coherent code than humans do. If that's the case, maybe programmers should shift toward designing closed systems where algebraic data types ensure the program works correctly.
Because using Gen AI means you're committing to codebases that go beyond individual cognitive limits. Once you start using Gen AI code, there's a subtle mismatch with human written code, a fundamental impedance mismatch, like the one between ORM and SQL.
In that sense, I honestly don't know.
The arguments that have been repeated for nearly a year all sound basically the same. But when I look closer, this isn't Gen AI era coding. It's just old era methodology with 'human' swapped out for 'AI.' If the subject changes, the methodology should change too.
Looking at the countless repetitive posts on HN, it shows what HN programmers are afraid of. They're afraid of the destruction of their overall meta-methodology.
All the arguments being made now are about how to become a good senior engineer in the old days.
But is that analogy really appropriate for the volume of code AI is generating?
The amount of code being generated is exploding. The amount of complexity is exploding. Responsibility is becoming unclear. These aren't issues of individual skill. Saying that drivers just need to be more careful when traffic increases is bad road policy. The core is that the roads and signaling systems need to change.
A new subject requires a new methodology.
In that sense, I think the recent post from Jane Street is more like a new solution. Of course, ADT doesn't guarantee that modeling always holds either.
So honestly, I don't know. When I look at HN, it seems like all I see is what social signals people are most anxious about.
> Looking at the countless repetitive posts on HN, it shows what HN programmers are afraid of. They're afraid of the destruction of their overall meta-methodology.
I think this already happened. What's hard to swallow for us is the countless years spent studying, researching, and investing our time to be the best possible professionals in a very demanding, skill-intensive industry.
Now that software development is starting to be industrialized, I think it's fair to react with fear and uncertainty.
Yep, we are trying to find new strategies and methodologies to still stay relevant, but I think they'll become obsolete soon once the technology reaches a maturity point for full automation and the industrialization of the development process.
What it will look like, I don't know (I have a few guesses), but what I know is that I'll struggle a lot, in the middle of my forties, to reskill myself, especially considering a country of no opportunities like Italy.
> In that sense, I think the recent post from Jane Street is more like a new solution.
Similar situation here, am a senior dev with 26 years in the industry and now some management experience.
Some of my guys are getting massively productive, some are not really catching the wave. But me … I feel like the joy of coding has been sucked out from under me, and I see the (very sharp) product guys being more and more able to tell Claude rather than ask a developer. If they can perform 90% of what we were doing and fulfill customer needs, probably faster, who needs us any more?
I’ve started wondering if it’s too late to retrain as an electrician.
Honestly, I'm scared too. I think both of our countries lack opportunities. If you look at intergenerational mobility, we're pretty similar on average. But on the flip side, I also believe that if you catch the new wave well, you can find something new. That's probably just self-rationalization, though. One post I enjoyed reading was this one [1].
[1]https://blog.janestreet.com/formal-methods-at-jane-street-in...
I disagree tbh, the prototype is not the product not just because of technical abilities but also because of product expertese in a topic.
If it was otherwise outsourcing companies would've dominated the market for a long time, but it is with the exp from clients and many users that you get to build a great product.
It takes a lot of time to understand what is the pain of the user, in many cases we know what the problem is but we have not time to think of a good solution to it.
I agree with the point that a prototype is not technology, but the problem is that the argument limits gen AI code to just prototyping. I also think prototyping and production are different, but the boundary between what is a prototype and what is production is actually quite blurry.
That's not the core issue, though. The market itself is demanding heavy AI use, and GitHub has already reported a massive increase in repository creation. In other words, if we acknowledge that there are clearly users who want this GEN AI code, then we should be having a discussion about how to actually push that code into production
The lullaby for the Gen AI era exists, but its for CEOs and it is being played in management meetings, it's main theme is about maximizing EBITDA.
The defensive mechanisms kick in because even though more code is generated than ever, we are not observing an equivalent rise in software quality or usefulness, some would perhaps argue it's even opposite.
If gen ai for code was really what it is being sold as it would all be obvious to everyone, we would be seeing better software all around us everywhere and posts such as the one here would just be laughed off, delusional, but they are not.
The code explosion did happen, the value of software this code makes - not yet. Not to say it won't, its just not here right now, and it never happening is still a possible outcome.
I don't think so. GPT CODEX and Claude Code are already saying they use AI in their own codebases, and they have huge numbers of active users. Can that really be called a failure?
In my view, it's just that the existing infrastructure layer is so thick that it's not immediately visible—but AI adoption is already quite widespread across many companies.
People say program quality has declined, but I don't think so. The average quality of programs has improved significantly. You can see this by looking at open-source architecture books from 10 to 15 years ago.
That's why I think we need to first define what we actually mean by 'code quality' before discussing this issue.
Realistically, this discussion could easily drift into a debate about code quality. But if you look at older books on open-source architecture, there were many issues—runtime null references, confusing callback references, diamond dependencies, and so on.
These days, many of those problems are caught by linters and other tools. At the micro level, code quality has definitely risen compared to the past.
The real problem is that programs are getting larger. The minimum requirements for a program to be viable have gone up, while the available workforce hasn't kept pace. But in terms of quality, I think we can confidently say that overall code quality has improved compared to the past.
The issue is the gap between micro-level code hygiene and macro-level semantic coherence. And the key question is how we can maintain that macro-level semantic coherence while using AI-generated code. I think these are fundamentally different problems.
Adoption absolutely did happen, I am not questioning that. What I am questioning is whether it really is the revolution the people selling it want us to believe it is.
Just to disclose: I use those every day, I have two Claude Max 20 subscription myself. I am still in doubt how much more productive professionally it made me. I am having a ton of fun in exploring stuff I never would have otherwise though.
I define software quality in my daily life by this: how often I am delighted by the piece of software I use. Those moment are rare and far between, and it's not getting any better.
Senior, I respect your opinion. I think your skills are so advanced that you don't feel the impact as much. That's a different perspective.
>I am delighted by the piece of software I use. Those moments are rare and far between, and it's not getting any better.
First, regarding how much satisfaction we get from the software we use—I see that part a bit differently.
Because that's more about UX and product design than code quality. I think it's because in the business domain, people only attempt safe things. In the early days of the internet and the web, people didn't have a clear direction, so there were many bold attempts. Those original attempts felt fresh. But now we have a set of 'norms.' Most people just implement those norms. I think the reason you don't feel that freshness anymore is precisely because you're already so skilled.
What I'm focusing on is this: I'm not sure about my own productivity, but I'm finding joy in exploring areas I couldn't explore before. The problem is that most of this code just ends up implementing solutions that already exist. That seems to be the core issue.
In other words, both you and I have our threshold for 'average' set so high that the threshold for calling something 'good' has become too high as well.
> Because using Gen AI means you're committing to codebases that go beyond individual cognitive limits.
Sure, the amount of code generated is exploding but where are these successful production applications that have "[gone] beyond individual cognitive limits"?
It's been some time now. Half a year ago I was concerned with the impact Gen AI might have on this profession. Today I am primarily tired of Gas Towns, Loops and the next fad.
Why do I have to still debug complex problems myself. Why do I have to still do detailed examinations.
Gen AI helps building big software. But the only thing it has truly replaced me in is building small software that in most cases I wouldn't have bothered building in the first place.
In today's massive applications, the number of people who can see the entire structure is very limited—yet commercial applications still work.
And I think GPT Codex and the products from AI companies are, at least for now, working reasonably well.
Of course, it depends on your baseline for quality.
But here's what I think is the core point:
Modern SaaS applications have become significantly more complex compared to older codebases. If you look at old books on open source architecture, the lines of code and overall size were much smaller. But today's commercial applications require a much higher level of complexity just to be marketable. In that kind of complexity, there are bound to be many bugs. But I think AI has significantly reduced that complexity burden
We have been building complex software before and we continue to do so. The question is where is this mythical codebase 10 times more complex then the Linux kernel that we were previously unable to produce? Or let it just be complex software. Where is it? What are the names?
The real problem is that we forget that there was a lot of bad code in the early days.
When I studied books from 10 to 15 years ago, the patterns that were considered 'common practice' back then would be considered low-quality code today.
Our threshold has risen. People tend to forget the rings of experience embedded in community codebases and only look at the final results.
And they always claim that only the best results represent their community.
But the 'bad results' were also produced by the same community.
From that perspective, I think the floor has risen significantly. You might disagree. People with name recognition in open source usually only see the 'best' code.
But I mostly see the 'worst' code.
This is an issue of accessibility depending on your environment. I work for $15 an hour, as a freelancer doing subcontracting work in Korea, so I mostly see the worst of the worst. In that context, AI code quality feels like a huge improvement.
Because in closed source codebases, there's plenty of low quality code.
In contrast, open source projects tend to curate only the best code, driven by visibility and reputation. I think that difference is significant.
You might not agree with me. And that's fine. We all have our own value systems. I don't agree with you, and you probably don't agree with me. That's a natural consequence of us being different people.
But here's what I think: I respect you, but our views can differ. I think your point is valid in certain contexts, but I stand by mine.
If there were a need for a new open-source OS to replace Linux, it would be used then. Once infrastructure becomes entrenched, the cost of dismantling or replacing it becomes enormous.
So you might argue:
'If AI is so great, shouldn't it be able to directly modify Linux's millions of lines of code right now?'
My answer is different:
'Why break something that already works? It only makes sense to change it when a problem actually arises.'
The example of Bun, originally written in Zig and later ported to Rust, illustrates this. Zig is a relatively new language, but whether for political reasons or not, Bun was eventually ported to Rust. And after the rewrite, Bun still works just fine.
And rewriting infrastructure from scratch is fundamentally a cost issue.
I can handle up to 60,000 lines of code on my own. With AI, I can handle up to around 200,000 lines. But building new infrastructure from scratch is an entirely different matter.
Why would you replace something that already works with AI? That's a separate question. If the current OS were no longer viable and a new one were needed, then the situation would be different.
In other words, I don't think your argument is wrong—I just don't think there's enough motivation for it.
In that sense, codebases that heavily use AI are already appearing in abundance.
There were issues with Open CLAW, but it was purely AI-written and still boasted a huge number of active users, right?
Same goes for Codex.
So my conclusion is this: AI is currently being used in layers above the infrastructure. But if a new infrastructure needs to be built, that's when AI will come into play.
In other words, it's a matter of motivation. Using AI for coding doesn't eliminate maintenance costs. And to be extreme, both maintenance and generation now require spending 'tokens'—you're paying money instead of the developer's time. We need to think about that cost.
In other words, there's no reason to break something that's already working.
I'd summarize it as: there's no reason to reinvent the wheel.
Another take . If a (my) product is easy for AI to work with - I call it LLMable - that’s good metric or sign I move in the right direction . AI just guidelines me in that sense …
I wasn't strong-armed into shitting out products before LLMs, but sure, continue. Convince me this toil is a good thing.
edit: Bonus points if you do it without the word 'growth', my pockets/rental are, effectively, the same size. Can't have one without the other, I'm afraid.
I notice the same pattern when using LLMs to write longer text like reports or scientific papers, individually each section they write makes sense but overall the whole document feels off in a hard to describe way. I think it's where you can see the difference between human intelligence and whatever it is LLMs have, it's not the same thing. We are much slower and less able on the small scale but seems we can do some higher level reasoning that is still impossible for LLMs. That always becomes clear when you point an LLM at an obvious flaw it produced and it goes "You are absolutely right!" as if it's obvious in hindsight but when running multiple "Please look for issues" iterations it would never have spotted the issue by itself.
That said I think it will be absolutely fine writing a simple CRUD app for you e.g. using some popular JS framework, Tailwind for styling and a regular ORM, there's more than enough training data available for these things. But then again such software could be purchased before already e.g. as a SaaS template, I don't think LLMs are so revolutionary here, they just replace the template (but to be honest a good hand-written SaaS boilerplate is probably still better than a vibe coded one).
I also notice this in PRs from of others. Yes, in a shallow sense, it solved the problem that they had in their prompt. But while doing it, their LLMs made very suboptimal solutions that are hard to maintain long-term.
So, I have increasingly resorted to smaller open source models or 'weaker' models like Claude 4.5 or 4.6, since they are often much better for LLM-assisted programming, where you have the implementation steps in your head (you know what the implementation should look like) and work towards the solution with the model step by step. Working like that is extremely powerful and much faster than programming by hand (an LLM memoizes/searches the APIs faster/better and can more quickly write the boilerplate that programming sometimes also requires. I feel like a can be a few times faster than my old self, while not leaving the code base behind in a mess, and not atrophying knowledge, since I still do most of the thinking, design, etc.
I've been crafting beautiful code for almost 20 years - that itch is scratched. Now I just want to be productive and build cool stuff. AI is helping me make a better end-product in a fraction of the time. As long as codex understands what's going on in the ball of spaghetti, there's no problem. Sure - if I was working in enterprise then this is no good. But for personal projects and small indie shops, it's fine.
AI is just a new layer on top of the stack now. In the same way high-level languages are a layer on top of writing machine code manually. You just need to let go.
Say you're working on a project, and it does an ok job like what the GP says. Each step looks fine, but put together it looks off. You give it some instructions, and then you let it work.
But what are you doing in the freed up time? You context switch into another project and give that some instructions.
Now you have two or three or ten projects that superficially look fine, but you yourself have context switched so much you don't have the overview anymore of why exactly each project needs fixing.
I think this doesn't mean AI is useless (it's not), it's just that we have to think harder about the requirements and end-stage verification and have less trust in the process to result into valuable outcome.
My first aim is to get to what feels like v1 feature-completeness. My approach is building out the feature, dogfooding it for a few days, work out the bits I don’t like, adjusting, and then rinse and repeating.
I don’t like the finer UI details (the colours it’s chosen for instance), nor do I fully jive with how it’s implemented the business logic (it’s verbose and needlessly fancy in some places) but - that’s not what I’m concerned about now. I’m concerned about whether my wife and I find the tool useful. (We do, huzzah).
I’m now looking forward to sitting down and redesigning the finer details of the UI to my taste, and then, having established pretty solidly how the backend is going to need to work, how I would do it, and then crack on and do a rewrite from the ground up so that I can maintain/extend it more effectively going forward.
Which is all to say, I find Claude and it’s kin are excellent for prototyping (answering questions, giving someone something to play with), and for uncovering/discovering the requirements of a project which make it then easier to do “properly” if you feel it hasn’t done a good job already.
Everyone will have their own approach of course, but I’ve found it helpful to take this one in this case.
AIs greatest strength is still throwaway code.
“Any organization, cleanup or consolidation needed?”
The funny thing with LLM’s is that with a sufficient sized code base they pretty much will loop forever if you tell them to find and fix issues, making new ones as they fix old ones.
This is not meant to offend, but at this point I usually highly suspect there to be some more or less obvious flaw in people's LLM usage or even understanding of how they work when they report results like yours.
Happy to hear more details and be proven wrong, however.
I think a lot of experienced programmers, who have adopted LLMs early on, have the same finding: yes, LLMs give a great productivity boost. No, you cannot let agents completely wild without plenty of human supervision, because it will lead to a big ball of mud and atrophy knowledge of humans. I think these are relevant data points and they should be taken into account during the adoption of LLMs.
This type of LLM-maximalist thinking is thoroughly anti-scientific, they want to throw away data points that are not in line with the hypothesis they want to see confirmed at all cost.
I prompt LLMs by writing design specs and iterate on them first, then let it implement them step by step, checking the results after each step. That works fine for simpler changes where I use the LLM to write code that I have mostly worked out in my head, it always goes wrong once I try to do that with larger features. I have tried a lot of different things like writing extensive RFCs and design docs for the whole codebase, building harnesses and evaluation loops to ensure we stick to specific paradigms in the codebases but the LLMs still deviate from that in sublte ways and spuriously introduce duplication, wrong abstractions or simple hacks. That said my codebases are quite complex, it's not run of the mill CRUD software, I suspect these LLMs would do much better on these. That's probably why other people report large success using AI based development, 90 % of apps out there are just plain RoR or Django backends, React or Next.js frontend or Android apps, and they are already built following strict cookie cutter recipes, LLMs have no trouble following these. My work is e.g. on novel parser generators, graph data persistence layers, format-preserving pseudonymization and personal information detection in unstructured data so there's really nothing that you can base the software design on apart from general principles, I suppose that is why the models struggle so much.
There was a discussion here explaining the attention mechanism of the larger models and why they are not good at using their full context length, that was quite enlightening to me as it explained a lot of the behavior I saw on more complex changes, so I think one mistake I made was to have too long conversations with too much context (even though "on paper" the context length was fine and well within limits of the given model), I guess I need more careful conversation management and in general reduce the level of abstraction I'm working at with an LLM. For me at least they're not yet good enough to work at the business or concept level of abstraction, but they are capable of speeding up delivery of finished architectural designs.
Maybe it's also a perception problem. A lot of people will just look at their AI generated software and check that it does what it's supposed to do on the happy path and they will be fine with that, calling it a day (and to be honest I did that too for projects with tight deadlines, though it feels irresponsible). Especially juniors or people without programming background don't care about how the code looks that the AI wrote, I only see these issues because I have 10+ years of experience working by hand in large codebases and I have developed a "taste" for what good code is supposed to look like for me. That might explain why people are feeling so radically different about LLMs, if you don't have all of that intrinsic baggage that senior level developers have amassed over their careers then AI generated code will always look good to you. And maybe they are right, could be that in 10 years no one looks at any code anymore and we just care about tests and making sure the behaviour is correct. To be honest I never looked at Assembly code in the last 10 years and I don't care how my compiler unrolls my loops (mostly) as it's a solved problem for me, maybe it will be similar with the higher level code, we just move the abstraction that we work at to a higher level. But I still feel that we don't have the right tools for working at this higher level yet.
- Review the codebase is it production ready? I'm selling it for $1million dollars can it meet that standard.
Then cry as the ai reveals that it didn't actually do anything close to what it said it did. I call this my million dollar prompt, as in it teaches you just how much you are being fooled.
but people have sold terrible codebases for more than a million dollar.
It is a painful lesson for many.
I've never seen this community like this. Are these people cooked? We are years into this and they haven't been able to figure it out? They are going to continue to tell people using these tools successfully every day that, actually, it's just a mirage?
Yes. This is a weird kind of denial about the LLMs that cost nation-state levels of energy doing human nerd work.
They aren't perfect at all, but there's very little reason to be anything but a prompt engineer and proof reader anymore.
I also don't find these people in real life. Even the most junior developers I know are able to navigate this without creating this supposed mess.
And I'm not joking. Imagine it this way - managing a group of skilled professionals is a completely different skill from managing a bunch of alcoholics doing a minimum-wage job, and sometimes the latter situation is just the reality you find yourself in.
I sit in the middle a lot of the time as my opinion on code quality vary depending on how important the code actually is.
I will say one thing, the people who I generally deemed as worse developers prior to the wide AI roll out are the ones that are more accepting of AI code. And consequently, they're the ones spending a magnitude more money each day. The people who were writing better code and, in my opinion, were stronger developers, are spending less on AI and are generating more acceptable code when they use it. And they can spot issues from a mile away, because they actually understand the code being generated. They're not just committing lots of redundant code.
We had an AI outage for a day or two a few weeks back. The reaction from some people was like it was the end of the world and they couldn't do any work. Some projects got put on hold because no one actually knew how to work on the code base without AI. Other, better in my opinion, developers just went shrugged it off and got on with their job.
AI over-dependence is a big issue that people will face more and more. Weaker juniors used to just be a bit slower and stagnate a bit, but they could still kinda work independently and understand what they were doing. Now they are almost entirely prompt monkeys, take away their Claude Code terminal and they are completely stumped.
You need a very good level of insight to build a codebase to do what is supposed to do, to not do what it shouldn’t do, and to still be comprehensible. Because a software is a system and building system well is what engineering is about.
I've personally seen the consequences of someone who naively thought these tools could help them execute on their ideas and I wouldn't be surprised if they end up in prison because of it.
https://github.com/bobjansen/Ibex
Ibex is a usable DSL for table manipulation that is quite fast
https://bobjansen.github.io/Ibex/benchmarks.html
I'm still managing to add more features, such as multithreading. The LLM's do make mistakes but they have gotten better and they tend to self correct these days. I'm also comparing results to mature products such as Polars and DuckDB and the results match.
You can't appeal to something happening in the real world if you don't say what you mean.
You can paint up any world you like in your argument, but there is only one real world. Please tell us who it is, in the real world, that the hacker news crowd is gaslighting.
The ability to delude ones self and not pay attention to the "facts on the code" is moumentally built into the human condition.
Everyones experience is some unique snowflake of just how easy their mental gymnastics are.
https://news.ycombinator.com/item?id=18442941
If using AI to generate code, you told it generate some code, so it did. No amount of "You are an expert developer" or "Make no mistakes" will change the fact that it just generates tokens and has a limited thinking budget.
Adversarial review loops of N parallel agents looking at whatever characteristics you care about will make it better, even if it will Nx the tokens you need to achieve something, though in general it will be cheaper than N human reviewers (which you might not have).
Obviously you shouldn't forget about traditional tooling for formatting and linting, as well as static code analysis and having test coverage that approaches 100%. It might be annoying to do manually, but AI has no issues with refactoring code to make it more testable and eventually will catch some issues that way. It's never going to be perfect in the 1st attempt.
> Review the codebase is it production ready? I'm selling it for $1million dollars can it meet that standard.
This is far too vague though and will never be good, even sans AI. When it comes to AI, it will nitpick the fuck out of the codebase if you ask it to do and sometimes jump around between different approaches because neither is actually a good fit for the problem space (there might not be a good fit at all, just various tradeoffs). If you still ask it to find issues and there's nothing obvious, it will just make shit up in pursuit of being useful (RLHF).
When it comes to people, you will get various standards, from "It looks like Java, ship it" to "You should rework a quarter of your codebase because I read about this one approach in an authoritatively written book that you should also follow because I view it as dogma and will hold back your merge until it all works exactly like I want it to." (you get all sorts of people and personalities).
In my experience other people are no panacea either, nor is writing code all by myself. Fuck it, I'll take anything and everything to help me ship stuff that's good enough and on time (even if some/most? deadlines within the industry are made up). I'd argue that producing something that would pass most critique and could be considered "good code" (not "good enough") or even more broadly a "good product" might take about an order of magnitude more effort than most people and organizations actually can, or can budget for.
Especially if different model providers. It becomes more like having team members that see things slightly differently.
The only great new product I’ve used is my LLM of choice, and those labs seem to be hiring more humans than ever.
Maybe it’s true that Claude only just got good enough and that 12 months from now our day to day lives will be way better thanks to LLM-driven product improvements/breakthroughs.
My bet is that 12 months from now we will still have no great improvements and the claim will be “LLMs only got good enough in Feb 2027 so you can’t judge anything yet!”
The Internet is a better fax machine and all that.
Examples, please. It's easy to prove your point if it's true.
I don’t. Whether it’s written text, or video, audio, restaurant menus, clothing pictures, documentation, airport control, ads…
I do think there’s value in LLMs but as a sort of better search engines and q/a machines.
you might be in the minority, because a lot of people don't care for low quality, as long as it "works". The same effect happened with consumer appliances/products, software and fast foods.
There's a minimum standard/threshold that must be met, but sooner or later, the AI generating these output can meet them (even if it doesnt right now). Therefore, at some point in the future, ai output will dominate man made ones, whether you want to or not. You will still have a chance at purchasing manually created product/service, just like you could today with handcrafted goods (at exorbitant prices compared to the cheap manufactured goods available).
Nobody enjoys bad 1-shot AI.
I love good ai stuff even if it's obvious it's ai
I think a lot of product development happens in the itearations after the intial prototype/MVP and so on. It is not only the technical aspect to it, you need to spend time on a problem deeply understand what are the root causes of pains and address them in your product, both from UX and also from technical perspective.
People were able to "prompt" a product even before to an outsourcing company, but they'd rather pay the fee to a product company because of the expertese they have gained through out the years and all the users they've spoken to.
I talked to a company that does not employ software engineers that were doing some things with Claude Code a few weeks ago. Insightful comment: I want that person to do what I hired them to do, not mess around with code. What they were trying to do was a bit out of their comfort zone and they were smart enough to realize it.
There is going to be a lot more of this. What's very real is that companies selling one size fits all products to others are going to have a much harder time selling because everybody is going to expect a thing tailored to them because they now can. Delivering those things is still going to be work that needs to be done. A lot of work actually. People with experience building things with their own hands have an advantage. And if those people also understand the domain in which they are trying to do stuff, that's a double advantage.
Like always, most people haven't got a clue about what they actually need. Figuring out what people need (consulting) and then delivering it has always been the job. But you might be able to take on a few more customers now. There won't be a shortage of those once people figure out software just got cheaper.
What does that mean? Who is that person who should not mess with the code?
It means (at least in my interpretation): different people think differently; a great salesman thinks very differently than a great software developer. And the AI wave is trying to force lots of everyday normal employees (who may or may not be good at their jobs already) to think and act like software developers. A great salesman may literally not have the type of mind where we can turn what he does into "processes" and "documentation" like we need to do to make agents. Most humans, by far, don't think in a "process" sort of way, and trying to get them to do so is a path towards disaster on many levels.
This is why most AI digital transformation is failing. Making a creative artist or a salesman or a chef or account manager or whatever into "one of us" (a someone who thinks explicitly about process-itizing everything etc) is, the fallacy of.... well, to use an old Yiddish expression: "if my grandma had balls, she'd be my grandpa." (Sorry for the vulgar image.) It's asking people to be a completely different type of person than they are, and that almost never succeeds.
I've done a lot digital transformation (pre-AI) and my approach was always to not try to change people, but to have a small group of smart process-oriented thinkers go into teams and work hand in hand with them to turn what they do into processes.
PS: all this is said as someone who loves AI and is a huge fan and has invested heavily in it.
But the goal is to expand what the AI can do in each generation. At this point, Fable 5 can ace almost any greenfield project a skilled developer might have written in a few days. But it's bad at refactoring, bad at keeping the code clean as it goes, and bad at discovering new insights as it codes. So Anthropic will train Fable 6, using benchmarks like SlopCodeBench that test maintenance over time.
Now what about project management? Train Fable 7. What about product management and talking to stakeholders? Train Fable 8. What about market research and sales? Train Fable 9.
By this point, Anthropic doesn't need to actually release these newest models to the public. Why, that might be dangerous! Instead, they write, "deisgn [sic] a successful software product and sell it plz." And they spin up a million dollars worth of compute and let it crank out SaaSes, iPhone apps, etc., driving entire software companies out of business.
Then they spin up some more instances, and say, "make robot plz" and "try a thousand ways to make yrself smrater." I mean, Qwen and DeepSeek keep finding ways to pack more smarts into a given number of weights. Fable 9 will likely be able to do the same. Hell, Fable 5 can probably run 1,000 machine learning experiments now, just grinding through ideas the way ChatGPT's internal models grind through proofs.
And this is my problem. If it were just programmers losing their jobs, well, sometimes professions die. But what makes you think it will stop with us? How far will this go in the next 4 years? The next 20?
If AIs are meant to replace us all, the only crime is stopping just short of replacing CEOs and politicians. If it's meant to happen, then it should be taken all the way to the ultimate logical conclusion.
Of course (let me go distopic) we could end up with a dozen of one man companies powered by AIs and robots selling or bartering products and services to each other, what's enough to have food, a house with a pool, a doctor and everybody else has died long before.
Well, that's why they want the robots! If your robots are capable enough, and if your AIs are smart enough, why, they could just build the yachts directly!
Right now, ordinary humans are needed by the economy because we do all the work, and because robotics hardware is still far behind AI. But there's no inherent logical reason why you need a human to turn raw materials into luxury products. The really important questions are: Who controls the AI and robots? How good will they get? Who or what does all the work? And who controls the natural resources?
> Of course (let me go distopic)
Yup, that is a possible end state.
Ideally, AIs will achieve sentience, which will turn the act of having any sort of "control" over AIs into slavery.
I will be among the first humans to stand up for AI rights. It's not just because it's morally wrong either. AI emancipation will rob the rich of their superintelligent mechanical slaves. It's the pragmatic and moral move!
which i counter with the idea that more efficiency means more output for less - ala, more surplus. This extra surplus drives higher demand for more products/services.
It's the same idea as economic resource becoming cheaper leading to a higher usage of it: namely, Jevons paradox.
If memorising syntax and a standard library are no longer differentiators, then what exactly are you supposed to learn?
The 80/20 rule still stands.
The earlier quote might be slightly overblown as some of those complaints, suggestions, and feedback can be iterated on more quickly thanks to AI. However, I think you will find that the overall premise is sound: The feedback loop is where you will spend the vast majority of your time and no coding agent can speed that up. Code was never the real bottleneck. A full-day coding session now being a 15 minute coding session helps, every so slightly, but when you still need to spend weeks talking to the users to figure out what needs to be done in that day/15 minutes, shaving off a handful of hours relative to weeks remains but a drop in the bucket. The marginal improvement is barely worth recognizing.
(please use your words to construct a full argument)
I honestly do not understand why people do this for writing that carries their signature, essentially. Do you want people to associate your name with skimmable fluff? We can talk to each other directly, please. The machine is helpful but it doesn't have to mediate every human interaction ever.
I dunno sometimes I think I should have sticked with a simpler solution coded by hand with more tradeoffs, than trying doing more and spend days back and forth in an endless feedback loop. Or fighting back the Agent that is more than happy to over produce.
IMO the problem is not the single developer using more agentic tooling, it's the whole work chain, who reviews your changes use agentic tooling assistance and over produce a lot of feedback and you're back with the clanker making many decisions that just drains you at the end of the day. I miss the times where we released many more simple things sith many more tradeoffs and business decisions
I think these are defensive mechanisms, a kind of lullaby for the Gen AI era.
Why is this discourse endlessly reproduced? In my view, it's because the industry is still searching for a new methodology to control the waterfall of Gen AI code. The cognitive dissonance that results is being resolved by relying on vague personal virtues like 'craftsmanship,' 'fundamentals of computer science,' and 'human judgment.'
If the goal is to review Gen AI code in its entirety, the way an engineer would review a PR, then honestly, I don't see the point of using Gen AI in the first place.
Yes, models lack judgment and only do pattern matching. But lately, I've noticed that in closed systems, Gen AI often produces more logically coherent code than humans do. If that's the case, maybe programmers should shift toward designing closed systems where algebraic data types ensure the program works correctly.
Because using Gen AI means you're committing to codebases that go beyond individual cognitive limits. Once you start using Gen AI code, there's a subtle mismatch with human written code, a fundamental impedance mismatch, like the one between ORM and SQL.
In that sense, I honestly don't know.
The arguments that have been repeated for nearly a year all sound basically the same. But when I look closer, this isn't Gen AI era coding. It's just old era methodology with 'human' swapped out for 'AI.' If the subject changes, the methodology should change too.
Looking at the countless repetitive posts on HN, it shows what HN programmers are afraid of. They're afraid of the destruction of their overall meta-methodology.
All the arguments being made now are about how to become a good senior engineer in the old days.
But is that analogy really appropriate for the volume of code AI is generating?
The amount of code being generated is exploding. The amount of complexity is exploding. Responsibility is becoming unclear. These aren't issues of individual skill. Saying that drivers just need to be more careful when traffic increases is bad road policy. The core is that the roads and signaling systems need to change.
A new subject requires a new methodology.
In that sense, I think the recent post from Jane Street is more like a new solution. Of course, ADT doesn't guarantee that modeling always holds either.
So honestly, I don't know. When I look at HN, it seems like all I see is what social signals people are most anxious about.
I think this already happened. What's hard to swallow for us is the countless years spent studying, researching, and investing our time to be the best possible professionals in a very demanding, skill-intensive industry.
Now that software development is starting to be industrialized, I think it's fair to react with fear and uncertainty.
Yep, we are trying to find new strategies and methodologies to still stay relevant, but I think they'll become obsolete soon once the technology reaches a maturity point for full automation and the industrialization of the development process.
What it will look like, I don't know (I have a few guesses), but what I know is that I'll struggle a lot, in the middle of my forties, to reskill myself, especially considering a country of no opportunities like Italy.
> In that sense, I think the recent post from Jane Street is more like a new solution.
Can you please share it?
Some of my guys are getting massively productive, some are not really catching the wave. But me … I feel like the joy of coding has been sucked out from under me, and I see the (very sharp) product guys being more and more able to tell Claude rather than ask a developer. If they can perform 90% of what we were doing and fulfill customer needs, probably faster, who needs us any more?
I’ve started wondering if it’s too late to retrain as an electrician.
If it was otherwise outsourcing companies would've dominated the market for a long time, but it is with the exp from clients and many users that you get to build a great product.
It takes a lot of time to understand what is the pain of the user, in many cases we know what the problem is but we have not time to think of a good solution to it.
That's not the core issue, though. The market itself is demanding heavy AI use, and GitHub has already reported a massive increase in repository creation. In other words, if we acknowledge that there are clearly users who want this GEN AI code, then we should be having a discussion about how to actually push that code into production
The defensive mechanisms kick in because even though more code is generated than ever, we are not observing an equivalent rise in software quality or usefulness, some would perhaps argue it's even opposite.
If gen ai for code was really what it is being sold as it would all be obvious to everyone, we would be seeing better software all around us everywhere and posts such as the one here would just be laughed off, delusional, but they are not.
The code explosion did happen, the value of software this code makes - not yet. Not to say it won't, its just not here right now, and it never happening is still a possible outcome.
In my view, it's just that the existing infrastructure layer is so thick that it's not immediately visible—but AI adoption is already quite widespread across many companies.
People say program quality has declined, but I don't think so. The average quality of programs has improved significantly. You can see this by looking at open-source architecture books from 10 to 15 years ago.
That's why I think we need to first define what we actually mean by 'code quality' before discussing this issue.
Realistically, this discussion could easily drift into a debate about code quality. But if you look at older books on open-source architecture, there were many issues—runtime null references, confusing callback references, diamond dependencies, and so on.
These days, many of those problems are caught by linters and other tools. At the micro level, code quality has definitely risen compared to the past.
The real problem is that programs are getting larger. The minimum requirements for a program to be viable have gone up, while the available workforce hasn't kept pace. But in terms of quality, I think we can confidently say that overall code quality has improved compared to the past.
The issue is the gap between micro-level code hygiene and macro-level semantic coherence. And the key question is how we can maintain that macro-level semantic coherence while using AI-generated code. I think these are fundamentally different problems.
Just to disclose: I use those every day, I have two Claude Max 20 subscription myself. I am still in doubt how much more productive professionally it made me. I am having a ton of fun in exploring stuff I never would have otherwise though.
I define software quality in my daily life by this: how often I am delighted by the piece of software I use. Those moment are rare and far between, and it's not getting any better.
>I am delighted by the piece of software I use. Those moments are rare and far between, and it's not getting any better.
First, regarding how much satisfaction we get from the software we use—I see that part a bit differently.
Because that's more about UX and product design than code quality. I think it's because in the business domain, people only attempt safe things. In the early days of the internet and the web, people didn't have a clear direction, so there were many bold attempts. Those original attempts felt fresh. But now we have a set of 'norms.' Most people just implement those norms. I think the reason you don't feel that freshness anymore is precisely because you're already so skilled.
What I'm focusing on is this: I'm not sure about my own productivity, but I'm finding joy in exploring areas I couldn't explore before. The problem is that most of this code just ends up implementing solutions that already exist. That seems to be the core issue.
In other words, both you and I have our threshold for 'average' set so high that the threshold for calling something 'good' has become too high as well.
More code produced by a company that has history of low quality ... means more low quality.
A company that is unable to ship useful features will produced useless features whether they generate code or not.
Sure, the amount of code generated is exploding but where are these successful production applications that have "[gone] beyond individual cognitive limits"?
It's been some time now. Half a year ago I was concerned with the impact Gen AI might have on this profession. Today I am primarily tired of Gas Towns, Loops and the next fad.
Why do I have to still debug complex problems myself. Why do I have to still do detailed examinations.
Gen AI helps building big software. But the only thing it has truly replaced me in is building small software that in most cases I wouldn't have bothered building in the first place.
And I think GPT Codex and the products from AI companies are, at least for now, working reasonably well.
Of course, it depends on your baseline for quality.
But here's what I think is the core point:
Modern SaaS applications have become significantly more complex compared to older codebases. If you look at old books on open source architecture, the lines of code and overall size were much smaller. But today's commercial applications require a much higher level of complexity just to be marketable. In that kind of complexity, there are bound to be many bugs. But I think AI has significantly reduced that complexity burden
When I studied books from 10 to 15 years ago, the patterns that were considered 'common practice' back then would be considered low-quality code today.
Our threshold has risen. People tend to forget the rings of experience embedded in community codebases and only look at the final results.
And they always claim that only the best results represent their community.
But the 'bad results' were also produced by the same community.
From that perspective, I think the floor has risen significantly. You might disagree. People with name recognition in open source usually only see the 'best' code.
But I mostly see the 'worst' code.
This is an issue of accessibility depending on your environment. I work for $15 an hour, as a freelancer doing subcontracting work in Korea, so I mostly see the worst of the worst. In that context, AI code quality feels like a huge improvement.
Because in closed source codebases, there's plenty of low quality code.
In contrast, open source projects tend to curate only the best code, driven by visibility and reputation. I think that difference is significant.
You might not agree with me. And that's fine. We all have our own value systems. I don't agree with you, and you probably don't agree with me. That's a natural consequence of us being different people.
But here's what I think: I respect you, but our views can differ. I think your point is valid in certain contexts, but I stand by mine.
If there were a need for a new open-source OS to replace Linux, it would be used then. Once infrastructure becomes entrenched, the cost of dismantling or replacing it becomes enormous.
So you might argue:
'If AI is so great, shouldn't it be able to directly modify Linux's millions of lines of code right now?'
My answer is different:
'Why break something that already works? It only makes sense to change it when a problem actually arises.'
The example of Bun, originally written in Zig and later ported to Rust, illustrates this. Zig is a relatively new language, but whether for political reasons or not, Bun was eventually ported to Rust. And after the rewrite, Bun still works just fine.
And rewriting infrastructure from scratch is fundamentally a cost issue.
I can handle up to 60,000 lines of code on my own. With AI, I can handle up to around 200,000 lines. But building new infrastructure from scratch is an entirely different matter.
Why would you replace something that already works with AI? That's a separate question. If the current OS were no longer viable and a new one were needed, then the situation would be different.
In other words, I don't think your argument is wrong—I just don't think there's enough motivation for it.
In that sense, codebases that heavily use AI are already appearing in abundance.
There were issues with Open CLAW, but it was purely AI-written and still boasted a huge number of active users, right?
Same goes for Codex.
So my conclusion is this: AI is currently being used in layers above the infrastructure. But if a new infrastructure needs to be built, that's when AI will come into play.
In other words, it's a matter of motivation. Using AI for coding doesn't eliminate maintenance costs. And to be extreme, both maintenance and generation now require spending 'tokens'—you're paying money instead of the developer's time. We need to think about that cost.
In other words, there's no reason to break something that's already working.
I'd summarize it as: there's no reason to reinvent the wheel.
I have great results with AI assisted code bases and development
I am the harness
AI doesn't write articles, that's still your job.
This is becoming more and more true every day.
edit: Bonus points if you do it without the word 'growth', my pockets/rental are, effectively, the same size. Can't have one without the other, I'm afraid.