AI should only run as fast as we can catch up

(higashi.blog)

63 points | by yuedongze 4 hours ago ago

68 comments

  • blauditore 3 hours ago

    All these engineers who claim to write most code through AI - I wonder what kind of codebase that is. I keep on trying, but it always ends up producing superficially okay-looking code, but getting nuances wrong. Also fails to fix them (just changes random stuff) if pointed to said nuances.

    I work on a large product with two decades of accumulated legacy, maybe that's the problem. I can see though how generating and editing a simple greenfield web frontend project could work much better, as long as actual complexity is low.

    • bob1029 2 hours ago

      I have my best successes by keeping things constrained to method-level generation. Most of the things I dump into ChatGPT look like this:

        public static double ScoreItem(Span<byte> candidate, Span<byte> target)
        {
           //TODO: Return the normalized Levenshtein distance between the 2 byte sequences.
           //... any additional edge cases here ...
        }
      
      I think generating more than one method at a time is playing with fire. Individual methods can be generated by the LLM and tested in isolation. You can incrementally build up and trust your understanding of the problem space by going a little bit slower. If the LLM is operating over a whole set of methods at once, it is like starting over each time you have to iterate.
      • samdoesnothing 20 minutes ago

        I do this but with copilot. Write a comment and then spam opt-tab and 50% of the time it ends up doing what I want and I can read it line-by-line before tabbing the next one.

        Genuine productivity boost but I don't feel like it's AI slop, sometimes it feels like its actually reading my mind and just preventing me from having to type...

    • CuriouslyC 3 hours ago

      It's architecture dependent. A fairly functional modular monolith with good documentation can be accessible to LLMs at the million line scale, but a coupled monolith or poorly instrumented microservices can drive agents into the ground at 100k.

      • yuedongze 2 hours ago

        I think it's definitely an interesting subject for Verification Engineering. the easier to task AI to do work more precisely, the easier we can check their work.

        • CuriouslyC 2 hours ago

          Yup. Codebase structure for agents is a rabbit hole I've spent a lot of time going down. The interesting thing is that it's mostly the same structure that humans tend to prefer, with a few tweaks: agents like smaller files/functions (more precise reads/edits), strongly typed functional programming, doc-comments with examples and hyperlinks to additional context, smaller directories with semantic subgroups, long/distinct variable names, etc.

          • lukan 16 minutes ago

            Aren't those all things, humans also tend to prefer to read?

            I like to read descriptive variable names, I just don't like to write them all the time.

    • hathawsh 3 hours ago

      I think your intuition matches mine. When I try to apply Claude Code to a large code base, it spends a long time looking through the code and then it suggests something incorrect or unhelpful. It's rarely worth the trouble.

      When I give AI a smaller or more focused project, it's magical. I've been using Claude Code to write code for ESP32 projects and it's really impressive. OTOH, it failed to tell me about a standard device driver I could be using instead of a community device driver I found. I think any human who works on ESP-IDF projects would have pointed that out.

      AI's failings are always a little weird.

      • manmal 34 minutes ago

        In large projects you need to actually point it to the interesting files, because it has no way of knowing what it doesn’t know. Tell it to read this and that, creating summary documents, then clear the context and point it at those summaries. A few of those passes and you‘ll get useful results. A gap in its knowledge of relevant code will lead to broken functionality. Cursor and others have been trying to solve this with semantic search (embeddings) but IMO this just can’t work because relevance of a code piece for a task is not determinable by any of its traits.

    • qudat 3 hours ago

      Are you using it only on massive codebases? It's much better with smaller codebases where it can put most of the code in context.

      Another good use case is to use it for knowledge searching within a codebase. I find that to be incredibly useful without much context "engineering"

    • silisili 3 hours ago

      > I work on a large product with two decades of accumulated legacy, maybe that's the problem

      Definitely. I've found Claude at least isn't so good at working in large existing projects, but great at greenfielding.

      Most of my use these days is having it write specific functions and tests for them, which in fairness, saves me a ton of time.

    • tuhgdetzhh 3 hours ago

      Yes, unfortunately those who jumped on the microservices hype train over the past 15 years or so are now getting the benefits of Claude Code, since their entire codebases fits into the context window of Sonnet/Opus and can be "understood" by the LLM to generate useful code.

      This is not the case for most monoliths, unless they are structured into LLM-friendly components that resemble patterns the models have seen millions of times in their training data, such as React components.

      • manmal 30 minutes ago

        Well structured monoliths are modularized just like microservices. No need to give each module its own REST API in order to keep it clean.

    • cogman10 3 hours ago

      Honestly, if you've ever looked at a claude.md file, it seems like absolute madness. I feel like I'm reading affirmations from AA.

      • manmal 27 minutes ago

        It’s magical incantations that might or might not protect you from bad behavior Claude learned from underqualified RL instructors. A classic instruction I have in CLAUDE.md is „Never delete a test. You are only allowed to replace with a test that covers the same branches.“ and another one „Never mention Claude in a commit message“. Of course those sometimes fail, so I do have a message hook that enforces a certain style of git messages.

  • gradus_ad 4 hours ago

    The proliferation of nondeterministically generated code is here to stay. Part of our response must be more dynamic, more comprehensive and more realistic workload simulation and testing frameworks.

    • wasmainiac 42 minutes ago

      Code has always been nondetermistic. Which engineer wrote it? What was their past experience? This just feels like we are accepting subpar quality because we have no good way to ensure the code we generate is reasonable that wont mayyyybe rm-rf our server as a fun easter egg.

    • OptionOfT 3 hours ago

      I disagree. I think we're testing it, and we haven't seen the worst of it yet.

      And I think it's less about non-deterministic code (the code is actually still deterministic) but more about this new-fangled tool out there that finally allows non-coders to generate something that looks like it works. And in many cases it does.

      Like a movie set. Viewed from the right angle it looks just right. Peek behind the curtain and it's all wood, thinly painted, and it's usually easier to rebuild from scratch than to add a layer on top.

    • yuedongze 4 hours ago

      i've seen a lot of startups that use AI to QA human work. how about the idea of use humans to QA AI work? a lot of interesting things might follow

      • colechristensen 3 hours ago

        Yes, but not like what you think. Programmers are going to look more like product managers with extra technical context.

        AI is also great at looking for its own quality problems.

        Yesterday on an entirely LLM generated codebase

        Prompt: > SEARCH FOR ANTIPATTERNS

        Found 17 antipatterns across the codebase:

        And then what followed was a detailed list, about a third of them I thought were pretty important, a third of them were arguably issues or not, and the rest were either not important or effectively "this project isn't fully functional"

        As an engineer, I didn't have to find code errors or fix code errors, I had to pick which errors were important and then give instructions to have them fixed.

        • manmal 23 minutes ago

          Yeah, don‘t rely on the LLM finding all the issues. Complex code like Swift concurrency tooling is just riddled with issues. I usually need to increase to 100% line coverage and then let it loop on hanging tests until everything _seems_ to work.

          (It’s been said that Swift concurrency is too hard for humans as well though)

        • mjr00 3 hours ago

          > Programmers are going to look more like product managers with extra technical context.

          The limit of product manager as "extra technical context" approaches infinity is programmer. Because the best, most specific way to specify extra technical context is just plain old code.

          • LPisGood an hour ago

            This is exactly why no code / low code solutions don’t really work. At the end of the day, there is irreducible technical complexity.

      • adventured 3 hours ago

        A large percentage (at least 50%) of the market for software developers will shift to lower paid jobs focused on managing, inspecting and testing the work that AI does. If a median software developer job paid $125k before, it'll shift to $65k-$85k type AI babysitting work after.

        • mjr00 3 hours ago

          It's funny that I heard exactly this when I graduated university in the late 2000s:

          > A large percentage (at least 50%) of the market for software developers will shift to lower paid jobs focused on managing, inspecting and testing the work that outsourced developers do. If a median software developer job paid $125k before, it'll shift to $65k-$85k type outsourced developer babysitting work after.

      • Aldipower 3 hours ago

        Sounds inhuman.

        • quantummagic 3 hours ago

          As an industry, we've been doing the same thing to people in almost every other sector of the workforce, since we began. Automation is just starting to come for us now, and a lot of us are really pissed off about it. All of a sudden, we're humanitarians.

          • Terr_ 2 hours ago

            > Automation is just starting to come for us now

            This argument is common and facile: Software development has always been about "automating ourselves out of a job", whether in the broad sense of creating compilers and IDEs, or in the individual sense that you write some code and say: "Hey, I don't want to rewrite this again later, not even if I was being paid for my time, I'll make it into a reusable library."

            > the same thing

            The reverse: What pisses me off is how what's coming is not the same thing.

            Customers are being sold a snake-oil product, and its adoption may well ruin things we've spent careers de-crappifying by making them consistent and repeatable and understandable. In the aftermath, some portion of my (continued) career will be diverted to cleaning up the lingering damage from it.

        • A4ET8a8uTh0_v2 3 hours ago

          Nah, sounds like management, but I am repeating myself. In all seriousness, I have found myself having to carefully rein some of similar decisions in. I don't want to get into details, but there are times I wonder if they understand how things really work or if people need some 'floor' level exposure before they just decree stuff.

      • __loam 3 hours ago

        No thanks.

  • trjordan 2 hours ago

    The verification asymmetry framing is good, but I think it undersells the organizational piece.

    Daniel works because someone built the regime he operates in. Platform teams standardized the patterns and defined what "correct" looks like and built test infrastructure that makes spot-checking meaningful and and and .... that's not free.

    Product teams are about to pour a lot more slop into your codebase. That's good! Shipping fast and messy is how products get built. But someone has to build the container that makes slop safe, and have levers to tighten things when context changes.

    The hard part is you don't know ahead of time which slop will hurt you. Nobody cares if product teams use deprecated React patterns. Until you're doing a migration and those patterns are blocking 200 files. Then you care a lot.

    You (or rather, platform teams) need a way to say "this matters now" and make it real. There's a lot of verification that's broadly true everywhere, but there's also a lot of company-scoped or even team-scoped definitions of "correct."

    (Disclosure: we're working on this at tern.sh, with migrations as the forcing function. There's a lot of surprises in migrations, so we're starting there, but eventually, this notion of "organizational validation" is a big piece of what we're driving at.)

  • yannyu 3 hours ago

    I think there's a lot of utility to current AI tools, but it's also clear we're in a very unsettled phase of this technology. We likely won't see for years where the technology lands in terms of capability or the changes that will be made to society and industry to accommodate.

    Somewhat unfortunately, the sheer amount of money being poured into AI means that it's being forced upon many of us, even if we didn't want it. Which results in a stark, vast gap like the author is describing, where things are moving so fast that it can feel like we may never have time to catch up.

    And what's even worse, because of this industry and individuals are now trying to have the tool correct and moderate itself, which intuitively seems wrong from both a technical and societal standpoint.

  • jascha_eng 3 hours ago

    Verification is key, and the issue is that almost all AI generated code looks plausible so just reading the code is usually not enough. You need to build extremely good testing systems and actually run through the scenarios that you want to ensure work to be confident in the results. This can be preview deployments or other AI generated end to end tests that produce video output that you can watch or just a very good test suite with guard rails.

    Without such automation and guard rails, AI generated code eventually becomes a burden on your team because you simply can't manually verify every scenario.

    • bigbuppo 3 hours ago

      And with any luck, they don't vibe code their tests that ultimately just return true;

    • yuedongze 3 hours ago

      indeed, i see verification debt outweighing tradition tech debt very very soon...

    • catigula 3 hours ago

      I can automatically generate suites of plausible tests using Claude Code.

      If you can make as a rule "no AI for tests", then you can simply make the rule "no AI" or just learn to cope with it.

  • wasmainiac an hour ago

    It’s called TDD, ya write a bunch a little tests to make sure your code is doing what it needs to do and not what it’s not. In short, little blocks of easily verifiable code to verify your code.

    But seriously, what is this article even? It feels like we are reinventing the wheel or maybe just humble AI hype?

  • awesome_dude 36 minutes ago

    It's like a buffered queue, if the producer (AI) is too fast for the consumer (dev's brain) then the producer needs to block/stop/slow down other wise data will be lost (in this analogy the data loss is the consumer no longer having a clear understanding of what the code is doing)

    One day, when AI becomes reliable (which is still a while off because AI doesn't yet understand what it's doing) then the AI will replace the consumer (IMO).

    FTR - AI is still at the "text matches another pattern of text" stage, and not the "understand what concepts are being conveyed" stage, as demonstrated by AI's failure to do basic arithmetic

  • rogerkirkness 4 hours ago

    Appealing, but this is coming from someone smart/thoughtful. No offence to 'rest of world', but I think that most people have felt this way for years. And realistically in a year, there won't be any people who can keep up.

    • dontlikeyoueith 3 hours ago

      > And realistically in a year, there won't be any people who can keep up.

      I've heard the same claim every year since GPT-3.

      It's still just as irrational as it was then.

      • adventured 3 hours ago

        You're rather dramatically demonstrating how remarkable the progress has been: GPT-3 was horrible at coding. Claude Opus 4.5 is good at it.

        They're already far faster than anybody on HN could ever be. Whether it takes another five years or ten, in that span of time nobody on HN will be able to keep up with the top tier models. It's not irrational, it's guaranteed. The progress has been extraordinary and obvious, the direction is certain, the outcome is certain. All that is left is to debate whether it's a couple of years or closer to a decade.

        • umanwizard 23 minutes ago

          Why is the outcome certain? We have no way of predicting how long models will continue getting better before they plateau.

        • Arainach 3 hours ago

          People claimed GPT-3 was great at coding when it launched. Those who said otherwise were dismissed. That has continued to be the case in every generation.

    • airstrike 4 hours ago

      > And realistically in a year, there won't be any people who can keep up.

      Bold claim. They said the same thing at the start of this year.

      • adventured 3 hours ago

        You're all arguing over how many single digit years it'll take at this point.

        It doesn't matter if it takes another 12 or 36 months to make that claim true. It doesn't matter if it takes five years.

        Is AI coming for most of the software jobs? Yes it is. It's moving very quickly, and nothing can stop it. The progress has been particularly exceptionally clear (early GPT to Gemini 3 / Opus 4.5 / Codex).

        • bdangubic 3 hours ago

          > Is AI coming for most of the software jobs?

          be cool to start with one before we move to most…

    • yuedongze 4 hours ago

      im hoping this can introduce a framework to help people visualize the problem and figure out a way to close that gap. image generation is something every one can verify, but code generation is perhaps not. but if we can make verifying code as effortless as verifying images (not saying it's possible), then our productivity can enter the next level...

      • drlobster 4 hours ago

        I think you underestimating how good these image generators are at the moment.

        • yuedongze 3 hours ago

          oh i mean the other direction! checking if a generated image is "good" that no one will tell something is off and it look naturally, rather than checking if they are fake.

  • CGMthrowaway 4 hours ago

    > AI should only run as fast as we can catch up

    Good principle. This is exactly why we research vaccines and bioweapons side by side in the labs, for example.

  • cons0le 3 hours ago

    I directly asked gemini how to get world peace. It said the world should prioritize addressing climate change, inequality, and discrimination. Yeah - we're not gonna do any of that shit. So I don't know what the point of "superintelligent" AI is if we aren't going to even listen to it for the basic big picture stuff. Any sort of "utopia" that people imagine AI bringing is doomed to fail because we already can't cooperate without AI

    • ASalazarMX 3 hours ago

      > I don't know what the point of "super intelligent" AI is if we aren't going to even listen to it

      Because you asked the wrong question. The most likely question would be "How do I make a quadrillion dollars and humiliate my super rich peers?".

      But realistically, it gave you an answer according to its capacity. A real super intelligent AI, and I mean oh-god-we-are-but-insects-in-its-shadow super intelligence, would give you a roadmap and blueprint, and it would take account for our deep-rooted human flaws, so no one reading it seriously could dismiss it as superficial. in fact, anyone world elite reading it would see it as a chance to humiliate their world elite peers and get all the glory for themselves.

      You know how adults can fool little children to do what they don't want to? We would be the toddlers in that scenario. I hope this hypothetical AI has humans in high regard, because that would be the only thing saving us from ourselves.

      • vkou 3 hours ago

        The blueprint should start with a recipe for building a better computer, and once you do that, well, it's humans starting fires and playing with the flames.

      • catigula 3 hours ago

        Why would a "real super intelligent AI" be your servant in this scenario?

        >I hope this hypothetical AI has humans in high regard

        This is invented. This is a human concept, rooted in your evolutionary relationships with other humans.

        It's not your fault, it's very difficult or impossible to escape the simulation of human-ly modelling intelligence. You need only understand that all of your models are category errors.

        • ASalazarMX 3 hours ago

          > Why would a "real super intelligent AI" be your servant in this scenario?

          Why is the Bagger 288 a servant to miners, given the unimaginable difference in their strenght? Because engineers made it. Give humanity's wellbeing the highest weight on its training, and hope it carries over when they start training on their own.

          • catigula an hour ago

            Category error. Intelligence is a different type of thing. It is not a boring technology.

            >Give humanity's wellbeing the highest weight on its training

            We don't even know how to do this relatively trivial thing. We only know how to roughly train for some signals that probably aren't correct.

            This may surprise you but alignment is not merely unsolved; there are many people who think it's unsolvable.

            Why do people eat artificially sweetened things? Why do people use birth control? Why do people watch pornography? Why do people do drugs? Why do people play video games? Why do people watch moving lights and pictures? These are all symptoms of humans being misaligned.

            Natural selection would be very angry with us if it knew we didn't care about what it wanted.

    • Nzen 2 hours ago

      Did you expect some answer that decried world peace as impossible ? It's just repeating what people say [0] when asked the same question. That's all that a large language model can do (other than putting it to rhyme or 'in the style of Charles Dickens').

      [0] https://newint.org/features/2018/09/18/10-steps-world-peace

      If you are looking for a vision of general AI that confirms a Hobbsian worldview, you might enjoy Lars Doucet's short story, _Four Magic Words_.

      [1] https://www.fortressofdoors.com/four-magic-words/

    • PunchyHamster 3 hours ago

      I dunno, many people have that weird, unfounded trust in what AI says, more than in actual human experts it seems

      • bilbo0s 3 hours ago

        Because AI, or rather, an LLM, is the consensus of many human experts as encoded in its embedding. So it is better, but only for those who are already expert in what they're asking.

        The problem is, you have to know enough about the subject on which you're asking a question to land in the right place in the embedding. If you don't, you'll just get bunk. (I know it's popular to call AI bunk "hallucinations" these days, but really if it was being spouted by a half wit human we'd just call it "bunk".)

        So you really have to be an expert in order to maximize your use of an LLM. And even then, you'll only be able to maximize your use of that LLM in the field in which your expertise lies.

        A programmer, for instance, will likely never be able to ask a coherent enough question about economics or oncology for an LLM to give a reliable answer. Similarly, an oncologist will never be able to give a coherent enough software specification for an LLM to write an application for him or her.

        That's the achilles heel of AI today as implemented by LLMs.

        • chasd00 2 hours ago

          > The problem is, you have to know enough about the subject on which you're asking a question to land in the right place in the embedding

          The other day i was on a call with 3 or 4 other people solving a config problem in a specific system. One of them asked chatgpt for the solution and got back a list of configuration steps to follow. He started the steps but one of them mentioned configuring an option that did not exist in the system at all. Textbook hallucination. It was obvious on the call that he was very surprised that the AI would give him an incorrect result, he was 100% convinced the answer was what the LLM said and never once thought to question what the LLM returned.

          I've had a couple of instances with friends being equally shocked when an LLM turned out to be wrong. One of which was fairly disturbing, I was at a horse track and describing LLMs and to demonstrate i took a picture of the racing form thing and asked the LLM to formulate a medium risk betting strategy. My friend immediatately took it as some kind of supernatural insight and bet $100 on the plan it came up with. It was as if he believed the LLM could tell the future.Thank god it didn't work and he lost about $70. Had he won I don't know what would have happened, he probably would have asked again and bet everything he had.

        • jackblemming 3 hours ago

          > is the consensus of many human experts as encoded in its embedding

          That’s not true.

          • ASalazarMX 3 hours ago

            Yup, current LLMs are trained on the best and the worst we can offer. I think there's value in training smaller models with strictly curated datasets, to guarantee they've learned from trustworthy sources.

            • chasd00 2 hours ago

              > to guarantee they've learned from trustworthy sources.

              i don't see how this will every work. Even in hard science there's debate over what content is trustworthy and what is not. Imagine trying to declare your source of training material on religion, philosophy, or politics "trustworthy".

    • chasd00 2 hours ago

      > So I don't know what the point of "superintelligent" AI is if we aren't going to even listen to it

      I would kind of feel sorry for a super-intelligent AI having to deal with humans who have their fingers on on/off switch. It would be a very frustrating existence.

    • cranium 3 hours ago

      "How to be in good health? Sleep, eat well, exercise." However, knowledge ≠ application.

    • potsandpans 3 hours ago

      I don't believe that this is going to happen, but the primary arguments revolving around a "super intelligent" ai involve removing the need for us to listen to it.

      A super intelligent ai would have agency, and when incentives are not aligned would be adversarial.

      In the caricature scenario, we'd ask, "super ai, how to achieve world peace?" It would answer the same way, but then solve it in a non-human centric approach: reducing humanities autonomy over the world.

      Fixed: anthropogenic climate change resolved, inequality and discrimination reduced (by reducing population by 90%, and putting the rest in virtual reality)

      • ASalazarMX 3 hours ago

        If out AIs achieve something like this, but they managed to give them the same values the minds in Iain Bank's Culture Series had, I think humanity would be golden.