So what's really wrong with Electron applications?

So what's really wrong with Electron applications?

Is Electron worth learning or is it doomed?

Attached: file.png (1365x971, 87K)

Other urls found in this thread:

youtube.com/watch?v=3tvDJTUoHkc
twitter.com/SFWRedditGifs

bloat. It literally runs a stripped-down chromium for every application
Enjoy your 100-200MB hello world

Jow Forums is really the only place where you find end users who pride themselves in having 512MB of RAM. The overwhelming majority of users have somewhere in the ballpark of 8 to 16GB, and an extra ~150MB of usage would hardly be noticeable.
Compare that to the obvious upsides of rapid prototyping, development, and deployment, as well as an extremely uniform experience across platforms, and I think I can understand why JS on the desktop is taking off.

>I want to run my desktop software in a browser
No. LLVM exists and a better world is possible.

It's not really a problem to use a couple hundred mbs of ram. It's a problem that it could be done much more efficiently. I kinda wanna build efficient software, at least to some degree. And a 200 mb hello world is not efficient in my eyes. Discord and atom are not ridiculously inefficient for what they do.

>an extra ~150MB
add an extra two hundred megs for every program and you will quickly run out of ram
Anyway, you should spend you ram on something productive, don't waste it on multiple instances of a shitty botnet browser.

The only problem is the ungodly amount of RAM it uses, other than that its not really a problem.

Idea is good just not executed as well

I was going to respond to all three of you with individual counterpoints, but I can already see that this thread is trundling down the same "autistic Jow Forums-tard has no comprehension of what the average end-user uses, owns, likes, etc." path, so I'm just going to call it quits early.
Side note: Discord is currently open on my PC and is using about 90MB of RAM with several conversations and servers in memory. So the "150 to 200" meme is bullshit already, I guess.

>Discord
>90MB of RAM
Dude please.

>I was going to respond to all three of you with individual counterpoints, but
Don't create a thread if you are not going to argue.
>Discord is currently open on my PC and is using about 90MB of RAM
proof or didn't happen

>install atom
>280mb
>doesnt have a proper setup wizard so it just installs on my tiny ass ssd
>packed full of uses bloat features
is there better alts ?

vim with some addons
emacs with some addons
notepad++ if you're a winfag

which addons are best for vim, say if I'm programming in Python and writing blogs with markdown/jekyll?

>just buy a better computer lol
love this argument

You can rationalize until youre blue in the face, but it wont change the fact that your inherently incorrect. Memory is relatively cheap and abundant. There is literally zero reason not to purchase a minimum of 8gb. I willing to wager you're just a broke neet.

nothing. it's an easy way to ship a working "gui for retards" that works on basically any platform with more than 1% usage -> Windows, Linux, MacOS. I've pushed for having an existing Visual Basic shit code app be replaced with an electron one for a new device setup tool for these very reasons.

>is there better alts ?
vscode(ium)

vscode or vscodium if you have schizophrenia

Attached: discord.png (2560x1440, 503K)

Although the memory issue is annoying because I'd like to see our abundant resources used efficiently, it's true that it's not a critical issue.

I'm more worried about the js cancer spreading further.

More resource usage is literally more harmful to the environment.

Woah, a server dedicated to Unity. Great.

Sublime text is better in every way. Is closed source but so are electron blobs

>It's a problem that it could be done much more efficiently.

how? literally every faggy OS has their own special snowflake way of doing basic shit like getting a 2D window. chromium does all the bullshit already for basically every platform exists and exposes a relatively easy to use and near fully complete api to do basic guis and 2d/3d content. hell it can even do shit like play video and sounds.

>discord
>3d gpu
lmao is it mining bitcoins

or you could use qt or any other multi-platform gui toolkit

it's ugly as shit

It just means its rendering engine uses the GPU. It's the case of many modern UI toolkits. That's not the problem, quite the opposite. The GPU is made to render graphics, and if it was not using the GPU it would use the CPU.

The issue is that a glorified IRC clients takes 10% of your RAM.

this, what if every program switched to electron, very bad timeline

just download more ram, retard. also it does waayyyy more than irc.

>It just means its rendering engine uses the GPU
Does it mean it uses dedicated GPU or integrated? And why does it use 3d rendering engine to render flat ui?

>or you can use a toolkit that exposes poor bindings for anything other than C++, has it's own opinionated C++ style and conventions and also has a license that could be commercially problematic.

ya, no thanks kid.

