I HATE electron
I HATE electron
I HATE electron
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”
I think proprietary Electron apps better run in browser anyway because of trackers that you can disable via extensions.
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
Running electron apps becomes a genuine ram issue when running heavy ram workloads like running heavily modded games
And very true. 32gb is 99 dollars Australia pesos, 16 is about 70 percent that. What a waste to let it sit around.
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.
Just to nitpick, RAM is usually not idle.
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
A lot of the time, the alternative would be a website running in the browser.
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.
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.
Yeah, I’d rather a website
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.
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.
Doesn't Qt provide native, cross platform UI? I agree with your post though.
C++ is generally more difficult to use than JS. Styling is also more difficult.
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
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.
Even native apps usually use cross-platform toolkits which usually have very good Linux support. E.g. Qt, .NET, WxWidgets, GTK (maybe)
Maybe we should make that a trophy
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
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.
We are aware, and we'd take "no app" any day, thank you.
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.
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?
Uhhhhhh no
This might be a hot take but I've noticed some complicated electron apps are faster than some simple native apps. The striking example to me is how Vs code runs better and has a lower startup time than the stock Windows 11 File manager.
A well written electron app is better than a poorly written native app sometimes.
I mean, sure, but:
There's also the added CPU overhead from using JavaScript for everything to contend with.
file manager opens instantly.
genuinely curious, I have a shitton of networked drives and at least 7 volumes on this locally, file manager has always popped open ready to go at a click or hotkey.
Can you recommend some third party windows file managers?
That's not a compliment to Electron, that's a heck of an indictment to Microsoft messing up the File Manager.
I mean sure once you start getting big enough, you'd probably be bundling all the features of chromium anyways, and any extra bloat is meaningless. Chromium and thus electron are extremely well optimized so if you are using the full feature set it will be fast.
But please stop using vscode as the benchmark electron app. It is not comparable. No other application in history has as large of a talent pool as vscode and It's possible none ever will either.
Yeah, VS Code is insanely optimized. No other Electron app is even going to try to reach that level.
That's because all the important bits in VSCode are reimplemented in C++
You can use C++ for web technology instead of JavaScript? I'm taking a class in C++ right now so I'd be happy to swap janky JavaScript for pedantic but speedy C++ in new projects.
What does Ctrl shift I do (I'm not at my computer and I don't have any electron apps installed)
opens chromiums dev tools
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?)
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.
choosing to use electron is lazy
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.
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 :)
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.
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.
So you got like 64 GB of RAM or something.
16 on the machine I use the most at work. (MacBook Air M1)
Actually, 128 gigglebytes on my home PC, though. I upgraded so I could play pretty Minecraft.
With you for the most part, except where you say the bloated, slow, unreliable, piece of crap Teams is fine..
Just wait for Tauri for mobile so there will be no reason for somebody to use Electron.
I like that for every Electron meme there's a Tauri comment.
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
Front end developers will also have to learn rust, so tauri still presents a barrier to entry.
It already should work on mobile, but it's not production ready. I really want to try it out when I have time.
A big reason for me to use Electron is that Typescript is really easy to use. Does Tauri support that?
Tauri supports the major web frameworks, like React, Next, Sveltekit, etc, so yes.
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
The McDonalds of fine dining
I'll take shitty electron apps over winforms any day of the week.
I guess I should be happy that I've never heard of winforms?
You have you just didn't realize it. Think every shitty windows XP app you ever used. They were usually built with winforms.
Where Linux
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.
and vscode
VSC is an interesting case because they opted not to use any JS frameworks for performance
Not very found of them either but it's hard to do without them, matter wise.
it’s hard to do without them
Just load the wrapped website in a browser.
Or even better, encourage native apps.
That works for some apps but not anything that needs access to the filesystem and/or devices. Things like VSCode or mod managers, etc.
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.
I guess my pun was lost on your computer mind too, I'll go back talking to my physics pals
@HenriVolney @Oha I don't use a single Electron app currently. I might consider VS Code though.
I guess my pun got lost in everybody's logics. Poor me, unable to connect with my fellow lemmys.
Dude, if it doesn't hog memory then what's the problem?
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.
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
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.
if
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.
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.
Does Firefox support desktop PWAs?
Not natively, but there's an addon that works really well:
https://github.com/filips123/PWAsForFirefox
Some assembly required.
As a full stack web developer, I FUCKING LOVE Electron. I can make really cool desktop apps, and you can deal with it.
Time to murder you in front of all Linux people
Why don't you like ctrl-shift-i?
ctrl+shift+i brings up the inspect tool you'll find in Chrome. Which Electron is based on.
And that's a problem?
you can usually tell by the size (and ram usage while just sitting there)
Well, screw you too, do you know how much easier developing web apps is compared to native ones? I've only tried to use gtk and qt and took more years off my life than the entire time I've spent learning web stuff... I genuinely don't know how people have the patience and expertise to use native frameworks...
Its not 1990 anymore, you have more than 2 megabytes of ram.
You're right, it's not. Now you need 16Gb because no one can be bothered writing their UI without this garbage anymore.
Honestly for me electron apps can also get pretty janky.
Plus Electron takes WAY more than 2mb of RAM.
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?
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...
I don't like having to choose between Discord or Logseq and things that actually need the RAM...
Meanwhile I hate Proton.
(Edit: not enough downvotes.)
Steamdeck users love that tho
Im not really sure how I feel about Neutron.