• Ŝan • 𐑖ƨɤ@piefed.zip
    link
    fedilink
    English
    arrow-up
    3
    ·
    53 minutes ago

    Microsoft is absolutely peerless in being able to take great ideas and simple fuck the eternal shit out of þem. It’s truly astounding.

  • HexesofVexes@lemmy.world
    link
    fedilink
    arrow-up
    15
    arrow-down
    1
    ·
    5 hours ago

    The rust part, if done well, would be a good step.

    Then again, coding in rust is pain, and given how young it is AI is unlikely to manage well with it, and there isn’t the technical ability in rust present to fix what breaks.

    • addie@feddit.uk
      link
      fedilink
      arrow-up
      9
      arrow-down
      1
      ·
      4 hours ago

      Indeed.

      In some ways, this kind of thing is ideal for Rust. It’s at it best when you’ve a good idea of what your data looks like, and you know where it’s coming from and going to, and what you really want is a clean implementation that you know has no mistakes. Reimplementing ‘core code’ that hasn’t changed much in twenty years to get rid of any foolish overflows or use-after-free bugs is perfect for it.

      Using Rust for exploratory coding, or when the requirements keep changing? I think you’ve picked the wrong tool for the job. Invalidate a major assumption and have to rewrite the whole damn thing. And like you say; an important choice for big projects as choosing a tool that a lot of people will be able to use. And Window is very big.

      They’re smoking crack, anyway. A million lines per dev per month? When I’m doing major refactoring, a couple thousand lines per week in the same language, mostly moving existing stuff into a new home, is a substantial change. Three orders of magnitude more with a major language conversion? Get out of here.

    • UnfortunateShort@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      arrow-down
      1
      ·
      4 hours ago

      I mean, Rust has the massive upsite that it won’t compile in many cases if you fuck things up. Then again, embedded or generally low-level driver-y stuff is still in its infancy in Rust. Relative to C/C++ that is.

      There is stuff that you need that has no official Rust support. There is poor documentation and half baked frameworks. There are examples being silently outdated, breaking changes between framework versions, and nighlty-versions from Github mixed in to fix them. And then of course plenty of timing and hardware dependent things you will need to do yourself.

      I do this for a living and personally tried to use AI here and there to help me out, but oftentimes it fails miserably. Not always, but very often.

      • MashedTech@lemmy.world
        link
        fedilink
        arrow-up
        4
        ·
        3 hours ago

        Rust helps you resolve memory bugs. Not logic bugs. Yeah, it’s going to be new memory safe code… But it won’t be bugfree code.

  • kibiz0r@midwest.social
    link
    fedilink
    English
    arrow-up
    24
    ·
    7 hours ago

    Tech bosses have well and truly lost it.

    Consider that:

    • Code is primarily to communicate from human-to-human, and only incidentally for computers to execute
    • A codebase that is 30+ years old has an absolute shitload of learnings incorporated into it, much of it very subtle
    • Languages are, in fact, different. So some things cannot be directly translated with exactly the same semantics, so devs will need to fully understand the intent and resolve ambiguities
    • A million lines per month is a lot of text for someone to successfully interpret and translate without losing any subtleties
    • SpicyLizards@reddthat.com
      link
      fedilink
      arrow-up
      12
      ·
      edit-2
      6 hours ago

      And 1 million lines to truly review. Reviewers are used to their own heuristics based on common and critical mistakes to find errors. I reckon AI errors won’t follow familair patterns, making reviews even more tedious.

      • kibiz0r@midwest.social
        link
        fedilink
        English
        arrow-up
        10
        ·
        5 hours ago

        Yeah…

        Human mistakes tend to 1) look like mistakes, and 2) are surrounded by lots of hints that the author had trouble with that section of code.

        AI mistakes tend to 1) look like regular code, and 2) look just as confident and effort-ful as the rest of the code.

  • elgordino@fedia.io
    link
    fedilink
    arrow-up
    30
    ·
    9 hours ago

    “Our North Star is ‘1 engineer, 1 month, 1 million lines of code.’

    What could possibly go wrong

  • Avicenna@programming.dev
    link
    fedilink
    arrow-up
    7
    ·
    edit-2
    7 hours ago

    this seems like a research project rather than a main line policy change:

    "Just to clarify… Windows is NOT being rewritten in Rust with AI.

    My team’s project is a research project. We are building tech to make migration from language to language possible."

    Ofcourse the end goal remains the same: try to produce systems that can be maintained by a significantly reduced number of programmers/software engineers, which can only work if AGI was actually achieved in near future so that the senior coder gap produced by this approach can be filled by AGI coders. If not, I think we will enter an era of tech where first software engineering will first become highly undesirable (due to reduced number of entry level jobs) and then achieve a god-like status because there are not enough senior software engineers to support all the tech infrastructure build on AI coding agents which are not fully autonomous because they lack/can’t learn critical reasoning skills/software experience unlike entry level coders which can.