>waaaay more
The only feature it has that irc lacks is voice. And it doesn't require that much code to add voice support. Just listen to the mic and send audio over udp. That's basically it, a few lines of code. Half a gig of bloat is unjustified.

Security updates are shipped long after chrome patches.

Oh you can be in a group chat with multiple people sharing their screens in IRC? Thanks, didn't know that.

the real solution to the electron problem is progressive web apps and more web APIs, like the currently being worked on filesystem api. that way you could have only one, system managed, instance of your favorite web browser and still get all the electron advantages.

>exposes poor bindings for anything other than C++
I see no problem with C++, but if it is not your language of choice use a better language or another gui framework. It is not like you can use anything other than js with electron either.
>has it's own opinionated C++ style and conventions
So does every framework. You don't have to stick to it, though. You are free to use any code convention you want.
>could be commercially problematic
1. You can use free software for commercial purposes.
2. Stop being such a huge proprietary cocksucker.

Is that feature even useful? But even with it I don't see it justifies the usage of 500 mb ram. Especially, when it is not in use (as in that screenshot).

While I personally don't use Discord anymore(they banned loli), it was pretty useful when collaborating on projects with other people. Especially when helping brainlets with programming shit.

it's really useful, in general i find discord to be well worth the memory usage. it is pretty big but that's only a problem at 4GB of ram and less.

>they banned loli
this is just sad

LETS EVEREBODY SHIT ON STRIIT, THE STRIT IS TOO BIG FOR NOW

>this is just sad
Agreed. I thought those lgbtfags liked lewding underage kids, so what gives?

The idea is nice, but its implementation is bloated and dumb.
I like the idea of being able to use HTML and CSS to make my GUI, and just handle manipulating the DOM and Layout tree with the programming language of your choice.
But Blink and other Browser engines come packaged with a huge layer of shit that will never have anything to do with what my application does. Shit needs to be slimmed down. Or maybe go the Java route, and have users install a single "Electron" VM that other programs call into to serve the GUI. Granted, that comes with its own bag of problems.

It's shit, the atom text editor which is made with it uses like 200+ mb of ram and takes a long ass time to launch while sublime which is functionally/aesthetically near identical launches immediately and takes up a tenth of the ram.

Attached: DzVCPNkWoAANMFY.jpg (480x553, 26K)

Just use winform ffs

shitcord btfo

Attached: 1548971407666.png (412x24, 2K)

vscode
sublime text
vim

if you don't mind 1g of ram used for a hello world application go ahead

2d graphics are a subset of 3d. Graphics apis don't explicitly support 2d as a separate process, its just 3d rendering with an orthographic projection and you can ignore your z coords.

Except i bet your 500MB discord RAM is because you're on 500 fucking channels and in one of them a video someone posted is cached. Try turning off all your non-IRC features (eg don't preview/load rich media, etc) and see how much it uses.

All these "muh bloat" fags are the same sort of fags that complained about .exe files being 500KB for hello world programs 20 years ago. If you compile a C hello world program most of the binary is "wasted" on elf/PE structures and the C runtime, but guess what? It doesnt fucking matter because now we have 10TB harddrives and nobody gives a fuck about wasting 500KB per binary.

winforms is trash compared to html/css/js for guis, even ignoring the fact it doesnt automatically handle high dpi. In fact, i'd pick html/css over wpf/xaml too, which is like a poor imitation of the former.

>everybody has 16gb of ram
Normal users rarely have more than 8.

>shipping prototypes
And THAT is the problem with software industry right now.

>80 MB minimum binary size

n

