Because why go for native performance when you can go for minimum effort on all platforms.
post
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.
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.



100%, but man these are making me nostalgic.
Then I have a read for you this Sunday: https://www.datagubbe.se/utildisks/
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 arent capable at all.
Which as a company, you want your app to look like your company, not some generic OS bundled app
Consistency of UI used to be treasured.
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.)
Sometimes all of this is there for a reason. I used to really hate standard Windows (and I still do) but it had one big advantage: everything was accessible, in the sense that it all worked very well for blind and vision-impaired people. Usually when people create their own custom look and feel etc. they never accommodate accessibility at all.
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.
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.
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.
I just tried doing some work on a convention center WiFi connection in a small town. And it was clear the software I was using had no concept of slow internet. No progress bars on downloads, no resuming when connections dropped.
Everything just assumes max performance and fast network.
works on my machine
I remember some years ago when a version of MSDN came out that had clearly been developed entirely on enormously wide monitors. Despite word-wrapping being a problem that the programming world solved many decades ago, this version of MSDN had completely fucked it up and you could only read it on a normal laptop screen by scrolling left and right with the horizontal scroll bar for every line. I spent months copying every article I needed to read into Notepad.
Lazarus, you're up! https://www.lazarus-ide.org/
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!


top 65 comments