• arisunz@lemmy.blahaj.zone
    link
    fedilink
    arrow-up
    76
    ·
    1 year ago

    I LOVE ELECTRUM!! I WANT EVERY APPLICATION TO BE A CHROMIUM INSTANCE AND EAT HUNDREDS IF NOT THOUSANDS OF MB OF RAM!!!

  • Caketaco@lemmy.world
    link
    fedilink
    English
    arrow-up
    44
    ·
    edit-2
    1 year ago

    Discord moment

    “Hmm, we need to make a communications app. Communicating is important, it’ll keep millions of people in contact with eachother. We’ll have to make it as lightweight as possible.”

    “OH! I KNOW! ELECTRON!!”

    • awesome_person@lemm.ee
      link
      fedilink
      arrow-up
      34
      ·
      1 year ago

      don’t blame electron for how bad discord performs, just open it up in your browser and watch as the discord tab uses 1gb of ram after 5 minutes of usage. discord simply doesn’t care about performance or resource usage

    • Paige (she/her)@lemmy.blahaj.zone
      link
      fedilink
      English
      arrow-up
      19
      ·
      1 year ago

      One of Discord’s targets is web, and I don’t think there is another good UI toolkit that could maintain that target with easy feature parity. Some UI toolkits like Godot (which is a game engine) are capable of targeting web using a canvas element, but that’s probably not going to be as performant or as native feeling as a standard website. They could also use a separate code base, but then there would be large feature parity issues. They could also drop the web target, but that might make it harder for users who don’t have permission to install software or use Chrome OS.

      I feel like Discord is one of the examples where Electron makes sense. If only they allowed third party apps so desktop users who don’t care about having every feature can have a better experience.

      • Caketaco@lemmy.world
        link
        fedilink
        English
        arrow-up
        8
        ·
        1 year ago

        True and fair. Definitely agree with your third-party app thing (man, where have I seen the benefits of having third party apps before?)

        I do remember trying out a (TOS breaking) third party app I found on GitHub, but it lacked a lot of features like voice calls and whatnot and crashed frequently. That’s to be expected, though.

    • pine@lemmy.blahaj.zoneOP
      link
      fedilink
      arrow-up
      20
      ·
      edit-2
      1 year ago

      I’m not a developer lol so sorry if it’s too absurd a leap but that entire game engine consumes maybe 100-200MB of ram and 30MB of storage overhead compared to the multiple gigabytes of nwjs/electron/etc. Yes it’s absurd and inefficient but that’s the point of a meme. Even shipping an entire game engine is less ridiculous.

    • SingularEye@lemmy.blahaj.zone
      link
      fedilink
      arrow-up
      13
      ·
      1 year ago
      1. godot is a pretty small game engine, so bundling it wouldn’t be that bad (it’s smaller than chromium); but
      2. godot kinda sucks as a UI framework
  • PotatoesFall@discuss.tchncs.de
    link
    fedilink
    arrow-up
    12
    ·
    1 year ago

    A lot of people have made a website before, so it makes sense that’s the first choice for them.

    That being said, if I was to make a simple desktop app tomorrow, which GUI would you recommend me?

    • SSUPII@sopuli.xyz
      link
      fedilink
      arrow-up
      18
      ·
      edit-2
      1 year ago

      Its hard to answer without knowing what your app needs to do.

      For a generic crossplatform program, I would say QT or GTK when programming in C/++.

      • I Cast Fist@programming.dev
        link
        fedilink
        English
        arrow-up
        9
        ·
        1 year ago

        Also depends on the language being used. Even if it’s javascript, you could use something like Tauri or Neutralino, which can also make an executable bundle which uses the OS’s native HTML renderer, no bundled chromium needed.

        Some languages + recommended graphical frameworks:

        • FreePascal + Lazarus
        • Dart + Flutter
        • Go + Fyne
        • Lua + LOVE2D (game engine, but can work fine for most cases)