Writing directly to sectors of a block device is the kind of low level task I'd not think could be done well by web derived technologies like electron. I'm glad I was wrong.
Electron apps may eat too much RAM, have their performance impact, but for an app that is seldom used and won't be running continuously in the background, that is really not a problem. Considering that hardware constantly evolves, even if such evolution has been slowing down, the benefits on portability for these apps are a price I'm very willing to pay for.
Yep, this is exactly the type of application I don't care if it eats my RAM for a couple of minutes if it does its job well. In my experience it does. I just use `dd` if I have access to it but otherwise etcher does the job for me, for example on Windows machines.
Agreed. Little GUI utilities that I'm likely to only use for a few minutes every now and then can be Electron. Doesn't bother me a bit.
If it's something I run frequently for short spans (a calculator, a search-to-launch tool, that kind of thing) or leave open for long stretches of time (so, messengers, most kinds of document or text editors editors, anything that lives in the system tray) then it's outside that narrow sweet spot in which Electron doesn't suck.
The problem is that Electron applications don't just eat lots of RAM and CPU - they also have significantly larger installer sizes - usually in the hundreds of megabytes, it seems. (Balena's seems to be 140 MB, compared with 12MB-1MB for alternatives[1])
For small, one-off utilities, you might not care about CPU or memory usage - but you might want to minimize the installer/binary size because you're using it for such a short period of time or a specific task.
For instance, the Windirstat installer is 630 Kb, which is appropriate, because I use it fairly rarely. Want to guess how large the smallest Electron application would be?
There are comments elsewhere in the thread about this, but storage is not the only thing in play here: bandwidth (even in modern countries some rural places have very slow connections), energy use (it takes proportionally more electricity to transfer 140 MB vs. 1 MB, and running an UI that basically needs a web browser in the background is also a waste of electricity). Moreover in some countries a 1 TB SSD is not exactly affordable. And also in western economies, it might not be affordable for some people.
Electron apps may eat too much RAM, have their performance impact, but for an app that is seldom used and won't be running continuously in the background, that is really not a problem. Considering that hardware constantly evolves, even if such evolution has been slowing down, the benefits on portability for these apps are a price I'm very willing to pay for.