• @[email protected]
    link
    fedilink
    352 years ago

    JS land is the America of development. You may not like it, but it’s the encumbent power and it’ll be that way for a long time so might as well enjoy the plus sides

  • @[email protected]
    link
    fedilink
    47
    edit-2
    2 years ago

    ITT: some people are mad the web became the application platform of choice, in part due to handy dandy cross platform app tools like Electron and accessible languages like JavaScript.

    There is no perfect answer. Qt isn’t using the platform’s native capabilities to the fullest extent either. Qt requires a “wrapper” too–all those libraries your app depends on, to name a few (unless you got a commercial license and are compiling statically, you rich devil).

    Let’s celebrate the onslaught of apps that work with Linux instead of trying to scare off developers any more than Linux already did. Make love not war. <3

    In my experience, Electron and other “web wrapper” apps run just fine and I have enough CPU and RAM to run a dozen of them alongside my 50 browser tabs. Slack, Discord, VSCode, Teams, IRCCloud, it all works fine. Hardware is cheap compared to my time.

    • @[email protected]
      link
      fedilink
      32 years ago

      With you for the most part, except where you say the bloated, slow, unreliable, piece of crap Teams is fine…

    • @[email protected]
      link
      fedilink
      142 years ago

      It always seemed over-complicated to me to use web technologies to create a desktop application and run it in what is essentially a browser. The tool-chain of modern web and electron apps also seems overly complicated to me (writing in a slightly different language then transpiling to an interpreted language).

      I don’t find JS any more accessible than any other language with automatic memory management. JS is actually a bit of mess due to bolting on new features while keeping backward compatibility.

      I don’t mind using electron apps. VS Code is pretty great.

      I think Java Swing was the apex of desktop development :)

      • @[email protected]
        link
        fedilink
        72 years ago

        always seemed over-complicated

        Technology-wise? Yes it is.

        Development-wise? It actually makes dev process much simpler by making it grossly cross platform instead of having to care about little gotchas on each use case (which may or may not actually be popular. Not saying it’s optimal, but as a developer myself, I say it makes a lot of sense.

      • @[email protected]
        link
        fedilink
        42 years ago

        It’s a poor architectural choice, but making cross-platform apps is even more problematic with the current UI tooling out there. Too much fragmentation in the base OS’s. If Mac moved to support Wayland or something like that, maybe we’d start getting somewhere.

    • @[email protected]
      link
      fedilink
      72 years ago

      I don’t like having to choose between Discord or Logseq and things that actually need the RAM…

    • Kamek
      link
      fedilink
      392 years ago

      You’re right, it’s not. Now you need 16Gb because no one can be bothered writing their UI without this garbage anymore.

    • @[email protected]
      link
      fedilink
      182 years ago

      Honestly for me electron apps can also get pretty janky.

      Plus Electron takes WAY more than 2mb of RAM.

      • Semmelstulle
        link
        fedilink
        62 years ago

        And thus cripples battery life.

        I only use things like Discord in Safari and Firefox to not have to use the Electron app.

        I really don’t get how everything has to use web UI. SwiftUI is really easy to learn and you can run this on any Apple platform. Flutter is a mess but you can run it on Android. GTK looks just gorgeous and Qt can run on everything but ChromeOS (like 99% of things). Is it really too much to ask for 3 more developers in a company that build native?

        • Semmelstulle
          link
          fedilink
          42 years ago

          Small addition: I unsubscribed like many others from 1Password because with version 8 even they switched from native to Electron. This is just crazy.

          I mean guys, frickin think about people who can’t afford recent hardware! Do we really want Electron and thus Chromium/Google to force us to buy 1000€+ hardware to be able to do things?

      • @[email protected]
        link
        fedilink
        12 years ago

        Jank is one reason I’m not a fan of electron. It’s very common to gain extra scrollbars, for the contents to shift around weirdly. Things break in ways that native apps never do, due to the sheer complexity of web rendering these days. Customizability is nearly always lacking, especially when it comes to cooperating with the host OS’s preferences…

  • @[email protected]
    link
    fedilink
    172 years ago

    Lets write an OS in Electron and go to March. Maybe start using the right tool for the right job. If i only know how to build with lego, I dont build a real house with lego, instead i learn how to do it right.

    • @[email protected]
      link
      fedilink
      42 years ago

      A big reason for me to use Electron is that Typescript is really easy to use. Does Tauri support that?

    • Andrew
      link
      fedilink
      42 years ago

      It already should work on mobile, but it’s not production ready. I really want to try it out when I have time.

    • Andrew
      link
      fedilink
      122 years ago

      I like that for every Electron meme there’s a Tauri comment.

      • @[email protected]
        link
        fedilink
        32 years ago

        That’s how I learnt about it. Funny enough I can’t see the image on this post (doesn’t load) but I can see the comments

  • @[email protected]
    link
    fedilink
    72 years ago

    As a full stack web developer, I FUCKING LOVE Electron. I can make really cool desktop apps, and you can deal with it.

    • OhaOP
      link
      fedilink
      62 years ago

      Time to murder you in front of all Linux people

  • @[email protected]
    link
    fedilink
    2562 years ago

    People that are upset about electron should consider it’s not:

    Electron App vs Wonderful Fully Supported Native Linux Application

    The reality is that your choice is largely:

    Electron App vs No App (maybe running their windows app in wine if you can get that to work)

    It’s not like companies are going to go build a native linux app but electron got in their way. It was always electron or no support.

    So if you like the app, remember that the ram and the cpu you paid for doesn’t provide value unless it’s doing something. There’s no trophy you get at the end of your life for “most cumulative ram left idle”

    • TheOPtimal
      link
      fedilink
      ქართული
      72 years ago

      Even native apps usually use cross-platform toolkits which usually have very good Linux support. E.g. Qt, .NET, WxWidgets, GTK (maybe)

    • @[email protected]
      link
      fedilink
      182 years ago

      What about laptop battery life? More CPU usage = less battery life. WHY DOES NO ONE GIVE A FUCK ABOUT BATTERY LIFE???

      The single most reason I switched from Spotify to Apple Music is that I was sick of seeing the Spotify macOS app at the top of the “High Battery Usage” page on Activity Monitor. I also actually noticed less battery life. Fuck Electron. I avoid apps made in it like the plague.

    • RaivoKulli
      link
      fedilink
      102 years ago

      So if you like the app, remember that the ram and the cpu you paid for doesn’t provide value unless it’s doing something.

      It could be doing so much more if you hadn’t gone with Electron you fuck

      • @[email protected]
        link
        fedilink
        62 years ago

        Right? Why are people talking like this? You don’t see Kubernetes and more generally, servers being looked at this way. We optimize like hell to make things fast, responsive and resource-efficient but on the desktop we just stopped caring or we just got very spoiled and lazy.

        • @[email protected]
          link
          fedilink
          32 years ago

          From the comments that have mentioned the efficient programming languages, my guess is there’s a bunch of devs in here that never got past the “c++ is hard!” stage.

          The first time I saw an office app launch in my browser, I was both impressed that they got excel to work in a browser and appalled that they wanted excel to work in a browser at the same time. And I’ll admit that it does perform well considering it’s running in a fucking browser, but I’ll still launch the native app any time I actually want to work with a file that’s opened in the browser.

          • @[email protected]
            link
            fedilink
            32 years ago

            Hell I’m in the “C++ is hard” stage but that doesn’t mean we should just downgrade everything to Electron.

            • @[email protected]
              link
              fedilink
              32 years ago

              Keep at it, eventually things will click and you might find yourself appreciating the compiler errors and type strictness. Perhaps you’ll even spend time getting rid of warnings even though it will let you run without doing that, because they indicate edge cases that might break your program in difficult to debug ways.

              • @[email protected]
                link
                fedilink
                22 years ago

                I’m a Ruby on Rails developer that’s been doing this for so many years. I experiment in Crystal from time to time but I haven’t had the time in quite awhile to set aside to learn something new. I have an entire course on Swift bought and paid for but with all the side projects I have going on it’s been tough.

                • @[email protected]
                  link
                  fedilink
                  22 years ago

                  Yeah, time is always the hard part.

                  It’s all kinda the same btw. Like you’ll have different sytax and styles, but most languages have variables, loops, conditionals, functions, objects, inheritance, APIs to access OS functions like files and network, etc.

    • @[email protected]
      link
      fedilink
      302 years ago

      lmao, yea. Besides, it’s not like electron is that bad either. We aren’t in 1990, why would you care if electron uses a gb of ram or ten processes or this or that… they think that native means good, but more often than not native means a shitty ugly unusable application that will work (not really) just on windows

      • @[email protected]
        link
        fedilink
        92 years ago

        If a fancy text editor starts eating hundreds of megabytes RAM without having loaded a file, i think we did something wrong.

        Though Visual Studio can do that too without Electron.

        • @[email protected]
          link
          fedilink
          3
          edit-2
          2 years ago

          Have you ever had, in good conscience, a problem caused by an electron app using too much resources?

          Because we are, again, in 2023: the standard is 16GB of RAM, with CPUs much more powerful and with a lot of more cores and thread per cores than the past. Complaining about a PC resources being used when these doesn’t actually create a problem is like complaining about GUI being bloat; or JS/CSS being bloat.

          This of course doesn’t mean electron is perfect, cause it clearly isn’t, but it’s a good enough solution that can be iterated upon (see Tauri) and improved (the DX on electron is shit). Nor that every app should be in electron.

          • @[email protected]
            link
            fedilink
            42 years ago

            It didn’t cause problems since i have a lot of RAM but i still hold the opinion that just because we have a lot of RAM, we don’t need to waste it. We could keep being efficient about it and get even more out of the same amount of RAM, you know. That said, if Tauri lowers the RAM usage of the same applications i’m looking forward to it.

                • @[email protected]
                  link
                  fedilink
                  3
                  edit-2
                  2 years ago

                  that would change nothing to you. Unless they are seriously consuming a lot of memory and filling up processes while not needed, then it’s fine. Otherwise it means the app was developed by a bunch of monkey, but that could happen - maybe even more likely - with native software as well.

                  Tldr: to the end user it changes literally nothing nowadays, to the companies and the devs it changes quite a lot. And to some degree, end-users won’t have to deal with shitty ugly apps (unless the designers are jerks, in which case you are probably working in the same company as me)

          • @[email protected]
            link
            fedilink
            5
            edit-2
            2 years ago

            Uh, have you not? Ever run Slack on macOS? My work computer is a completely spec’d out MacBook Pro and Slack still runs slow as hell on it. I know VS Code isn’t Electron but it’s so bloated that I don’t have the patience to let it finish starting up on my old M1 MacBook Air; I’d rather use a native text editor than deal with the trash.

            • @[email protected]
              link
              fedilink
              22 years ago

              on the vscode comment, that’s just plain wrong. here’s vscode opening up on a base model m1 air (it’s a test project but my works codebase also opens just as fast)

              https://imgur.com/a/q6iw2Bk

              on a 8gb ram m1 air, with 3/4 chrome windows, slack, postman and two node processes running. as for slack, i agree its not as snappy as say, native macos apps but it doesn’t really bother me a lot.

              • @[email protected]
                link
                fedilink
                12 years ago

                I just uninstalled VS Code from my MacBook Air, it was never able to open without crashing. I don’t need it in my personal life so no loss there.

            • @[email protected]
              link
              fedilink
              42 years ago

              I run slack every day. It’s a bit slow sometimes but it doesn’t cause any real issues. Still better than teams. I’d rather have it as an electron app than as a web app.

              VS Code is electron but it’s not meant to be a lightweight text editor like notepad. Must people are using it as an IDE at this point. Can you explain what’s “bloated” about it?

              These apps probably wouldn’t exist at all if it wasn’t for electron so I’m grateful for it. The purists can pound sand like always.

          • Neko the gamer
            link
            fedilink
            12 years ago

            not everyone can afford 16 GB of RAM though, if you want to make your software accessible write it to work on as many systems as possible with few or no slowdowns or hiccups. Electron is a shitty bandaid because you’re a lazy ass that doesn’t want to write more efficient software for desktop and instead you keep making web applications running natively, which is and will always be wrong

    • @[email protected]
      link
      fedilink
      14
      edit-2
      2 years ago

      remember that the ram and the cpu you paid for doesn’t provide value unless it’s doing something.

      Remember that house you paid for doesn’t provide value unless you fill it with elephant shit.

      That’s consumerism. Another equally shitty statement: your liver doesn’t provide value unless it dies from all toxins in the world.

    • @[email protected]
      link
      fedilink
      English
      232 years ago

      Well, there’s also Tauri which requires slightly more testing since you actually use the device’s built-in browser, so there might be differences. The upside is a much smaller bundle size, quick start-up times and often less RAM usage than with Electron.

    • @[email protected]
      link
      fedilink
      English
      412 years ago

      So if you like the app, remember that the ram and the cpu you paid for doesn’t provide value unless it’s doing something. There’s no trophy you get at the end of your life for “most cumulative ram left idle”

      This is a damn homicide lmao

    • @[email protected]
      link
      fedilink
      English
      712 years ago

      I think Electron has made running Linux on the desktop much more viable than it was in the past. There are a lot of apps the average user expects which are now available all because of Electron.

      And someone needs to inspect the package to see that it’s an Electron app, then it can’t be all that bad.

        • @[email protected]
          link
          fedilink
          English
          232 years ago

          A lot of people like the convenience of open an app over navigating to a website. A website also requires login, in most cases, where a Electron app may not.

          Sure, I can use Github code spaces to run an instance of VS Code in the browser on someone else’s computer… if I want to login to Github, store whatever I’m working on in Github, and be at the mercy of whatever Github and Microsoft decide to do with Code Spaces in the future… Or I can download the VS Code Electron app, not log in, store my work on my laptop (or simply edit local config files), use whatever source control I want (or none), and have some control.

          Or with Spotify, which uses CEF, not Electron, but close enough… Having it’s own app means the audio controls can be independent of the browser, which is usually a good thing.

    • monk
      link
      fedilink
      142 years ago

      We are aware, and we’d take “no app” any day, thank you.

      • Cralder
        link
        fedilink
        262 years ago

        You know that “no app” and “not using the app” is the exact same user experience right? So you can just not use the app and stop complaining about it existing.

        • monk
          link
          fedilink
          62 years ago

          “Not using the app” means instead of developing a real one, I’m being pointed at an abomination.

      • @[email protected]
        link
        fedilink
        192 years ago

        Idk who you think you’re speaking for, but I don’t think it’s as many people as you think lol.

        Besides an electron app you don’t use and no app are literally the same thing, so why choose nothing?

        • monk
          link
          fedilink
          62 years ago

          Electron app I don’t use is less chances to get a normal app.

            • monk
              link
              fedilink
              22 years ago

              Dumping a trashbin into your backyard is even cheaper, doesn’t mean it’s a remotely good idea tho.

                • monk
                  link
                  fedilink
                  32 years ago

                  The same reason why webapps are a bad idea. We’ve built monstrous browser engines to do fancy stuff to pages in a bonkers language in a sandbox, and the resulting abomination is neither pages nor apps. And now we’re like: we have so much expertise in shuffling page parts around to look like they’re apps, let’s build “real” apps out of them. It’s like rejecting headphones and towing a car with broken windows around with you just in case you’ll wanna listen to music: it technically works, but makes negative sense.

    • @[email protected]
      link
      fedilink
      332 years ago

      There’s no trophy you get at the end of your life for “most cumulative ram left idle”

      Some people like to use more than 1 app you know.

      Also, RAM is never ever idle. It is used as filesystem cache when not used by programs thus speeding up read accesses significantly.

        • @[email protected]
          link
          fedilink
          22 years ago

          Alright, let’s nitpick! No, it is never ever idle, every few cycles is a refresh cycle, which is work.

          • @[email protected]
            link
            fedilink
            62 years ago

            It’s great that you mention this, but this is a different layer of abstraction than what we were previously talking about.

      • @[email protected]
        link
        fedilink
        52 years ago

        Honestly even with more than 1 application open it shouldn’t be an issue. Maybe with a really old computer, but anything modern really should handle an electron app just fine

    • @[email protected]
      link
      fedilink
      422 years ago

      I think proprietary Electron apps better run in browser anyway because of trackers that you can disable via extensions.

    • rumschlumpel
      link
      fedilink
      Deutsch
      262 years ago

      A lot of the time, the alternative would be a website running in the browser.

      • @[email protected]
        link
        fedilink
        10
        edit-2
        2 years ago

        I’d prefer that. One firefox instance can easily run 10 big fat websites while using like 6GB of RAM. 10 electron apps on the other hand? 32GB RAM won’t be enough.

      • @[email protected]
        link
        fedilink
        62 years ago

        Electron IS a browser. It’s a Chromium browser to be exact with all the Chromium UI elements except the very bare minimum removed.

        So the only difference that remains is running a website in a tab or in a fancy window.

        • rumschlumpel
          link
          fedilink
          Deutsch
          5
          edit-2
          2 years ago

          I know that Electron is a browser. But the issue is that it’s a different browser, and AFAIK Electron applications don’t share libraries etc. like Chrome/Firefox tabs would, which makes Electron apps even more inefficient than web apps.

    • JackbyDev
      link
      fedilink
      English
      162 years ago

      Doesn’t Qt provide native, cross platform UI? I agree with your post though.

  • @[email protected]
    link
    fedilink
    242 years ago

    The problem is that even Microsoft choose to use Electron when they built Teams. MS got loads of developers and Teams is really a big product in terms of users.

      • @[email protected]
        link
        fedilink
        English
        162 years ago

        VSC is an interesting case because they opted not to use any JS frameworks for performance

        • darcy
          link
          fedilink
          172 years ago

          💀 writing a text editor in electron and worrying about performance is wild /hj

          • @[email protected]
            link
            fedilink
            32 years ago

            It’s quick and doesn’t lag at all, even with the couple dozen plugins I have installed. Compare that to Atom (or whatever it’s called now) with zero plugins.

            • darcy
              link
              fedilink
              42 years ago

              i cant relate sadly. ive got a decent computer but vscode still takes a while to load (with plugins). neovim on the other hand takes a split second to open, and has never crashed on me, even with the equivilent of my vscode plugins

  • @[email protected]
    link
    fedilink
    442 years ago

    What does Ctrl shift I do (I’m not at my computer and I don’t have any electron apps installed)

      • @[email protected]
        link
        fedilink
        122 years ago

        Does it really have to? Vscode is built on top of it, I don’t think it’s ever opened chromium dev tools for the app (maybe I’m wrong?)

        • @[email protected]
          link
          fedilink
          3
          edit-2
          2 years ago

          on raspbian, don’t remember which version, ctrl shift I opens dev tools Edit vs code dev tools

        • @[email protected]
          link
          fedilink
          302 years ago

          Some apps can disable it, I think Discord does so people don’t get tricked into pasting random scripts into the console

          • @[email protected]
            link
            fedilink
            English
            11
            edit-2
            2 years ago

            That is true, though it’s possible to re-activate them through a configuration file in discord. However, a developer can fully disable the tools if they wish

    • @[email protected]
      link
      fedilink
      82 years ago

      Open the dev tools in electron app that where so badly coded that they are not blocked as they should in the first place. In short, bad app developer makes bad apps, and people complain about the framework instead of complaining about the lazy dev.

  • spez
    link
    fedilink
    English
    242 years ago

    Dude, if it doesn’t hog memory then what’s the problem?

    • @[email protected]
      link
      fedilink
      English
      352 years ago

      It kinda do though. VSCode, without a project open has 10 processes running and uses over a half gig of ram. I like VSCode to be clear. I also like discord but it’s just a chat app and apparently needs a half gig itself and 6 processes.

      • DreamButt
        link
        fedilink
        English
        242 years ago

        You should come over to vim. It only takes 12 months of intense training and an additional 3 years of super glueing random rc file configs together before it works how you want it to

        • @[email protected]
          link
          fedilink
          132 years ago

          Yeah, but once it’s all setup, you get to see all your coworkers roll their eyes when they see you use vim at every job from that point on

          So, all worth it in the end 👌

          Also, I’ve saved at least $5 over the last decade from wear and tear on mice

        • TheHarpyEagle
          link
          fedilink
          12 years ago

          I use IdeaVim in JetBrains IDEs, does that make me some kind of monster?

      • @[email protected]
        link
        fedilink
        82 years ago

        I hope they’ll find a way to run all those applications in one browser. Like basically having a browser with multiple tabs but getting treated like seperate sandboxxed apps.

    • @[email protected]
      link
      fedilink
      42 years ago

      It is slow and usually anyway consume more memory than any native application built the same way due to it have to run a web browser. It is also taking up more storage space and updates are bigger and you need to watch out for we browser security holes. I think Electron have some limitations so you can’t do everything you want with it like a native application.

      • @[email protected]
        link
        fedilink
        112 years ago

        You’re aware that Electron app have access to much more stuff than what you can do in a browser? Like, important, functional stuff?

        Getting really tired of “this is just a website” approach. It’s starting to feel like /r/programmerhumor here.

        • @[email protected]
          link
          fedilink
          22 years ago

          just because electron apps have access to system features that browsers restrict access to for security reasons doesn’t mean they’re not websites in a trenchcoat

        • @[email protected]
          link
          fedilink
          3
          edit-2
          2 years ago

          Are you aware that a huge chunk, most likely the vast majority, of Electron apps don’t use all that and are just wrapped web sites?

          • inge
            link
            fedilink
            22 years ago

            a huge chunk, most likely the vast majority, of Electron apps […] are just wrapped web sites

            [citation needed]

              • @[email protected]
                link
                fedilink
                2
                edit-2
                2 years ago

                If the question was “how many repositories on GitHub mention the word electron”, your answer would be correct. As it stands, citation is still very much needed.

                • @[email protected]
                  link
                  fedilink
                  42 years ago

                  If the question was “how many repositories on GitHub mention the word electron”, your answer would be correct. As it stands, citation is still very much needed.

                  That is a valid citation. You can count yourself how many of those repositories are just for wrapping specific websites by random people. If you think I’m wrong, put your money where your mouth is and provide a citation yourself.

      • @[email protected]
        link
        fedilink
        42 years ago

        Back when I had to use QuickBooks I realized it’s just an Electron app. I ended up wrapping it myself and it outperformed their official app. 🤣

      • ayaya
        link
        fedilink
        English
        102 years ago

        That works for some apps but not anything that needs access to the filesystem and/or devices. Things like VSCode or mod managers, etc.

        • @[email protected]
          link
          fedilink
          62 years ago

          That works for some apps but not anything that needs access to the filesystem and/or devices.

          Granting some application with a bundled ancient and insecure Electron build is insanity.

          Things like VSCode

          Luckily there are plenty of native source code editors out there, for example Kate.

          • ayaya
            link
            fedilink
            English
            8
            edit-2
            2 years ago

            Granting some application with a bundled ancient and insecure Electron build is insanity.

            Granting some application with a bundled ancient and insecure library of any kind is bad. That is not a problem exclusive to Electron it applies to static builds of any application ever made.

            Luckily there are plenty of native source code editors out there, for example Kate.

            Okay but that’s not the point. You said, “Just load the wrapped website in a browser.” Some apps won’t function like that. The fact that alternatives exist is irrelevant to what I replied to.

            • @[email protected]
              link
              fedilink
              1
              edit-2
              2 years ago

              Okay but that’s not the point. You said, “Just load the wrapped website in a browser.”

              I replied to “it’s hard to do without them”. So yeah, opening wrapped websites in a browser for most Electron apps and using native alternatives for the rest is totally feasible and absolutely not beside the point.

              • ayaya
                link
                fedilink
                English
                52 years ago

                Yeah, it’s feasible to do that. And? My point was that you can’t just rip out the web portion of an app and always expect it to work in a browser. That’s it. What you said is irrelevant in the sense that it has no effect on whether the web portion can run in a browser or not.