5 ms·
I Have a Laptop with 4GB RAM – An Electron Rant
- djsumdog 8y agoExcept for blaming the Javascript language (all language have issues; and admittedly JS does have a lot of legacy cruft), I generally agree with this rant. I have a fancy Ryzen 7 and I do use Atom, but even the small bits of lag here and there brings me back to, "this is using up a shit ton of resources ... for a code editor" Electron apps tend to be at least 50 ~ 60MB in size. Who thought that packaging a web browser with your app was a good idea? At a minimum, all the old legacy stuff should be stripped out of the browser and it should only support the very latest standards in HTML/JS/CSS since you're not worrying about cross browser support, right? Oh no wait, Slack and Discord pretty much just pull their web app and cache a bunch of things locally. Things like Java/Swing, Adobe Air/Flash and other cross-platform app systems seem to now be a thing of the past. We've settled on Electron, and it's honestly shit, but what are the alternatives? Sure there's Python+QT and others, but they do require some packaging and customer installers for all platforms. That package on Mac/Windows is most likely going to have its own Python and QT runtime embedded ... but I bet that'd still take less space than Electron with all its dependencies.
- smacktoward 8y agoI love one of the responses: > Sure QT can create cross platform UIs, but with a $300 yearly price tag for one developer and no support. It's kind of amazing that we've gotten to a world where $300 for high-quality dev tools is considered an unreasonable price. If your software has any kind of revenue model at all, $300 a year is nothing! Cripes, I'm old enough to remember the days when you had to pay companies like Microsoft four figures per year per developer just for access to documentation.
- twtw 8y agoc.f. the objections to cuda on the rapids story currently on the front page.
- simion314 8y agoExcept you can use Qt for free in proprietary applications too, the response to that comment makes it clear.
- slededit 8y agoYou can, but then you have 50MB of useless DLLs that static linking would eliminate. At that point you have the same disk footprint as an electron app. Memory use would still be order of a magnitude better though.
- simion314 8y agoThis is not true, did you mean 50Mb ? And do you staticly build GTK or Electron? Qt is split into modules, so if you don't use Webkit you don't include that module, if you don't use networking you don't include that, if you only do a CLI app you don't include the GUI module.
- slededit 8y agoIts been about two years, but ~50MB was the range. Its quite possible the necessary optimization wasn't done (I wasn't responsible for that). But internal builds with static linking gave you that for free.
- simion314 8y agoMaybe they were using some debug version and maybe bundled 32 and 64 bits in the same package(I think for OSX had multiarch packaging a few years back when I was making Qt packages) I just checked VLC now and the Windows download has 38Mb, Qupzilla installer has 78Mb(this is a browser so it bundles webkit and probably some js enbine),
- slededit 8y agoThis was on Windows, and dynamic linking as the project was proprietary. If you pay the fee or are open source you can static link and it will be much smaller.
- anoncoward111 8y agoI genuinely, truly don't understand why there is so much push for fancy, resource-hogging web pages when the majority of websites exist just to collect data from html and store them in csv. Like, ok, sure you can't port Quake to HTML and csv but you certainly need 1/10th the amount of resources to run Quake compared to say, Discord.
- PascLeRasc 8y agoAre you talking about Electron or Dev.to?
- Bayart 8y agoI get the irritation about Electron, as it seems my own RAM's "purchasing power" has melted like snow under the sun thanks to it. But frankly, there's a wealth of IDEs/editors to pick from. Between vim, emacs, all the Java IDEs, VS, Sublime and slew of packages every one has... Everybody out there would have their taste serviced at this point before even thinking of moving to an Electron-based solution. Coding workflow is especially latency sensitive and coders are naturally prone to look for efficiency. I can't feel too sorry for somebody going out of their way to be inefficient.
- kristianp 8y agoIt's not just the editor/IDE though. It's also Slack, Discord, spotify, Skype(embeds a browser), and everything else recently developed, it seems. This was mentioned in tfa.
- glenrivard 8y agoFlutter would solve this. Really in someways it is a more light weight Electron.