How we made claude.ai 3x faster in two weeks

(claude.dev)

80 points | by matthieu_bl 1 hour ago

24 comments

  • smy20011 31 minutes ago
    The way Claude did it is fight entropy with entropy.

    "Add a static composer into the HTML" <- This seems like something can be done with SSR?

    "For faster navigations, we kept the composer mounted between conversations" <- Your SPA should cache this between pages, why fetching it every time? Or you need better routing for your react components.

    "cheap first-character check before the regex" <- Should we cache compiled Regex instead?

    I think even 1.3 sec to load the front page is unacceptable. Something need to be reworked from basics (SSR, chunk-based rendering) to solve the problem. Focusing on invidual benchmarks may miss the opportunity.

    • rustystump 12 minutes ago
      The amount of complexity added for the gains is depressing. I am confident a human and about 5 minutes with chrome debugger would yield better results with a fraction of the complexity at a fraction if the cost and in a fraction of the claude baby sitting time.

      Reading this shows the authors have a profound lack of fundamental understanding on how to effectively optimize in the web domain.

      This isnt claude being bad but how wild it is watch people from the cutting edge of ai brag about pretty mediocre gains.

  • binlog 53 minutes ago
    Step 1 - make a website that takes 3 seconds to load a blank page.

    Step 2 - bring it down to 1 second and pat yourself on the back.

    • xnx 40 minutes ago
      Correct. A web page is fast by default. Everything that is added makes it slower.
  • hungryhobbit 1 hour ago
    How about you make Opus 5.5 actually work?

    I had it try to prepare a code review for me. Not only did it refuse, it refused to even tell me what the prompt (written by another Claude!) was. Why?

    When I had another model read the session (all of the "stupider" models handled it just fine) it explained that it had the word "reasoning" in it

    That's the entirety of Anthropic's billions of dollars of research: any prompt with the word "reasoning" is trying to hack Claude to figure out how it reasons!

    A model like that should never have gotten out of QA, let alone been released.

    • dolmen 3 minutes ago
      This issue is mentioned on the Opus 5.5 post [1] from Anthropic (no idea if it has been added after your rant):

        > Don’t ask it to show its reasoning in the reply
        >
        > What to do. Remove requests to reproduce its internal reasoning in the reply from your prompts and instructions.
        >
        > Why it matters on Opus 5.5. A request to reproduce its internal reasoning in the reply can be declined. It’s one of the flag categories.
        >
        > How. Ask Claude for what you need instead, for example, “Explain why you chose this approach in three sentences.”
      
      [1]: https://claude.dev/blog/getting-the-most-out-of-opus-5-5/
    • bitpush 46 minutes ago
      I understand the frustration but shows a lack of critical thinking. Esp when you start with 'How about ..'.

      This blogpost is about frontend performance. It'll be akin to you commenting on a swift blogpost saying 'How about Airpods noise cancellation'. Sure both are Apple, but they are wildly different teams.

      • hungryhobbit 29 minutes ago
        This is a techie discussion forum.

        In such a forum, it seems to me like it's fair game to point out that the company patting itself on the back about how great they are at programming (as evidenced in the article above about their 3x speed improvement) ...

        ... can't even make their latest model handle basic English without refusing to work.

    • vikramkr 39 minutes ago
      Probably it thinks you're doing some sort of system prompt exfiltration/distillation attack. Also what even is the workflow you're trying to have it do? It's doing code review but you're having it read some other AI models prompt/session history? Are you doing code review or like session history retrospectives?
    • post-it 36 minutes ago
      > When I had another model read the session (all of the "stupider" models handled it just fine) it explained that it had the word "reasoning" in it

      Did it explain it did it hallucinate?

      • hungryhobbit 18 minutes ago
        This happened at the classifier level, there was no "Claude thought X about it (hallucinating or otherwise)": this was a glorified regex deciding Claude couldn't work on a prompt (a code review prep) because it contained a string ("reasoning") it didn't like.

        It's more or less the same mistake we've seen Anthropic make repeatedly with it's brain-dead regex-based Fable/Mythos gates.

    • railgunmerlin 59 minutes ago
      seems a bit weird to complain about the model issues in a post about the harness/sites?
    • frumplestlatz 40 minutes ago
      I’ve had the same thing occur five or six times over the past week; they seem to be attempting to prevent anything resembling chain of thought extraction.

      Every single time it triggered, it was due to a prompt written by their own model in a dynamic workflow. The self-serving nanny oversight has to go.

      The fact that they label model distillation as an “attack” is genuinely hilarious after they “distilled“ their models from all of our work, and continue to do so.

      I believe AI is here to stay and an incredibly powerful tool, but these companies, and especially Dario and Altman, are the very last people I want to see in charge of it.

      • copperx 28 minutes ago
        > “distilled“ their models from all of our work

        They distilled all digitized human knowledge and artifacts and they're now complaining about someone copying their outputs saying it's a "national security concern."

        I'm not sure about how to classify that. Hilarious? Pathetic? Sad? Hypocritical? Hyperdramatic? All of the above?

    • Marciplan 52 minutes ago
      [flagged]
      • hungryhobbit 48 minutes ago
        Again, I used a slightly older model in the same series, Opus 4.6. It read the same prompt without any problem whatsoever. Also, a (non-Opus 5.5) Claude wrote the prompt in the first place.

        Opus 5.5 literally refused to work OR EVEN TELL ME WHAT I'D "SAID" when it read that prompt.

        Nothing to do with skill or the user at all: same exact prompt, three different models ... two worked, one didn't.

      • cyanydeez 49 minutes ago
        the skill issue is "having to use a cloud model to do work of any value"

        might as well offer your life to a king to work in their fields.

  • rancar2 10 minutes ago
    Since I didn’t love the technical approach here (once one takes the humans out of the loop, there’s more ambitious things that can be done), I do appreciate the process. It’s not until the last sentence when process inspiration is revealed: “Special thanks to Boris Cherny for encouraging us to be more ambitious.”
  • altern8 50 minutes ago
    I used Opus 5.5 today for the first time hoping the writing would be more bearable and it SUCKS.

    Why can't they fix that

    • tarr11 48 minutes ago
      Opus 5.5 writing is much more concise than 5.0
      • m00x 42 minutes ago
        but Opus 5 is absolutely terrible. I'm still on 4.8 when I use Claude. I still think 5.6 Sol is the best available model outside of Astra/Fable.
      • altern8 40 minutes ago
        MAYBE, but the bar is so low... It's not that it's good in any way
  • whythismatters 48 minutes ago
    The juvenile nonchalance with which some Anthropic employees seem to be talking to their AI (wacky, sick, cook, ...) is truly bizarre.
    • ieie3366 36 minutes ago
      That’s just how people in their 20s casually communicate now. It’s mostly from tiktok
  • minimaxir 1 hour ago
    This writeup legit coincidentally matches the asking-agents-to-make-code-faster-but-with-constraints-to-stop-agents-from-breaking-things writeup I posted on Monday: https://news.ycombinator.com/item?id=49803085

    Front-end UI optimization is slightly trickier than optimizing strict algorithms, but I found that prompts to the agents to build tooling to track visual regressions are more than sufficient. The main issue (at least with GPT models) is that you have to be very explicit about the use of padding/margins/negative space.

    That said, for my front end projects from scratch, I'm staying away from front-end JS frameworks and seeing how far and fast I can get with just HTML/CSS/vanilla JS shenanigans now that agents can wield them effectively.

  • hmokiguess 11 minutes ago
    You removed the load-bearing seams didn't you
  • vikramkr 35 minutes ago
    Less a post about performance and more about their Claude tag product. I guess it makes sense that there's not actually a ton of technical detail being moved into given probably opus is the only one that knows what all the dragons were lol - but cool workflow I guess
  • pllbnk 33 minutes ago
    > $500k engineer: [X] feels slow. Make it faster.

    > Claude: On it... Done.

    > $500k: Can you make it faster still?

    > Claude: On it...

  • montroser 46 minutes ago
    Okay, now fix the WYSIWYG markdown parsing in the chat input!

    Paste in a stack trace, then try to put it in a code block. Add a newline above, then add the opening triple backticks, then arrow down and add closing triple backticks at the bottom. Opposite congrats -- you have ended up with raw triple backticks at the top, plain text stack trace, and your cursor in a brand new code block at the bottom starting where you tried to close.

    Realize you want to go put code span backticks around some identifiers you wrote out earlier? Best make sure to insert them in the blessed left-to-right order, or else opposite congrats again -- you'll end up with a mix of raw backticks and code span treatment for the text between your identifiers.

    If Claude can discover novel CRISPR enzymes, surely it can make a rich text markdown editor, no?

    • AlexErrant 37 minutes ago
      Here's a simpler bug:

      Claude Cowork still can't persistently reference a local dir, broken ever since they moved to their cloud project system, breaking many non-technical people's workflows.

  • khalic 18 minutes ago
    Love it, the kids rediscover plain HTML and optimisation.
  • guideaitools 26 minutes ago
    It's impressive to see performance optimizations of this scale shipped so quickly. Often, single-page app bloat and re-fetching states on navigation become major bottlenecks as products scale. Reducing these overheads makes a massive difference in perceived user experience.
  • RomanKornev 19 minutes ago
    The most important question is how much more unreadable the code became after all this "ratcheting the benchmark down". If you unroll a loop it will perform faster, but making changes to such unrolled code will be a mess. Will this make them ship slower overall? I'm sure at least half of it was just poorly written React code, but the other half?

    It's the same problem as overfitting in model training. If you're not measuring something it will get sacrificed.

    Or, perhaps the code quality literally doesn't matter anymore and we've reached "code quality escape velocity" where you can code as much slop as you want, the next generation of models will clean it up faster than the slop generates?

  • owebmaster 21 minutes ago
    With a simple trick: make it very slow first
  • chaordCAD 1 hour ago
    Great writeup really appreciate the detail on what actually worked vs. what didn't.
  • rvz 57 minutes ago
    Let's try this again if you want an instant 10x speed up:

    Claude rewrite Claude Code from TypeScript into Rust. Make absolutely no mistakes.

    • cpursley 21 minutes ago
      Not sure why you're getting downvoted, the Rust based tui's absolutely smoke Claude Code.
      • minimaxir 9 minutes ago
        It's an overdone Reddit-esque comment that adds nothing to the discussion.
  • datadrivenangel 55 minutes ago
    AI written slop. They need to upgrade to Opus 5.5 or switch to OpenAI for writing.
  • dolmen 40 minutes ago
    [dead]
  • robertclaus 1 hour ago
    [dead]
  • applfanboysbgon 1 hour ago
    tl;dr if you make absolute dogshit software that takes 4.38 seconds to stabilize its first paint you can make really nice headline claims by "optimizing" it later
    • sashank_1509 57 minutes ago
      Unironically true, can someone question, what is Claude desktop app doing that needs 500k+ lines of code?

      Agents complicate something that should be much smaller and simpler and then agents speed it up adding more complexity. I suppose functionally you may say this is fine but aesthetically it is hideous!

      • winstonp 23 minutes ago
        the codex desktop app bundles libreoffice's libraries. i wouldn't be surprised if claude does something similar.
      • bigwheels 32 minutes ago
        TempleOS had kernel, compiler, 2D and 3D graphics drivers + libs, and tons of games and applications and the entire thing weighed in at less than 100kloc.

        AI coding agents of today definitely bloat things up [egregiously].

        • theshrike79 23 minutes ago
          On the other hand applications on TempleOS are expected/assumed to be perfect and have no bugs. It makes things a lot simpler =)
      • applfanboysbgon 49 minutes ago
        There is nothing even functionally fine about this. The me who has programmed for a 4mhz computer with 128kb of RAM is crying inside. It's a fucking trivial interface for writing and displaying text and sending HTTP requests. You could have that displayed ~instantly on an 80s home PC. Now we have home computers that can execute somewhere between billions and trillions of instructions per second and yet a task that should take <10ms takes 4500ms. Our industry has become an absolute embarrassment.
        • Daishiman 48 minutes ago
          The Claude CLI does a lot more....
          • applfanboysbgon 44 minutes ago
            This article is about the graphical interface, not the CLI.
    • Daishiman 49 minutes ago
      Most line-of-business software has a lot of optimization opportunities. Making software optimized takes up time that can be spent building features. The fact that you can just make things go fast without having to take time away from feature building is actually pretty awesome.
      • applfanboysbgon 46 minutes ago
        Not taking 5 seconds to load text is a feature. 10x more valuable than whatever other shitty feature you're thinking of piling onto your monstrosity. Like, actually tangible valuable to users and consequently your business; Google has already done the studies at scale that demonstrate how every 100ms of delay has an observable impact on usage statistics and user retention.
  • joyeljohn3 1 hour ago
    [flagged]
  • sonar_un 1 hour ago
    This was a fantastic read. Lots of useful info in there for your own projects.