• Blackmist@feddit.uk
    link
    fedilink
    English
    arrow-up
    0
    ·
    2 years ago

    Fucking Chrome/Electron is why.

    I honestly wouldn’t mind that if they could all use the exact same runtime so the apps could be a few MB each, but nooooo.

    • nutt_goblin@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      See: Webview2

      Unfortunately, it is extremely painful to work with😔 Enjoy rolling your own script versioning and update systems instead of using squirrel et al

      Edit: I think Tauri works by targeting this and webkitgtk via their wrapper library, unfortunately I can’t get my coworkers to write rust

      • kungen@feddit.nu
        link
        fedilink
        arrow-up
        0
        ·
        2 years ago

        Isn’t that just the same pig, just wearing different makeup? I’m not a fan of msedgewebview2.exe allocating 500+ MB RAM just because Teams is open, but maybe that’s Teams fault…

        • nutt_goblin@lemmy.world
          link
          fedilink
          arrow-up
          0
          ·
          2 years ago

          Not quite. instead of a bundled pinned version of electron, it is an arbitrary version of edge’s WebKit fork shared across all programs using it. That means you don’t need to keep multiple copies of the webkit libraries loaded into memory.

          That’s not to say that building things on web technology is an efficient use of resources. Even if multiple programs are sharing the webview2 library, they’re still dealing with the fundamental performance and memory problems caused by building an app in JavaScript.

          As for why teams is so memory hungry? I would blame Teams.

          Discord manages to make a half decent, highly responsive webview app, and that’s with the overhead of having its own separate instance of electron.

          EDIT: the original poster was also talking about application binary size, not runtime memory consumption. Application binary size should actually be significantly helped by linking webview to instead of bundling electron.

    • devilish666@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      Is there any alternatives to electron ? And why people’s doesn’t move on to alternatives if electron is huge & heavy resources ?

      • dpflug@kbin.earth
        link
        fedilink
        arrow-up
        0
        ·
        2 years ago

        I mean, Object Pascal was doing the “write once, run anywhere” thing decades ago. Java, too. The former, especially, can make very small programs with big features.

        • uuldika@lemmy.ml
          link
          fedilink
          arrow-up
          0
          ·
          2 years ago

          Java (and Object Pascal, I’m assuming) have very old-looking UIs. Discord’s gonna have trouble attracting users if their client looks like a billing system from 2005. Also, what do you do about the web client? Implement the UI once in HTML/CSS/JS, and again in JForms?

          So if you’re picking one UI to make cross-platform, and you need a web client, do you pick JForms and make it work on the web? or React and make it work on desktop?

          • dpflug@kbin.earth
            link
            fedilink
            arrow-up
            0
            ·
            2 years ago

            I think maybe you’re confused. Java drives a significant percentage of Android apps. It absolutely can do modern UI. I can almost guarantee you’ve interacted with a Java program this year that you never considered.

            Pascal is more niche, but it can do modern, too.

            Java was doing web clients before the web could and still can. I don’t know much about Delphi’s web stuff, but I know they’ve targeted it for years now.

            WASM and transpiling blur the lines, too. LVGL can provide beautiful interfaces on the web as well as platforms Electron could never target, and works with any language compatible with the C ABI.

            I’m not saying these strategies are without their own warts, but there are other ways to deliver good experiences across platforms with a ~single codebase in a smaller payload. But mostly nobody bothers because they just reach for Electron. It’s this era’s “nobody ever got fired for picking Intel”.

            We need more people working with and on alternatives, not just for efficiency but also for the health of the software ecosystem. Google’s browser hegemony is feasting. Complexity has become their moat, preventing a fork from being viable without significant resources. Mozilla is off in a corner consuming itself in desperation.

            A US-based company holds a monopoly over the free web and a hell of a lot of our non-web software. So maybe let’s look for ways to avoid feeding the beast, yes? And we can get more efficient software in the process.

          • Takumidesh@lemmy.world
            link
            fedilink
            arrow-up
            0
            ·
            2 years ago

            Yea, electron has flaws, but it’s basically the only way to make a truly cross platform native and web app. I would rather take a larger installed size and actually have apps that are available everywhere.

            The sad truth is there aren’t enough developers to go around to make sleek native apps for every platform, so something that significantly frees dev time is a great real world solution for that.

      • dbx12@programming.dev
        link
        fedilink
        arrow-up
        0
        ·
        2 years ago

        The alternative is “just serve it as a regular website”. It doesn’t need to be an app to do its job. Name a functionality which only exists in electron but not in the standard browser API.

  • KillingTimeItself@lemmy.dbzer0.comBanned
    link
    fedilink
    English
    arrow-up
    0
    ·
    2 years ago

    uh, please do ask, why does opening a fucking glorified text and image processing app require 1 gigabyte of ram.

    Who wrote this software? The guy from the bible who was the model for greed and gluttony? Jesus christ.

  • cylon@programming.dev
    link
    fedilink
    arrow-up
    0
    ·
    2 years ago

    Memory is cheap and data sells enough to many parties. Most apps are just store front for Ads and data collection.

    No wonder why open source apps are quite light.

    • ogeist@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      Bro, just use AI, bro, you don’t need developers, bro, also skip the testing, bro, who is going to hack your SaaS, bro

      • Kekzkrieger@feddit.org
        link
        fedilink
        English
        arrow-up
        0
        ·
        2 years ago

        Just let ai code bro its so much better and more reliable, just does what its told it works so good bro, ai is the future its so smart.

  • ThatGuy46475@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    2 years ago

    The hp printer app says it needs your location to connect to WiFi. It says it needs your location all the time when not using the app, again to connect to WiFi

      • bleistift2@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        0
        ·
        2 years ago

        God, I hate Corsair. Not only do you need to download their garbage software to fucking turn off the RGB on a headset, you have to have it running or the RGB will turn on again!

          • bleistift2@sopuli.xyz
            link
            fedilink
            English
            arrow-up
            0
            ·
            2 years ago

            Thanks for sharing that. My device isn’t listed, but I’d be surprised if Corsair changed how their shit works that much between devices. I’ll give it a try (it supposedly even works on Linux <3)

  • the_wiz@feddit.org
    link
    fedilink
    Deutsch
    arrow-up
    0
    ·
    2 years ago

    Is this the appropriate point to reference the suckless community? I mean, that’s THE point of the movement…

  • x4740N@lemm.ee
    link
    fedilink
    arrow-up
    0
    ·
    2 years ago

    Lazy devs not removing old non functional commented code and background code additions ?

    Though I do get it if they don’t want to remove the old code if their employer is an asshole

    • SketchySeaBeast@lemmy.ca
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 years ago

      That’s not why. It’s the dependency trees that run a dozen layers deep and end up importing “isEven”. If you’re building a react app odds are good you’ll import way more code than you ever write yourself.

      And no one should be leaving commented-out code in their app, that’s what source control is for.

      • SpaceCowboy@lemmy.ca
        link
        fedilink
        arrow-up
        0
        ·
        2 years ago

        If the goal is to not have apps be too large, you probably don’t want to send the full variable and function names and all of the comments over the wire every time someone loads a webpage. That would be a very inefficient use of bandwidth, wouldn’t it?

        • NoSpotOfGround@lemmy.world
          link
          fedilink
          arrow-up
          0
          ·
          2 years ago

          Except… the compilation step doesn’t add type safety to JS.

          As an aside, type safety hasn’t been something I truly miss in JS, despite how often it’s mentioned.