• slazer2au@lemmy.world
    link
    fedilink
    English
    arrow-up
    11
    ·
    4 months ago

    Because why go for native performance when you can go for minimum effort on all platforms.

    • grue@lemmy.world
      link
      fedilink
      arrow-up
      8
      ·
      4 months ago

      When all you have is a hammer JavaScript, everything looks like a nail web page.

      Kids these days don’t bother learning languages that actually compile to native apps.

      • atomicbocks@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        8
        ·
        4 months ago

        All of my degree was in C, C++, C#, Java, etc. and the one class I had that did web applications did Java backends and middleware with PHP frontends. It wasn’t until I got into the industry that I had to learn Angular, Electron, React, Django, etc.

        I don’t think it’s the devs making these decisions.

        • AnExerciseInFalling@programming.dev
          link
          fedilink
          arrow-up
          4
          ·
          4 months ago

          It’s the minimum effort that translates to minimum time that translates to minimum cost for the business. Why hire another developer for a mobile app (or another platform) when you could just have the same web dev write it. Or without hiring another dev, why have the same dev need to build up tooling in another language when you can just reuse from the existing platform

          • atomicbocks@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            1
            ·
            4 months ago

            Exactly, that and the “we are a [insert product name here] shop” mentality. The things I have had to fight for over the years are mind boggling.

        • 87Six@lemmy.zip
          link
          fedilink
          arrow-up
          1
          ·
          4 months ago

          It is the devs. Management says they need it fast then the devs say “fuck you here’s your browser tab app”.

          I deam of a dev job that would let me actually write a good app…

    • TrickDacy@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      4 months ago

      Because you want a cross platform solution?

      I get that electron can be slow, bloated, etc, but the amount of ire it draws is overboard.

      • Wispy2891@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        4 months ago

        Yes but sometimes, for example core parts of windows 11 like the start menu, don’t need to be cross platform and should be native, not a pwa

      • Billegh@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        4 months ago

        Having built applications with Microsoft’s mfc, Java’s swing, the omnipresent Qt, and whatever nastiness Mac was using in the early 00’s, electron is worth the silliness. Trust me. Trust me.

        • bradboimler@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          edit-2
          3 months ago

          As an engineer, Swing is great! Granted, I wouldn’t use it to deliver a polished UI to users.

          • Billegh@lemmy.world
            link
            fedilink
            arrow-up
            2
            ·
            3 months ago

            The individual things themselves weren’t really the issue. Swing was by far my favorite.

            The issue was cross platform ui development. If you didn’t target Java, swing wasn’t viable.

            • bradboimler@lemmy.world
              link
              fedilink
              English
              arrow-up
              2
              ·
              3 months ago

              Swing was by far my favorite.

              Nice. My team constantly gripes about it but I’m all, “…it’s a well designed UI toolkit…?” I can make it do anything. It took me weeks (as a newbie) to try to lay out UI components just so with the new hotness and at the end I had to give up and move on. It would’ve taken me five minutes to do it with Swing.

              • Billegh@lemmy.world
                link
                fedilink
                arrow-up
                2
                ·
                3 months ago

                Swing is what all these xml layout tools have been trying to replicate, honestly. Some get close, but far too few.

                It warmed my heart when GWT basically copied swing for its layout. Made that super easy to learn.

        • ChickenLadyLovesLife@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          4 months ago

          the omnipresent Qt

          So weird. I spent more than two years of my career working on a Qt app (not by choice) but I’ve never met another human being who has ever even heard of Qt. Nothing else has ever made me so certain that I’m clinically insane.

          My favorite thing about Qt was the use of C++ for the back end and Javascript for the UI layer. It lets companies take advantage of the, uh, four people in the world who are good with both languages.

          • Billegh@lemmy.world
            link
            fedilink
            arrow-up
            2
            ·
            4 months ago

            Hah! Yeah, qt has some really neat interfacing. And it is in so many places you wouldn’t expect it to be…

        • MonkeMischief@lemmy.today
          link
          fedilink
          arrow-up
          1
          ·
          4 months ago

          I’ll admit I’m not versed enough as a developer to grasp this so I’ll take your word for it.

          … I’mma just build my cross platform programs in Godot and nobody can stop me. >:)

      • MonkeMischief@lemmy.today
        link
        fedilink
        arrow-up
        1
        ·
        4 months ago

        the amount of ire CPU cycles / frames / watts it draws is overboard. Lol

        (Trying to be funny not aggressive lol)

        For real though, I think it’s just because it epitomizes that “Hardware is fast now so throw sluggishly interpreted high-level code at it and don’t even bother with optimization” mentality.

        Like I remember when people would bash Python over this, but Electron apps make that feel way overblown now.

        (Also Python did nothing wrong :( lol)

    • SavvyBeardedFish@reddthat.com
      link
      fedilink
      arrow-up
      0
      ·
      edit-2
      4 months ago

      Why have a consistent Wayland experience when each application can run it’s own Electron version with varying degrees of enforced Wayland flags, and/or such an outdated Chromium version Wayland is just jank.

      Edit:

      Was trying to say that most of these CEF/Electron applications all need their own separate Wayland specific (Chromium) flags to have better Wayland support/integration. And the older Electron applications typically use an older Chromium as base, having even worse Wayland support… Was not trying to make this a “Wayland bad!” kind of post.

      TL;DR: Electron applications have wildly varying level of Wayland support/integration, don’t have any Wayland issues other than specific CEF/Electron apps!

      • dan@upvote.au
        link
        fedilink
        arrow-up
        1
        ·
        4 months ago

        Wayland isn’t the problem. Chrome just doesn’t behave well with it. I haven’t had any Wayland-related issues with Firefox.

  • uuj8za@piefed.social
    link
    fedilink
    English
    arrow-up
    2
    ·
    4 months ago

    I know it’s easy to dunk on Electron… but have any of yall written any desktop apps with native frameworks? I wrote a small GTK4+Vala app once and I discovered desktop frameworks are very different than developing webapps. Customizing the look, feel, interaction of elements, and general mechanics, seems like a toooon of effort. (It kinda seems like you’re not supposed to customize it.) Web development is waaaaaaaay more friendly towards customization. Which as a company, you want your app to look like your company, not some generic OS bundled app.

    And then you have to repeat all that effort for crappleOS and Wangblows?.. And then you gotta hope that it’s even possible to do the thing you want in different OSes. Sheesh.

    I mean, I’d be happy if everything was native apps, but I also understand why people don’t tend to choose that route.

    • RheumatoidArthritis@mander.xyz
      link
      fedilink
      arrow-up
      2
      ·
      edit-2
      4 months ago

      That’s kind of the point of the frameworks though? Electron apps suck not only because of resource footprint, they don’t look and feel native, if they have any accessibility it’s usually custom and different for every program. Too much customization is bad.

      I remember the times before UI toolkits took over. These programs had soul and were beautiful in their own way, but you had to learn how UI elements worked in each of them separately. The same thing happens with web apps now. Tab and the other usual keyboard shortcuts rarely work, controls are all custom.

      X-Copy-Probably-the-most-popular-Amiga-program-ever-Amiga-news-commodore-news-piracy-on-the-80s-and-90s-2334938446

      dpaint01-1293592928

      a5003-crop-2302041451-01

    • GreyEyedGhost@piefed.ca
      link
      fedilink
      English
      arrow-up
      1
      ·
      4 months ago

      Once upon a time, we differentiated our apps based on their capabilities and gave them a consistent interface so people who knew how to use Windows|Linux|MacOS apps would already be familiar with how they operated. Now we differentiate on looks/user experience, and many of them aren’t capable at all.

    • grue@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      4 months ago

      Customizing the look, feel, interaction of elements, and general mechanics, seems like a toooon of effort. (It kinda seems like you’re not supposed to customize it.)

      Holy shit, he figured it out!

      So yeah, it turns out that platform human interface guidelines are a thing, and for good reason.

    • Possibly linux@lemmy.zip
      link
      fedilink
      English
      arrow-up
      1
      ·
      4 months ago

      Honesty Electron is fine as a concept

      The problem lies with the implementation. I see no reason why many of these apps couldn’t just be links to a website.

    • ooterness@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      4 months ago

      Counterpoint: Every developer should have to test their app on a machine with 1 GB of RAM and a dialup modem before inflicting their bloat on the rest of the world.

  • merdaverse@lemmy.zip
    link
    fedilink
    arrow-up
    1
    ·
    4 months ago

    Meanwhile, I have to install my third freedesktop 1GB dependency for 4 flatpak apps. What I wouldn’t give for a slim 100mb electron package… All my electron apps as appimages are less than 1gb total.

    But hey, at least native apps are so much faster. I have to get out an atomic clock to really see those microseconds that Zed is saving me compared to VSCode. You can even use the extra battery you gain to do one extra Rust compilation from scratch!

  • zr0@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    0
    ·
    4 months ago

    I get that it sucks. Are there any alternatives, where I have one codebase for all platforms?

    • macniel@feddit.org
      link
      fedilink
      arrow-up
      0
      ·
      4 months ago

      Have you heard of Java? Or any other language that abstracts away the GUI gluecode. Or don’t just even go electron and provide a web app instead.

        • macniel@feddit.org
          link
          fedilink
          arrow-up
          0
          arrow-down
          1
          ·
          4 months ago

          Mhm… Install 300mb once to run any Java application or 300mb for each and every electron app.

          Its an easy choice.

          • dreamkeeper@literature.cafe
            link
            fedilink
            arrow-up
            1
            ·
            4 months ago

            As if the Java app won’t be even uglier than electron and still weigh in at 300 mb for each. Not to mention introducing security issues on your machine with the jre

            There’s a reason people stopped making consumer apps in Java

            • macniel@feddit.org
              link
              fedilink
              arrow-up
              1
              ·
              4 months ago

              Uglier? Debatable as there are different UI Toolkits that can actually look beautiful and you don’t have to reimplement controls like you would in an electron app.

              And you certainly wouldn’t introduce new security issues with different and outdated v8 engines that are bundled with your electron app, no sir.