But there is no way the convergence on web technologies is not a market failure of some kind. The platform is not even that great to develop for! It's full of weird edge cases, unnecessary build steps and slow iteration cycles. Not even speaking of the often superflous frameworks and huge dependency trees which don't do much of anything.
You could build systems with much better devx and ux and an order of maginitude less memory usage and wasted CPU cycles. A bunch of such systems have been built over the years: e.g. Common Lisp + Comemrcial Tooling, Smalltalk Systems.
And real users perceive software as slow and buggy and generally crap. Just talk with your nontechnical relatives what their opinion is of the software we have inflicted upon their daily lives.
Throughout history we've only gotten more efficient with our technology and it's resources. Software might be the only field where it went the opposite. Now we are insulting users on low end hardware?
The same thing I did well on a 2GB ram windows 7 machine is a latency nightmare on a 16GB windows 11. The same exact task with the same results.
Don't want to completely hate electron. VS Code proved it can be done in a good way, teams showed us the opposite. Like the author said you can build slop in any stack: JS or native it doesn't matter. What matters is care.
This entire industry is cursed with people who don't give a shit, in it for a quick buck, are entitled and lazy. Maybe AI should destroy everything anyway. We had better software when we gatekept who can build it.
I'm certainly not trying to be insulting, but these threads do get more than a bit tiresome. There's very little curiosity in them towards understanding why Electron is so popular; maybe a tendency lately of HN to assume that popular things are bad, or that large companies do things exclusively for the wrong reasons.
Efficiency is coming up a lot in this thread, and almost universally without definition, because the people making claims about it are implied to be measuring the efficiency of the same thing: how fast your software can run on the least possible hardware. But efficiency can also describe how you use time, which as they say is the one thing you can't ever have more of. Or money, which is also rarely infinite.
In this thread I see takes like:
- "They're a huge company, they can afford to do it native!" (or they can write it once across 3 OS and the browser, and spend the time on other things)
- "Electron has bad performance!" (non-native performance isn't the same thing as bad performance, using more RAM than you think it should consume isn't automatically bad performance)
- "The UI is inconsistent with native apps!" (take it up with product and design, remember Skype? Or AIM)
Electron isn't going to take over the bare-metal powerhouse app space anytime soon, but that's not why anyone builds anything with it. It saves dev time, it makes the economics of bothering to support Linux desktop users make sense, most actual customers have more RAM than they need anyway, and you can still call out to native code for the perf sensitive parts.
Like you and the article said it's about caring. There are definitely bad Electron apps. There are bad programmers at every level between the user and the metal. But the scapegoating on here is so predictable I could have predicted half the responses in this thread with my eyes closed given only the title of the article and some of them are borderline against the guidelines in how little they further discussion. I at least hoped my comment was funny, even if it didn't add much either.
I definitely agree regarding the state of the industry as far as performance and care for the user goes across the board, even with the hotrod hardware we have access to now. Maybe it was inevitable with scale and time and I do lament that it's harder to economically justify cranking the most possible out of the hardware. With my original comment I mostly meant to convey a joking exasperation that these threads are rarely even about real profiling or real-world tradeoffs that make for interesting discussion anymore but just rote "Electron bad".
Screw the rest and if every app is an electron app that’s not true at all. It works if few apps are Electron apps
> and you can still call out to native code for the perf sensitive part
What is rarely done
It’s just another reason why computer get faster and faster but apps don’t.
Thanks to electron apps I can type faster than the program reacts and sometimes it even misses a key.
Did never happen on a desktop app
If you've never had a native app skip or a key or lag because you typed too fast, I don't know what to tell you. I've used some real garbage production software written entirely in God's own C that had those problems. I have twelve instances of VSCode open right now, some with huge projects, and cumulatively they're taking up less than 2GB of memory. It's just throwing stones in the wrong direction to put this blame on Electron at this point.
> They're a huge company, they can afford to do it native!"
They are an AI company, the AI could let it write native
Devs having no time is an obsolete argument
And unless there've been recent advances in longevity I'm not aware of, individual human devs still have a fixed amount of time on this earth, and there's no end in sight to the demand for software even if we 1000x the speed we can build it at today. They can spend it doing other things instead of futzing around prematurely optimizing chat apps.
I can’t go "look it built a browser from scratch" and "look it built a compiler" to "sorry, native apps are complicated"
You and I both know that AI today can't really build a browser or compiler from scratch on par with the cumulative human work put into Chrome or GCC. You could just as easily side-eye these companies like "well, if your AI is so good, why doesn't it build its own hardware and OS and run on that?". Even if they could, why would they do that except as a proof of concept? It'd still be more work and more time for no benefit at all to their customers or their business.
Right now on my machine, 5 whole docker containers, including two DBs and 3 dev servers, are taking up less RAM than Cursor, a glorified text editor.
And have you looked at RAM prices lately? It's possible that 8GB is all some people can afford.
Now even the good programmers don't give a fuck. Software development is now about burnishing one's resume and hoping for a massive payday instead of making stuff that's useful.
That changed. The following generation was still taught by those original folks, but they came up with a mythos around it.