• Scrollone@lemmy.zip
      link
      fedilink
      English
      arrow-up
      76
      arrow-down
      1
      ·
      3 days ago

      Yeah exactly. “Just” 240 MB, it’s still a lot for a glorified chat app

        • VibeSurgeon@piefed.social
          link
          fedilink
          English
          arrow-up
          4
          ·
          2 days ago

          I’d be willing to bet $100 that AI assistance was involved in creating this new client, yes.

          Similarly I’d bet the same amount that AI assistance was involved in building the former electron-based client

        • ryannathans@aussie.zone
          link
          fedilink
          English
          arrow-up
          12
          arrow-down
          1
          ·
          3 days ago

          Rust apps seem to always be on the heavy side, maybe depends how much debug info they leave in

          • fartsparkles@lemmy.world
            link
            fedilink
            English
            arrow-up
            37
            ·
            3 days ago

            Indeed, they’re probably shipping a backtrace symboliser, and since there’s no system-wide equivalent of libc to link against, they’ll be including the entire Rust standard library with the binary too.

            My other hunch is the Krisp noise cancellation ML model is a huge chunk of the memory footprint.

          • threeonefour@piefed.ca
            link
            fedilink
            English
            arrow-up
            9
            arrow-down
            1
            ·
            2 days ago

            I once played around with reverse engineering a Rust program. I compiled the optimized version of the standard “hello world” program which somehow turned into 50,000 lines of assembly.

            It looked like it copied over dozens of functions from libc and the data section was filled with every single possible error string “file not found”, “connection timed out”, etc. as if there was a possibility of hello world generating an access denied error.

            • henfredemars@infosec.pub
              link
              fedilink
              English
              arrow-up
              6
              ·
              2 days ago

              Was your C hello world program statically linked? I believe Rust includes its libraries whereas the typical hello world does not. Static linkage generally brings in large amounts of unused code.

            • boonhet@lemmy.zip
              link
              fedilink
              English
              arrow-up
              3
              ·
              2 days ago

              Rust has static linking, you get the necessary (and some unnecessary) parts of the standard library in your binary instead of the user having to install the library the way you have to have a libc installed. Makes for fatter binaries but much easier compatibility.

      • zergtoshi@lemmy.world
        link
        fedilink
        English
        arrow-up
        11
        ·
        2 days ago

        Windows 98 required far less disk space and was a complete operating system - that is if you consider Win98 an operating system…

    • fartsparkles@lemmy.world
      link
      fedilink
      English
      arrow-up
      39
      ·
      edit-2
      3 days ago

      Even the guys who invented Electron (developers of the Atom text editor) stopped using it years ago and switched to Rust when writing their new editor, Zed, and its UI framework GPUI (which Discord will be using too).

      • henfredemars@infosec.pub
        link
        fedilink
        English
        arrow-up
        8
        ·
        2 days ago

        Maybe we don’t want to use JavaScript for literally everything.

        It’s great to see it. I wonder how much of this push comes from the high price of memory.

        • VibeSurgeon@piefed.social
          link
          fedilink
          English
          arrow-up
          4
          ·
          2 days ago

          The price of memory-thing is probably not that important as compared to the AI-assisted coding thing. Making things in Rust when you have access to AI tools is dead simple, which was always the argument for making things in Electron. Porting things from one language to another also happens to be one of the sweet spots for AI coding tools, they thrive on tasks that have very clear specs - an already existing codebase with tests is just about as clear of a spec as you can get.