Like what? A chat client that uses 1+ GB of RAM and melts batteries faster than a flamethrower? No thanks!
It almost looks like this Electron/JS trend was started by CPU manufacturers who realised that current CPUs have more than enough power for everyday tasks, and needed a way to create demand for even faster CPUs. I’d say Electron (and JS in general) was pretty effective at that.
> manufacturers who realised that current CPUs have more than enough power for everyday tasks, and needed a way to create demand for even faster CPUs
Lol.
It's a common trend across software. Try comparing office 2003 to office 2013. Office 2003 starts instantly on a modern desktop and uses minimal RAM. Office 2013 takes a good four or five seconds to fire up and uses a few hundred mb memory. And they both do exactly the same thing. With cpu speeds and ssd proliferation there's no incentive to keep things low footprint any more.
Not at this scale though. Office 2013 uses maybe 2x or 3x the amount of RAM compared to Office 2003.
A chat client like Slack routinely uses up to 1GB while a native equivalent would use 100MB or less. We’re talking about a 10x increase here - that’s unacceptable.
Slack is essentially fancy IRC, so we can take any IRC client as a baseline for how much RAM it should really use.
Let’s take HexChat (https://hexchat.github.io/) for example - it does most of what Slack does, plus has advanced features not available on Slack like a Lua, Python & Perl plug-in API. It used less than 100MB or RAM after running for days on a Linux machine.
Slack is usually well into the GB of RAM after running for a few days.
The keyword here is fancy. Hexchat is an IRC client, sure, but it is minimalist. That would be like comparing a text file to a PDF and asking why the PDF needs so much more RAM when they're basically the same.
I feel like you're mutating the argument from "electron uses 10x RAM compared to native apps" into "an IRC client doesn't need to use so much RAM"
The proper comparison would be either a full, feature complete native Slack client with all the same bells and whistles that runs under 100mb, OR an electron port of hexchat with its text only interface that uses 1GB+
Well, I would understand a chat client taking more RAM should I ask it to pare & display some HTML, or videos, or PDFs. I'm not. I'm using Slack just like IRC - 3 users and a single channel even. No images, no videos, no HTML, no link previews, etc. That thing still absolutely melts down my CPU and RAM.
I get what you're saying, but we already know that electron (specifically embedding a whole browser with DOM) is the culprit. There are some native UI toolkits with bindings available for NodeJS, if slack was refactored to replace electron with one, it would probably peak at 2x as much RAM than HexChat rather than averaging 10x to 100x.
100x now? You're saying there are electron apps in the wild using 10GB of memory? I was trying to argue that the 10x claim was an exaggeration but you've just leapfrogged that.
an approach that assesses the truth of meaning of theories or beliefs in terms of the success of their practical application
You can have your ideal language, we'll just keep building great stuff in a good enough language.