‹ BackHN Continuity

Thread

Coding is not solved

584 points · 544 comments · firstSpeaker

  1. antonmks · · focus · HN ↗
    GitHub Copilot is now written entirely in Rust, with AI agents doing most of the porting work. The migration cost about $120,000 in AI token usage plus about three weeks of a developer's time. The effort updated the runtime module-by-module until the job was completed, spanning over 135 releases across a 14.5-week time period. 430,000 lines of TypeScript were converted into 800,000 lines of Rust.
    1. Shank · · focus · HN ↗
      Porting a system to rust without changing the observable behavior is not that difficult with AI, and porting to a more strict language is not that remarkable. I have a tough time understanding why people equate straight shot porting where a test suite already functionally documents the behavior or where the prior application can be used as an oracle with success in all coding tasks. I would be far more impressed if someone did a clean room implementation of all of GitHub Copilot, from scratch, and got to a better point than the TypeScript or port codebase.

      I have no doubt that if you provide any AI system with an oracle with expected behavior that it can match that oracle with some amount of $ and tokens. I haven't seen any demonstration of anything else. Rewriting a codebase was always a challenge for humans not because of complexity, but because of the time and effort involved in matching the old version's prior behavior. It doesn't have anything to do with the serious level of work required to build something truly new from scratch in a performant way.

      1. rfgplk · · focus · HN ↗
        Seriously? I have no idea where this cognitive dissonance comes from. Or are people just lying (outwards or to themselves)? A rewrite of this magnitude would easily take a skilled human team months if not years to finish. This is on top of Rust not being an easy language to work with. Which, btw, is the sole reason why not everything is written in C/C++/Rust.
        1. Shank · · focus · HN ↗
          I'm absolutely saying that AI has sped up the porting and rewrite process! It is amazing! But the reality is that rewriting has been part of programming culture since time immemorial. People want to rewrite for performance or for other reasons all the time, and the cost is now relatively low (i.e., now it's an opex line item in cash instead of time investment). But that doesn't mean that all of coding has been solved.

          For example, any amount of software development involves fixing bugs, getting feedback from users on ideal workflows, an iteration loop of performance and bug tuning, etc. AI cannot simply create, from scratch, perfect software. Even using the SOTA models on max effort does not produce bug free software of any meaningful complexity or innovation out of the box. All that has changed is that the act of physically writing code and implementing existing patterns is now effectively a marginal cost.

          Most line of business software is not e.g., delivering a company's income. Most software is in back-of-the-house internal products that do various internal tasks. I have no doubt that these processes are now far easier to build.

          If the new Copilot is so great, why is it completely out of the current zeitgeist when compared to Codex and Claude Code?

        2. zamalek · · focus · HN ↗
          The fact that it's Rust should be held against the LLM, no for it. Languages with greater type safety are a massive crutch for LLMs (it's also why using an LLM to manage your NixOS install is pretty fucking awesome).

          Make it port some Rust to JS, see how that goes.

          And Rust isn't a super difficult language to use on a daily basis. Sure, the initial learning curve is obnoxiously steep, but it's arguably easier to use than other languages once you get past that.

          The LLM crowd have this habit of equating something that they don't understand with requiring some kind of advanced skill.

          1. keeda · · focus · HN ↗
            Rust to JS? Pffft, how about reverse engineering old games without source code and porting them to JS?

            <a href="https:&#x2F;&#x2F;georgzoeller.com&#x2F;blog&#x2F;posts&#x2F;what-reverse-engineering-and-modernising-an-old-war-game-tells-us-about-the-econ&#x2F;" rel="nofollow">https:&#x2F;&#x2F;georgzoeller.com&#x2F;blog&#x2F;posts&#x2F;what-reverse-engineering...

            1. zamalek · · focus · HN ↗
              &gt; To JS

              &gt; simple C++&#x2F;SDL to TypeScript&#x2F;Three.js

              Was that misrepresentation intentional?

              1. keeda · · focus · HN ↗
                Is the browser running TypeScript or JS?
                1. zamalek · · focus · HN ↗
                  What a browser runs avoids the point of my original comment entirely. Is JS strongly typed or not? Is TS strongly typed or not?
                  1. keeda · · focus · HN ↗
                    Not really, your original comment was about Rust being a &quot;massive crutch&quot; for LLMs because it&#x27;s strongly typed. In the link I posted agents are literally porting ancient binaries -- i.e. no source code, let alone the luxury of types -- to the web.

                    In that context, discussing whether TS or JS are strongly typed -- especially when TS is a straightforward translation to JS -- is a diversion from the main point that LLMs have already demonstrated something much, much harder.

                    1. zamalek · · focus · HN ↗
                      That&#x27;s an extremely creative argument, that doesn&#x27;t address anything i said at all.
Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.