I fucking hate Electron
Programmer Humor
Post funny things about programming here! (Or just rant about your favourite programming language.)
Rules:
- Posts must be relevant to programming, programmers, or computer science.
- No NSFW content.
- Jokes must be in good taste. No hate speech, bigotry, etc.
If given a choice between an electron app and nothing, I choose the electron app.
same. still dont like them tho
I choose nothing.
Or a website
You hate electron or you hate developers who make inefficient electron apps? Some examples? (Serious question, because I make electron apps)
There's no such thing as a efficient electron app. First electron apps have 80MB of overhead since electron needs to bundle a whole ass browser. Also in runtime this requires 120MB of ram.
If you really want to use webviews to make an app use Tauri.
The literal most popular IDE amongst software developers is VS Code that's built on Electron.
I know. I also use VSCode. However I just hate how much ram it uses. I had a Laptop with 4Gb of ram and I could not open VsCode on that thing when I had literally anything else open because the system would freeze.
Just because VsCode uses Electron doesn't mean that Electron is not bad
Tbf, it's typically language servers and extensions causing cpu and memory footprints. If you were to open a dumb txt file, I doubt you'd encounter issues. The app itself is pretty light. I say this as a neovim user who has managed to make its memory footprint balloon ^_^
I think parsing code and all the dependencies will require way more than 120MB of RAM so for VS Code the overhead doesn't matter that much. For smaller apps 120MB of ram is insane.
I love vs code but that does not mean electron doesn't suck
Developers who make inefficient apps. Most apps are sadly utter garbage
Often times there's just no reason to package a web app into an app container.
Yes
A pile of HTML + JS is the only cross platform GUI toolkit that's practical to deploy.
I'm not really happy about it myself, but realistically there's not any other option than just bundling a website into a wrapper.
And to pre-empt any replies; your proposed solution must support Windows, Linux (X11 and Wayland), MacOS, iPhone, Android, Chromium and Firefox.
Java, of course. /s
3 billion devices can't be wrong!
Real talk; if Java didn’t have their head up their own arses, it would have been the real solution. But Oracle does what Oracle does.
Do not anthropomorphize Larry Ellison.
And to pre-empt any replies; your proposed solution must support Windows, Linux (X11 and Wayland), MacOS, iPhone, Android, Chromium and Firefox.
If you are a website, that's easy, you are actually making the correct choice with Electron insofar that you want a browser.
If you're doing an application not a webpage, then we're walking W+L+Mac+Phones, that's more tricky. I'm assuming for a second you want a usable UI (otherwise we'd be using Electron again :P ) so we're talking two applications at least, one for mobile, one for desktop + maybe iPads.
And then it's usually already too pricey to bother:
- Web frontend devs are far cheaper than application developers.
- Might as well just do a website, runs in everything. Only need to develop once.
- Updating is immediate with a website, don't have to do any deployment/upgrade/downgrade plans.
I think Flutter and Avalonia both tick all those boxes.
Does Avalonia support Wayland? Last time I checked it wasn't complete yet.
Just checked, and unfortunately no, Wayland is still in preview.
Why is Firefox a 'platform'? I'm assuming chromium is for chromeOS devices, but I don't know of any device that just runs Firefox.
they probably meant web versions of the app that run both on chromium and gecko (firefox) browser engines
As Communism said, yeah I was ment a web application. No need to spend dev time working on a different version of your app if you can just reuse the web version.
If you count browser engines, don't forget Webkit.
Avalonia and Uno Platform if you are working with C#
"Here's a website that you needed to install on your phone to see!"
They want you to install the app so they cand send you notifications/ads.
Yup. That plus steal all your contacts and anything else they can get direct or indirect permissions for.
I though the same but I tried Tauri and it makes sense. Unlike electron you're not shipping the entire browser with your app and the the low level stuff is just rust so the integration is nice and easy. And using webview for UI? Why not? The reactive libraries are actually nice to work with, it's easy to customize, you have all the tools to inspect/debug your code. It's definitely better then trying to fit GTK into rust.
I'm using Tauri to play around with Rust. I like it so far.
I always thought it uses far fewer resources than electron.
If you don't like webapps, make native UI frameworks easier to use and cross-platform...
You mean, it's all Electron? 🌍👨🚀🔫👩🚀
At least webviews don’t (yet, Google be trying) have the ability to request attestation & ban me for not using the stock, bloatware OS every device comes with. Bonus that I get to keep my data inside the browser’s sandbox; it’s the easiest way to be safe with proprietary software.
If only my bank could get the memo & make their website not suck (it legit checks for Netscape Navigator 4 in the source) so I can be at peace with microG+LineageOS in the phone space (all the banks here do it & I already switched once until my bank, slowly but inevitably ‘modernized’ their app).