people wants cheap computers.
(and they want ones that don't slow down)

>backpedal.exe 16GB
I'd respond with something serious but it would cause a page fault and the thread would probably die before I resume.

Standard office computers have been 8-16 for a while now. Only "ultrabook" memepads and bargain-bin old HP-tier laptops still offer 4GB RAM, and thats fine since theyre for people who want to do a bit of basic web browsing and check their email.

Electron is a bad joke. It's one of the few UI toolkits that can make Java+Swing applications look anorexic in comparison.

It's the same shit as node, where it's not at all suited towards the goal, but you can hire the usual JS code monkeys/pajeets instead of someone who actually knows how to do it right.

vscode is also electrón you drooling brainlet

Spotted the upgrade cycle cuck

>Standard office computers have been 8-16 for a while now.

Attached: 1550259626792.png (700x700, 220K)

I'd love to see proof.

>llvm
A better world has always been possible. Nothing new here but ignorants saying "Let's make everything in the web browser, my labtob has 32 GB lol who cares 500 MB abb to show bretty icons"

I wonder why the banks don't throw away their old OSes and install electron on the mainframes. I wonder why Airbus and Visa don't store their databases in electron.

Nigger-tier language and nigger-tier platform.

technically it's main problems are implementation issues. I'd probably like electron if it was comparable in resource usage to other GUI frameworks.

To be fair, unless you're dealing with multimedia, a GUI is bloat anyways.

>2.9mb to take a screenshot
BLOAAAAT

Electron is great because it works on all platforms. And working with CSS and JS is WAY easier than working with any boomer-tier shit you get elsewhere.

One thing I hope they will do in the future is allow you to have a PWA-like experience, where instead of downloading the entire electron ecosystem you just download the assets needed to place your stuff into that version of electron, then it's just a case of if you have that version installed initially you can run the application and it's like 30mb of files, and running multiple applications would be similar to running multiple tabs of chrome.

At the end of the day it's one of the only hopes linux has at actually getting half-decent software. Nobody would develop for linux otherwise. 0.01% market share, users who don't buy products, and they take up most of the support tickets crying. Be happy you get it at all, I guess.

JavaFX is better in every way. It performs better and it's more comfy to create GUIs as well. And soon Graal will support creating native images of Java 9+ applications.

Attached: firefox_2019-02-21_15-08-32.png (949x309, 25K)

so like Java except good

Bitwig's GUI is written in Java/JavaFX. Good luck trying to do this with Electron.

youtube.com/watch?v=3tvDJTUoHkc

Vim is fine out of the box, especially for markdown. But if you want linting, see w0rp's ale plugin.

I haven't seen very many other programs using JavaFX (other than Java IDEs), are there any others?

>and running multiple applications would be similar to running multiple tabs of chrome.
still separate instances of almost everything, so it's still going to eat ram like there's no tomorrow

>a GUI is bloat anyways.
It's neccesary bloat, because tech illiterates can't into CLIs, and not having a GUI guarantees your application to near obscurity, unless your target is people who like using the terminal.

Yeah, because people only run 1 program at a time.

>fucking retard suggests alternative compiler that has nothing to do with electron or js at all, while addressing none of the benefits
>another fucking retard continues the circlejerk like an npc
Stay in college/university faggots, you're out of your league here

Combine that with a repo system and you basically have the idea I've had
Like a browser currently does? Ignoring how sandboxing wouldn't be needed if you already trust the programs?

Imagine how utterly based it would be to have a full Electron based desktop environment. Everyone would be able to customize any aspect of your desktop's GUI in minutes by changing a couple of css or js files, rather than getting a huge package shoved down your throat every year, with all the settings compiled in and no real way to change them unless you take months off your life untangling the godforsaken C++ mess that makes it up.
Ironically it's exactly what it would take for all the leet CLI-only hackers on Jow Forums accept GUIs in their systems, because it would be the only way to make a DE truly modular and customizable.

>4GB RAM is barely enough nowadays to do basic web browsing and email checking
I hope all webdevs die horribly.
It would take over a terabyte of RAM to start, let alone run.
I don't use any browser other than w3m.

Replace JS with something performance like C++, Rust, or Go and this would not be terrible. Effectively you'd just be using HTML+CSS and some config files to modify UI elements/behavior.

>and an extra ~150 MB of usage would hardly be noticeable
You seem to be under the strange misunderstanding that your bloated application will be the only one being run on the machine. Where Electron is adopted by the masses, there will be plenty of 200 MB applications running on the machine side by side.

ok so not a lot of love for Electron then... are there any alternatives??

Attached: letgo.jpg (960x960, 61K)

the existence of high end hardware does not excuse nor mean that we should accept bad, slow, inefficient programming you fucking mong
your entire existence is mediocrity and your only purpose is to perpetuate mediocrity

Tbh they use windows, and windows takes 4gb to even boot in the first place.

On linux you can scrape get by with 3gb or so, even running some heavy DEs and electron apps.

Qt
JavaFX is nice too but suffers from the "Java" name

t. RAM manufacturer

If you want your applications to feel sluggish and start slowly on even a beefy computer, go ahead. Applications made with Electron have to execute ~100mb of runtime before starting the actual program.

Qt

No because everything else is varied levels of non-free or shit.

It's bloated, laggy, juddering, inefficient and has difficulties even reaching 60 FPS