On my system, about 20% of my installed apps are Electron now, and this number is growing. No matter how much RAM & CPU you throw at these dogs, they just don't run any better. Gobs of RAM, wasteful use of CPU cycles. A modern desktop dystopia.
Yes, what you also get is terrible battery life, terrible performance, and terrible UI. It is immediately obvious any time you use an electron app on osx because you immediately hit non-standard UI behavior, and basic errors with hotkeys.
So by using electron you've made your life easier, but have produce an app that is much worse for the people actually using it.
No, it's not that bad. I think most people who complain about Electron are power Mac users, mostly because Apple's UX is different and special, and Electron doesn't always follow that. As a Linux user, i have zero problems with Electron apps, provided they don't waste resources.
In terms of speed and resource consumption, it's entirely up to the app - i use VS Code and Obsidian which are very fast and lightweight (relatively, for what it is, for VS Code).
yeah yeah. It's bad. So big. So slow. So bloated; so... What's your alternative?
I don't see any meaningful suggestions in this article, just complaints.
You don't like how resource intensive electron apps are? Well, don't use them. If its really a big deal, people not using the apps will inform the people making the apps that they're bad.
That's not happening, so clearly it's not a big deal for most people.
Still... things could always be better in a perfect world.
Are you building desktop applications? What are you using for it then, and whats your cross platform perf story like? How long do cross platform releases take you? What are you paying for your tools and tooling?
As a user I think Electron is great. It means many more apps have a Mac version. Compare to games, where Electron typically isn’t feasible, and observe how many games don’t have a Mac version. A little extra memory usage is fine by me. I can understand how people disagree, and that’s fine, just don’t use Electron apps. No need to ban them from the platform.
The only electron app I've ever used that wasn't slow/terrible is VSCode which happens to be written in typescript by Microsoft and it still occasionally decides to use 100% of my macbook's CPU making it entirely unusable until I restart, so I'm not sure that's a very good argument.
Electron (or embedded Chromium, etc.) is lazy development: save time on cross-platform work at the expense of your users' CPU overhead/battery time/SSD life.
Spend time watching some of each year's WWDC talks and noting how much effort Apple engineers give to fine-tune certain APIs to enable app developers to optimize battery use, disk access, or graphics rendering. State-of the art stuff. And then your Electron app just ignores all of that.
Sure, wasteful RAM and CPU is a big problem with Electron, but bigger problems not addressed in the article include:
- Total disregard for the user interface experience of the host operating system, as native UI toolkits are often not used
- Since native UI toolkits are not used, knowledge that the user already has about using their computer and how user interface elements should behave becomes useless every time they download a new Electron app with a different "design"
- Electron app developers are rarely qualified to design good usable UI elements from scratch and are often really bad at it
- Complete lack of accessibility integration - don't even bother trying to use an Electron app with a screen reader or other assistive tech
Yes, Electron helps you to rapidly prototype and release something faster, and it might even lower the barrier to app development, but it also encourages JFDI mentality and somehow the poor end-users get forgotten about.
And that is why developers should shun Electron apps. The fact that every developer uses them is shameful. We should have more self respect to not use memory hogs and inefficient programs.
This is true too. More and more hipster electron apps these days wallowing in RAM on our constrained systems. And we don't have a choice. I can't choose not to use MS Teams at work. And the web version can't do audio/video meetings on Mac.
> Electron might just be laziness - or inability to really care about the user.
Or it might be that it is just good enough for the target user. My 2013 Macbook has enough power to run all the Electron apps I need without slowing down...well it did once I removed Atom and learned to love Visual Studio Code.
I think that Atom's performance woes and resource hogging tends to be a stand-in for all atom apps.
Get over yourself. I run multiple electron apps all day long without issue.
> You can make pretty x-platform apps in JavaFX, QT Quick, GTK, hell even Lazarus, and they don't eat CPU and memory like Electron does.
lol, if those are your idea of pretty... The reason Electron is popular is because those frameworks are, and have always been, garbage for garbage software.
I’ve got two macs, one from 2016 with 8gb of ram. Running a single electron app on that computer results in the rest of the system becoming totally unresponsive making any sort of multitasking impossible.
There is nothing wrong in using Electron. What if Electron folks release a JRE sort of thing - a one time install that can support multiple Electron apps by sharing the underlying Chromium libraries. At that point we can bring down the app size to couple of mbs at max. And we can keep the same codebase without changing a single line of code.
Regarding memory usage, it is indeed a memory hog and would require at least 100mb of memory per app. The only way we can see an improvement there is the Chromium guys doing some serious tuning to reduce the memory usage(Leakage perhaps?). Also not sure if we can even share the runtime between processes (Like windows dll), if that is possible, then we can hope to even bring the memory usage down.
Instead of forcing developers to learn different programming language and APIs for each operating system, we should as a community think about improving ways to make Electron or something similar even better.
Try this 1-liner in your Terminal (if you're on Mac)
On my system, about 20% of my installed apps are Electron now, and this number is growing. No matter how much RAM & CPU you throw at these dogs, they just don't run any better. Gobs of RAM, wasteful use of CPU cycles. A modern desktop dystopia.reply