3 ms·
Look at it from a product owner's perspective. I want 100% of users to have the same experience. Electron bundling a web runtime that gives the same experience
by awjr 9y ago
Look at it from a product owner's perspective. I want 100% of users to have the same experience. Electron bundling a web runtime that gives the same experience on each platform is absolutely key to giving them the same experience. There may also be security issues to consider.
- bkor 9y agoThat web runtime doesn't ensure that people have the same experience. You're still relying on the abstractions of that runtime. Plus that there haven't been any changes to it.
- hashkb 9y agoCan you elaborate? Are you saying that Electron apps have portability issues?
- pavlov 9y agoLook at it from the computer owner's perspective. I don't want your experience if it comes with 100+ MB of redundant code.
- hashkb 9y agoIsn't that size arbitrary? Downloading and storing a 100mb program takes the same (or less) fraction of your available resources today as downloading and storing a 1mb program in 1995. Are you short on disk space? Download is too slow? Is this a real problem?
- pavlov 9y agoDownload size is relatively harmless; size on disk is an annoyance and a real concern (a lot of laptop users have an SSD in the 128-256 GB range); but memory footprint is the real killer for me. I don't want every little widget to consume hundreds of megs of memory. In 1995 my computer had 8 or 16 MB memory... Having a 1 MB app running in the background would have been huge. I certainly don't want to go back to that era.
- Zak 9y agoMemory footprint is my big issue with this too. Related, I've noticed chat for various projects slowly migrating from IRC to Slack and have the same issue there. What could have been another irssi window taking up an insignificant amount of memory is now a 150Mb Chrome tab. To make matters worse, memory growth has stagnated. A Macbook Pro today, to give an example has the same maximum RAM (16Gb) it did in 2010. That's zero memory growth in 7 years for a popular developer machine.
- hashkb 9y agoWouldn't regular Chrome have the same issue? Each tab is a full instance... your argument is against Chrome and web apps, not Electron.
- rodorgas 9y agoChrome splits itself in various processes and usually each tab has a process. But each process is not a full Chrome instance. There's a huge difference.
- pavlov 9y agoNo, it's different. Each Chrome tab is a process, but they share the same dynamic libraries in memory. Each Electron app is both a process and a separate copy of the dynamic libraries. If you run half a dozen Electron apps, those redundant libraries will be taking up roughly a gigabyte already.
- MrBra 9y agoWould people give shit if Spotify was 100 Mb?
- pavlov 9y agoif Spotify were the only app using Electron, it wouldn't matter. But when every utility and menubar widget has its own copy of Electron, the footprint balloons quickly. And people are actually doing those kinds of apps in Electron already!
- awinder 9y agoWhich product owner? Totally agree with you, but the reason why it's delivered this way right now is a technical implementation detail. Electron could focus on delivering an API that abstracts away differences between runtime engines (as most web frameworks do). I'm sure bundling chrome in is a boon to simplicity inside electron, so maybe the distinction matters within electron, but i'm not sure that distinction should matter for downstream projects...
- nradov 9y agoThat is not a valid thing to want. The experience is supposed to be different on each OS.
- detaro 9y agoNot wanting your users to have an "experience" that matches their OS IMHO is bad design.