Hacker News new | past | comments | ask | show | jobs | submit login

> 1) There is no way to separate the Electron engine from your app, so you have to bundle Chrome and Node with each app.

I'm really curious (as a non-Electron developer) why that's a problem at all, let alone a big problem. You have to provide the entire package, but you have control over what the user gets and ultimately, what you'll have to support.




What's old is new again. Same problem shared libraries solve:

1. Disk space. Electron, node, shared dependencies, that adds up. 300-500mb/app is not reasonable. 10 apps installed? 5 gigabytes! Wtf?

2. Security updates. Security issue in blink/v8? You need to update 10 apps instead of 1 lib. And I sure hope those apps are responsible enough to update themselves.

3. Bonus: CPU&RAM. Want to run 3 apps? Well, have fun with your 3 instances of chrome running. It adds up. I have 16GB of ram, I used to think it would last me forever and then the electron craze started to seriously limit me in the amount of concurrency I can have on my desktop.

Like GP said, Electron for UI is a valid pattern that has some pretty extreme issues preventing it from being a straight up good pattern. My bet is that an electron server on the desktop solves all this.


Re: disk space

Just glanced at my Applications folder on OSX. Slack's looks to weigh in at 180 MB and VS Code at 160 MB. Am I missing something?


It means a lot of extra space. You are duplicating installations of Chrome and Node for each Electron app that is installed, instead of having one install and each app using the common dependency.

So yes, the developer gets complete control over which version of Chrome and Node is used, but you end up with a 150 MB text editor, a 150 MB chat app, and a 150 MB music streaming app, when you could probably get all three done with 152 MB using common dependencies.


Is storage space really that big of a concern, with many multiple terabyte drives being commonplace? Out of all of the issues with electron, I don't think wasting 150MB is one of them.


Those are common, but small SSD are just as (if not more) common, so yes it matters. It's also a matter of RAM, which is not as abundant as disk space


OP is talking about wasting 300MB for each Electron-based app you install.


With many of the lower-end laptops, price-wise, having ~128GB of SSD space, yes, it's a concern.


I'm not sure that would fix the problem since the common dependencies would still be having to store different versions of Chrome.


I think it worked pretty well for NPM where there was the high possibility of duplication between the modules you depend on and the additional modules required by them.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: