4 ms·
We went wrong with Electron in particular: https://www.electronjs.org/ https://www.electronjs.org/. I am convinced this framework alone is responsible for more
by PathOfEclipse 4y ago
We went wrong with Electron in particular: https://www.electronjs.org/ https://www.electronjs.org/. I am convinced this framework alone is responsible for more performance loss on the desktop than any other single thing.
- gpderetta 4y agoVSCode is an Electron application and yet, while not being lightweight, snappy and efficient, is not a complete piece of garbage. I think the blame fully falls on the developers of such applications, not on the framework.
- Karunamon 4y agoThat seems like the exception that proves the rule to me. If every electron application is a bloated CPU/memory hog that ignores the OS conventions, save the one with major corporate resources backing it, that tells me that making electron apps not suck is out of the reach of most developers, and such a thing is probably inherent to the framework.
- wkat4242 4y agoAlso it's important to note that MS makes bit only the best performing electron app (VSCode) but also the worst (Teams). So even with MS' billions it's not guaranteed to become a quality product. Strange enough they're now touting the move to Edge WebView as the solution (since they finally acknowledge how bad Teams is) but never explained how this will solve the problem as it's just the same tech (chromium) underneath.
- freeone3000 4y agoIt's able to share one instance of the browser engine across multiple apps (the way that Chrome is able to share one instance across multiple web pages). It'll help some, but won't make up for whatever the hell react is doing all the time.
- rubicon33 4y agoAgreed and I’d go a step further and say that this was inevitable with the advent of JavaScript. Humans are lazy (efficient?) and will always gravitate to the easiest tool for the job. If “the job” is just to make a functional chat app, it becomes wildly efficient to simply wrap your web app in electron. I’ve done it to an existing web app and it took less than a day to suddenly have “native” .dmg and .exe to distribute. So when we yarn for the days of IRC, I think we should also yarn for the days when JavaScript was not the de facto language for everything which lowers the bar for development so incredibly low that you are ending up with truly garbage desktop apps that should be written in native windows SDK using C++.
- foverzar 4y agoJavaScript isn't bad. But if only it were used with native toolkits, instead of running a whole browser instance.
- furyofantares 4y agoAlright so I gotta ask, now that two people are saying they yarn for the days of IRC. I thought maybe it was a different idiom I was missing, but searching for "idiom yarn for" doesn't get me anywhere. Just a typo/misspelling of "yearn"?
- mnw21cam 4y agoSounds like a fairly good yarn to me.
- deafpolygon 4y agoSome HNers are secretly cats.
- moooo99 4y agoYou are probably right. But at the same time, there are a bunch of good desktop apps that would not exist without electron (or at least not in the way we know them today). But it still surprises me that Discord of all seems to care so little about the resource footprint on their users devices. Considering that Discord is still mostly used for gaming you would expect that users want the communication app's system footprint to be absolutely minimal and without any negative impact on the actual game. Thats why I always loved teamspeak so much
- georgemcbay 4y agoMy suspicions that some Windows app or another is using Electron under the hood are usually confirmed when I eventually click the app launcher icon and no window appears and I look in the task manager and see like 20 processes of that app running in the background but something is blocking new UI instances from displaying any UI until I go and kill all the headless zombie instances of the app running in the background with no UI attached. You would think with all the apps that use Electron this is something that would be fixed (I don't know if the root cause is Electron itself or some bad practice that people who use it do often enough that I've mentally associated it with the framework) but I've seen this issue with every Electron app I've used for any period of time (except VSCode) for years.