• Windows Latest discovered Discord and other Chromium and Electron-based applications with high RAM usage
  • RAM usage spikes from 1GB to 4GB on Discord both in and out of voice chat
  • floofloof@lemmy.ca
    link
    fedilink
    English
    arrow-up
    147
    arrow-down
    1
    ·
    17 days ago

    If there’s any silver lining to this, perhaps we can get a renewed interest in efficient open-source software designed to work well on older hardware, and less e-waste.

    • DominusOfMegadeus@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      68
      ·
      17 days ago

      Morgan Freeman: ”They couldn’t”

      I wish we could, but it’s tough to maintain optimism in the face of these sociopathic corporations’ seemingly ever-growing power

      • cenzorrll@piefed.ca
        link
        fedilink
        English
        arrow-up
        28
        ·
        17 days ago

        Open source developers are just like you and me. They’ll get fed up with the bullshit and start developing things they need with the resources they have, just like they’ve always done.

        • VieuxQueb@lemmy.ca
          link
          fedilink
          English
          arrow-up
          7
          ·
          17 days ago

          It’s always been there, why is there so many great Open Source Software out there ? Even Linus started the linux kernel because he could not afford Unix.

    • Ugurcan@lemmy.world
      link
      fedilink
      English
      arrow-up
      38
      arrow-down
      6
      ·
      17 days ago

      If there’s any silver lining to this, fuck JavaScript, fuck JavaScript wrappers and fuck all people picked JavaScript for the programming language of anything cross-platform.

      It’s unbelievable I would need 6 gbs of RAM to say a simple “hello” to my friends. It used to take 300kb with IRC.

      • [object Object]@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        17 days ago

        Even Electron apps aren’t necessarily ram hoarders: Stretchly, which is a break reminder and thus needs to always run in the background, takes something like 20 or 40 MB of memory.

    • tekato@lemmy.world
      link
      fedilink
      English
      arrow-up
      14
      arrow-down
      1
      ·
      17 days ago

      Why would you do that when you can pull 50 JavaScript libraries and wrap it in Electron?

    • XLE@piefed.social
      link
      fedilink
      English
      arrow-up
      12
      ·
      17 days ago

      “It sounds like you want low-end devices to be turned into thin clients for cloud-based operating systems. Do I have that right?”

    • warm@kbin.earth
      link
      fedilink
      arrow-up
      5
      ·
      17 days ago

      Why spend time making better software when the end user can just buy better hardware!

      • floofloof@lemmy.ca
        link
        fedilink
        English
        arrow-up
        7
        ·
        17 days ago

        That’s been the thinking for the last couple of decades at least. But it can’t continue if people can’t afford new hardware.

        • warm@kbin.earth
          link
          fedilink
          arrow-up
          3
          ·
          17 days ago

          Hardware doesnt need to get more powerful either. If we actually harnessed it, we have what we need already.

    • lostbit@feddit.nl
      link
      fedilink
      English
      arrow-up
      1
      ·
      16 days ago

      there are a shit ton alternatives. Too bad there are more average developers

  • _cryptagion [he/him]@anarchist.nexus
    link
    fedilink
    English
    arrow-up
    107
    ·
    17 days ago

    I really wish Electron wasn’t as popular as it is. It’s such a fucking memory hog. I mean, sure, I’ve got RAM to spare, but I shouldn’t need that much for a single app.

    • cmnybo@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      45
      ·
      17 days ago

      Yes, it runs a separate browser instance for each electron program. Many of the programs that use it could just be a PWA instead.

      • lastweakness@lemmy.world
        link
        fedilink
        English
        arrow-up
        36
        ·
        17 days ago

        This is what bothers me so much… Browsers should be improving their PWA implementation (looking at you, Firefox) and electron apps should be PWAs more often. Another decent middle ground Is Tauri. SilverBullet and Yaak are both so much lighter and better than anything else on my system.

      • tal@lemmy.today
        link
        fedilink
        English
        arrow-up
        8
        ·
        17 days ago

        I wonder how much exact duplication each process has?

        https://www.kernel.org/doc/html/latest/admin-guide/mm/ksm.html

        Kernel Samepage Merging

        KSM is a memory-saving de-duplication feature, enabled by CONFIG_KSM=y, added to the Linux kernel in 2.6.32. See mm/ksm.c for its implementation, and http://lwn.net/Articles/306704/ and https://lwn.net/Articles/330589/

        KSM was originally developed for use with KVM (where it was known as Kernel Shared Memory), to fit more virtual machines into physical memory, by sharing the data common between them. But it can be useful to any application which generates many instances of the same data.

        The KSM daemon ksmd periodically scans those areas of user memory which have been registered with it, looking for pages of identical content which can be replaced by a single write-protected page (which is automatically copied if a process later wants to update its content). The amount of pages that KSM daemon scans in a single pass and the time between the passes are configured using sysfs interface

        KSM only operates on those areas of address space which an application has advised to be likely candidates for merging, by using the madvise(2) system call:

        int madvise(addr, length, MADV_MERGEABLE)
        

        One imagines that one could maybe make a library interposer to induce use of that.

      • plz1@lemmy.world
        link
        fedilink
        English
        arrow-up
        6
        ·
        17 days ago

        I tried the PWA route with Discord. It wouldn’t stay logged in, and acted generally janky. That said, I do PWA with any app that’s Electron, at least to try and avoid the RAM bloat.

      • SaraTonin@lemmy.world
        link
        fedilink
        English
        arrow-up
        5
        ·
        16 days ago

        Or, even better, let’s start developing for separate platforms again, and optimise software for the platform that’s going to be running it. Rather than just developing everything for Chrome.

    • modular950@lemmy.zip
      link
      fedilink
      English
      arrow-up
      9
      ·
      17 days ago

      maybe a toggle to choose between “take some extra RAM, I’m feeling generous” and “fuck you, I’m computing shit over here” could be used to let the app know your current mood / needs …

      • TheBlackLounge@lemmy.zip
        link
        fedilink
        English
        arrow-up
        10
        ·
        17 days ago

        Memory hogging browsers usually do release memory when pressured. You can take it further by getting extensions that unload unused tabs.

        The problem is electron apps that load the whole browser core over and over.

  • anon5621@lemmy.ml
    link
    fedilink
    English
    arrow-up
    58
    ·
    17 days ago

    Miss times when 4 gigs of ram was more than enough for browsing and playing game at the sane time

  • GnuLinuxDude@lemmy.ml
    link
    fedilink
    English
    arrow-up
    56
    arrow-down
    2
    ·
    17 days ago

    The proliferation of electron programs is what happens when you have a decade of annoying idiots saying “unused memory is wasted memory,” hand-in-hand with lazy developers or unscrupulous managers who are externalizing their development costs onto everybody else by writing inefficient programs that waste more and more of our compute and RAM, which necessitates the rest of us having to buy even better hardware to keep up.

    • CeeBee_Eh@lemmy.world
      link
      fedilink
      English
      arrow-up
      17
      ·
      17 days ago

      annoying idiots saying “unused memory is wasted memory,”

      The original intent of this saying was different, but ya it’s been co-opted into something else

      • pftbest@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        1
        ·
        16 days ago

        So what was the original saying? As I see it, this phrase is wrong no matter how you look at it. Because all ram is used at all times, for example if you have 32GB of free ram, the kernel will use all of it as a page cache to speed up the file system. The more free ram you have the more files can be cached, avoiding access to the disk when you read them.

  • Blackmist@feddit.uk
    link
    fedilink
    English
    arrow-up
    41
    ·
    17 days ago

    I wouldn’t mind them all using HTML for UI if they’d learn to share the same one, and only load it when they need to show me something.

    No, Razer, your “mouse driver” does not need to load Chrome at all times, when I’ll only ever look at it once.

  • Jo Miran@lemmy.ml
    link
    fedilink
    English
    arrow-up
    41
    ·
    17 days ago

    I normally reply with a tux penguin but, is it really a Windows problem if the it’s the apps that aren’t optimized for shit?

      • frozen@lemmy.frozeninferno.xyz
        link
        fedilink
        English
        arrow-up
        6
        ·
        17 days ago

        Yep. My 64 gigs of RAM died in my old setup a few weeks ago, and instead of paying out the ass for replacement DDR4 RAM, I decided to pay out the ass for DDR5 RAM and upgrade while I was at it. Only did 32 gigs, because I really wasn’t using most of my 64 gigs (I thought). A few days ago, I ended up having to set up a swap file because a Rust project I was working on kept crashing VSCode while it was running the analyzer. What are we doing here.

    • mushroommunk@lemmy.today
      link
      fedilink
      English
      arrow-up
      23
      arrow-down
      1
      ·
      17 days ago

      Windows itself is inherently unoptimized these days with its AI search powered start menu and settings pages that are actually electron web apps. Linux uses 3+ less gb of RAM on just desktop after I switched. So really it’s a both problem. Both windows and the programs need a rethink

  • ExLisper@lemmy.curiana.net
    link
    fedilink
    English
    arrow-up
    33
    arrow-down
    2
    ·
    17 days ago

    It’s because people want cross-platform apps and web is the easiest way to do it. Yes, you have Flutter, KML or Qt but those are often hard to work with (looking at you, Flutter) or it’s difficult to find devs that can work with them. You choose web (JS/wasm) and you have plenty of devs familiar with the tools and you can support all the platform easily. I’m using Tauri for my personal projects because it’s fun and easy. I could use Qt but I don’t want to work with C++ or Python, at least not in my spare time. If anyone can recommend me a nice framework supporting Linux and Android and using modern language I might switch. I haven’t found one.

    • Croquette@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      26
      arrow-down
      1
      ·
      17 days ago

      It’s because there is no such thing as optimisation anymore. Websites are bloated to the gills with terrible animations and tracking scripts.

    • Taleya@aussie.zone
      link
      fedilink
      English
      arrow-up
      16
      arrow-down
      8
      ·
      17 days ago

      Programs. They are called programs . We are talking about desktop machines, not mobile devices

    • fuzzzerd@programming.dev
      link
      fedilink
      English
      arrow-up
      5
      ·
      17 days ago

      I have been really enjoying working with Avalonia, it is a .NET library that works across windows, Linux, and Mac and allows you to use C# for desktop app development on those environments. Its what MAUI should have been.

    • mfed1122@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      1
      ·
      15 days ago

      Yeah I just can’t stop getting ragebaited by the Electron hate. All Electron haters are free to develop their own efficient, pleasant looking, cross-platform native app instead since it’s so easy

    • Pringles@sopuli.xyz
      link
      fedilink
      English
      arrow-up
      13
      ·
      17 days ago

      Just another AI agent bro, that will fix th

      Out of Memory or System Resources. Close some windows or programs and try again.

      • Jankatarch@lemmy.world
        link
        fedilink
        English
        arrow-up
        5
        ·
        edit-2
        16 days ago

        VSCode history is so messed up. Microsoft buys github and stops production of github team’s IDE, then uses the framework developed for that IDE to make VSCode.

        Fucking 1600s colonizer behavior.

      • phlegmy@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        3
        arrow-down
        1
        ·
        16 days ago

        No thanks. Any software that has AI integration as one of its main selling points is shitware imo.

  • UnderpantsWeevil@lemmy.world
    link
    fedilink
    English
    arrow-up
    29
    ·
    17 days ago

    I remember how the combination of Internet mass distribution of file data and the blossoming gray market for file-share applications really super-charged the technology of file compression.

    I wonder if we’ll see skyrocketing RAM prices put economic pressure on the system bloat rampant through modern OSes.

      • UnderpantsWeevil@lemmy.world
        link
        fedilink
        English
        arrow-up
        13
        ·
        17 days ago

        I mean, ymmv. The historical flood of cheap memory has changed developer practices. We used to code around keeping the bulk of our data on the hard drive and only use RAM for active calculations. We even used to lean on “virtual memory” on the disk, caching calculations and scrubbing them over and over again, in order to simulate more memory than we had on stick. SSDs changed that math considerably. We got a bunch of very high efficiency disk space at a significant mark up. But we used the same technology in our RAM. So there was a point at which one might have nearly as much RAM as ROM (had a friend with 1 GB of RAM on the same device that only had a 2 GB hard drive). The incentives were totally flipped.

        I would argue that the low-cost, high-efficiency RAM induced the system bloat, as applications could run very quickly even on a fraction of available system memory. Meanwhile, applications that were RAM hogs appeared to run very quickly compared to applications that needed to constantly read off the disk.

        Internet applications added to the incentive to bloat RAM, as you could cram an entire application onto a website and just let it live in memory until the user closed the browser. Cloud storage played the same trick. Developers were increasingly inclined to ignore the disk entirely. Why bother? Everything was hosted on a remote server, lots of the data was pre-processed on the business side, and then you were just serving the results to an HTML/Javascript GUI on the browser.

        Now it seems like tech companies are trying to get the entire computer interface to be a dumb terminal to the remote data center. Our migration to phones and pads and away from laptops and desktops illustrates as much. I wouldn’t be surprised if someone finally makes consumer facing dumb-terminals a thing again - something we haven’t really experienced since the dawn of personal computers in the 1980s.

        But TL; DR; I’d be more inclined to blame “bloat” on internet web browsers and low cost memory post '00s than on AI written-code.

        • nosuchanon@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          16 days ago

          I mean, ymmv. The historical flood of cheap memory has changed developer practices. We used to code around keeping the bulk of our data on the hard drive and only use RAM for active calculations. We even used to lean on “virtual memory” on the disk, caching calculations and scrubbing them over and over again, in order to simulate more memory than we had on stick. SSDs changed that math considerably. We got a bunch of very high efficiency disk space at a significant mark up. But we used the same technology in our RAM. So there was a point at which one might have nearly as much RAM as ROM (had a friend with 1 GB of RAM on the same device that only had a 2 GB hard drive). The incentives were totally flipped.

          I would argue that the low-cost, high-efficiency RAM induced the system bloat, as applications could run very quickly even on a fraction of available system memory. Meanwhile, applications that were RAM hogs appeared to run very quickly compared to applications that needed to constantly read off the disk.

          Internet applications added to the incentive to bloat RAM, as you could cram an entire application onto a website and just let it live in memory until the user closed the browser. Cloud storage played the same trick. Developers were increasingly inclined to ignore the disk entirely. Why bother? Everything was hosted on a remote server, lots of the data was pre-processed on the business side, and then you were just serving the results to an HTML/Javascript GUI on the browser.

          Now it seems like tech companies are trying to get the entire computer interface to be a dumb terminal to the remote data center. Our migration to phones and pads and away from laptops and desktops illustrates as much. I wouldn’t be surprised if someone finally makes consumer facing dumb-terminals a thing again - something we haven’t really experienced since the dawn of personal computers in the 1980s.

          It is definitely coming and fast. This was always Microsoft’s plan for an internet only windows/office platform. Onedrive and 365 is basically that implementation now that we have widespread high speed internet.

          And with the amount of SaaS apps the only thing you need on a local machine is some configuration files and maybe a downloads folder.

          Look at the new Nintendo Switch cartridges as an example. They don’t contain the game, just a license key. The install is all done over the internet.

  • xthexder@l.sw0.com
    link
    fedilink
    English
    arrow-up
    29
    arrow-down
    2
    ·
    17 days ago

    Windows Latest discovered Discord and other Chromium and Electron-based applications with high RAM usage

    Lol, this is news? Where have they been the last 15 years?

    In other news, the sky is blue.

  • Kynn@jlai.lu
    link
    fedilink
    English
    arrow-up
    26
    ·
    17 days ago

    Tauri is the way to go ; so that every app doesn’t each embed another web browser that makes for 90% of the file size.

      • Kynn@jlai.lu
        link
        fedilink
        English
        arrow-up
        16
        ·
        17 days ago

        In Tauri, the rust backend is the glue between web/js and OS functions. Yet you don’t need to do any rust code, it’s delivered ready.

        • dogs0n@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          2
          ·
          17 days ago

          If your app interfaces with the OS, like most apps would (reading a file, managing the window, etc), then you would be writing rust, no?

          • Kynn@jlai.lu
            link
            fedilink
            English
            arrow-up
            5
            ·
            17 days ago

            Let’s say you are a webdeveloper trying to package your js app into a executable.

            Tauri makes it so that it embeds your js into a rust base, and if you need to interact with the os, you have a Tauri JS API which calls predefined rust functions embedded in the executable.

            You can literally never write rust code while using tauri.

            But they givr you the choice, since rust is faster than compiled js, you also can create rust functions which you then call from your js code.

    • Orygin@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      2
      ·
      16 days ago

      Tauri doesn’t automatically make apps perform good. Easy and common pitfalls still can make it go to a crawl just like electron.
      Yaak is an example of a tauri app that performs horribly, and that can’t reach a satisfactory 30fps on modern hardware. The issue is within how tauri interacts with the js world and syncs state.

  • BlueBockser@programming.dev
    link
    fedilink
    English
    arrow-up
    26
    arrow-down
    1
    ·
    17 days ago

    Yeah, the RAM shortage is definitely to blame on Electron. Won’t someone please think of the poor AI companies who have to give an arm and a leg to get a single stick of RAM!

    • floofloof@lemmy.ca
      link
      fedilink
      English
      arrow-up
      6
      ·
      16 days ago

      I wouldn’t mind so much if they were giving their own arms and legs, but they seem to be giving ours.

    • HugeNerd@lemmy.ca
      link
      fedilink
      English
      arrow-up
      4
      ·
      16 days ago

      If you have a better way of generating videos of absurdly obese Olympic divers doing the bomb from a crane, I’d love to hear it.

  • kalpol@lemmy.ca
    link
    fedilink
    English
    arrow-up
    20
    ·
    17 days ago

    And here I am resurrecting Dell laptops from 2010 with 1.5gb DDR RAM and Debian

    • mcv@lemmy.zip
      link
      fedilink
      English
      arrow-up
      9
      ·
      17 days ago

      I remember when they changed the backronym for Emacs from “Eight Megabytes And Constantly Swapping” to Eighty. Megabytes. Or when a Netscape developer was proud to overtake that memory use.

      What’s the point of more RAM and faster processors if we just make applications that much less efficient?

      • The Quuuuuill@slrpnk.net
        link
        fedilink
        English
        arrow-up
        9
        ·
        17 days ago

        “unused ram is wasted ram”

        yeah yeah yeah, great. but all you motherfuckers did that and i’m fucking out of ram.

        • pftbest@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          3
          ·
          16 days ago

          This phrase is just plain wrong. Unused ram is used for the page cache by the kernel. You must always have some ram free or else the whole system will not operate without a page cache. Larger page cache allows to cache more files from the file system.

        • Korhaka@sopuli.xyz
          link
          fedilink
          English
          arrow-up
          3
          ·
          17 days ago

          I want to run more than 1 process thanks. So fuck off with you trying to eat 3GB to render a bit of text.