Why do people hate electron?

Why do people hate electron?

Other urls found in this thread:

josephg.com/blog/electron-is-flash-for-the-desktop/
stefankrause.net/wp/?p=144
github.com/mike-schultz/materialette
twitter.com/SFWRedditVideos

>JavaScript

i use firefox

Far more bloated than using traditional GUI toolkits and programming languages.

But it provides a giant community of plugins, mods, and extensions.

How much are they paying you?

?

Nothing you couldn't get out of any other library.

It's fucking up my font rendering

Most applications aren't that complicated that you have to worry about resources

josephg.com/blog/electron-is-flash-for-the-desktop/

Its literally flash on the desktop

What? I'd love to know which libraries provide a public API for any user to just write extensions for any Qt, Quartz, or WPF.

It is already bad enough that gtk has six gorillion of versions and they don't support same themes (luckily qt is not that bad because it uses the same for 4 and 3 version and could as well imitate gtk theme, it's just that gnome what is a piece of shit), electron has its own theming on Linux which doesn't adapt to neither gtk nor qt. Electron programs look even more out of place.

So why care? Steam and Photoshop don't obey osx and Windows ui specs. Why should we care so much that our applications look consistent with our theme?

I don't get this guys argument. A lot of narrative c written applications are very large and use up lots of disc space, especially as they are like visual studio, daws, Photoshop, skype, etc. Why is it an issue when slack does it compared to anything else?

>running a full web browser just to display your shitty UI made in javascript because you're too retarded to learn anything else

>developing an application in C poorly for over a year which you could have developed in JavaScript and electron in a weekend

I don't have anything against it. VScode is made with it and is my preferred text editor.

>javascript
>a whole fucking chrome instance for a shitty "web app"
Java looks top tier compared to this piece of shit.

>not using Qt5 with QML instead
There are more options than your garbage and the "muh pure C" autism approach. If you're developing mobile apps, there's also React Native, which allows you to use javascript without running fucking Chrome.

>Use the botnet browser for your applications!
No fucking thank you

are you fucking retarded? Java can go fuck itself.

Yeah, but no matter what you're writing you're probably going to use libraries which electron already has in chrome. As opposed to using different libraries for each os which takes time and more debugging. You could complain that there are no shared libraries with electron so each app has to use the same library each time, but isn't that also true of applications packaged in containers one flatpak and snaps and also solve the same problem that those packages existed for (take a small amount of extra space, kill the problem of bugs caused by different version requirements of the same library)

Java Swing is crossplatform and has easily usable themes to make it look native.

Why don't we just use that?

>gives webshits a chance to make desktop apps
pajeet no

You guys are unemployed retards.
The reason Electron is great is because most companies hire web developers and already have their bullshit products built as a webapp.
Most likely the webapp is already setup with a "mobile-first" responsive layout.
So, Given they have a responsive layout and application already finished, why would they NOT spend one week literally dragging and dropping files into an electron project resulting in a desktop version of the application that runs on nearly any resolution?

This guys gets it.

Electron is a good idea, it's just done poorly.
If they would fix a few things and add a few things, it could be really good.

fine, i'll bite
>disc space
>comparing enterprise discord chat with a full blown IDE and a and of the most advance graphics editors
>narrative c
what the fuck? What does C have to do with anything? You should compare electron with other GUI toolkits, not with a programming language. And none of those are programs are written in C anyway

A whole fucking browser for very basic programs.
JS in desktop software.
Electron is a fucking nightmare to port.
Enables Webdevs to write desktop software. This drives down the average software quality of the whole world even further.

Op here.
This just seems like the same arguments people made about c vs assembly (C used to considered a high level language) then C compared to what we now consider high level (java, python, etc). Now it's high level languages vs bavascript frameworks. I mean it's the same complaints. Too much ram, too much disk space, too slow.
I mean, my computer isn't particularly amazing but it can handle a crapton of electron applications concurrently. That 100 extra MB of ram x 10 is still not touching my 16 gigs. My laptop is like 4 years old and I only paid 500 bucks but I'm not seeing any performance issues.
If you're not developing something that's resource intensive like a 3d game, cad software, etc. Is using electron really going to destroy the computing world? I don't think it is.

josephg.com/blog/electron-is-flash-for-the-desktop/

It is much more efficient than this piece of shit
kys

is it unreasonable to not feel like throwing 2 more gigs of ram to my computer every year to be able to run the latest update a literal text editor? what are the upsides if i do so anyways? cross-platform gui? there're many toolkits out there that already do this. saving companies some $$ only hiring js codemonkeys? no thanks

60 MB minimum installation size

You start an Electron project, don't put in any code or assets, build it, the resulting binaries are 60MB minimum.

Cocoa

>bakascript
ftfy

>want to make text editor
>decide best approach is to turn google chrome into notepad ultron
Atom is taking up 447 MB of ram right now
i have a single, completely empty file open and that's it.

powerful idea, maybe electrino and whatever wasm shit out will improve on it enough so that my text editors don't become my bottlenecks

yeah i love each program using 170MB of ram you cunt

faeces sometimes comes with a complement of delicious corn and nuts

fucking murder yourself

>no matter what you're writing you're probably going to use libraries which electron already has in chrome
But you're never going to use all the garbage it includes.

>using different libraries for each os which takes time and more debugging
Qt5 runs on Windows, macOS, GNU/Linux, Android, iOS and more. It provides a lot of functionality as part of different libraries, so you can bundle only the stuff you actually use instead of a full fucking browser.

>but isn't that also true of applications packaged in containers one flatpak and snaps and also solve the same problem that those packages existed for
Yes, that's garbage, but still not as bad as having 9999 copies of a web browser. Also, you're not considering the performance and battery usage factor, storage is not much of a big problem in comparison.

The battery argument is the dumbest god Damn argument. Your applications and ram usage isn't doing much to your battery life. Compare a minimal install of any distro on your laptop compare it to a full install of the most bloated and you'll see a little difference between battery life because the thing using the most of the electricity on your computer is your screen. Not your Fucking ram you degenerate

How much ram do you ever use. I have 16 gigs, I rarely use more then 6. Even if it took 500mb of extra ram for each electron application I still could run 20 more electron applications and still not use all of it. It wouldn't effect my battery usage much at all. I have no idea where you got this myth that ram uses tons of electricity and it wouldn't effect performance because having unused ram doesn't increase performance. What is with you autistic desire to limit ram usage as much as possible. Are you still using a a 386 or some shit?

Do you? Because we have had 32 gigs of ram wildly cheap for awhile and no one ever uses even a quarter of it.

Everyone is missing the obvious here and flinging shit because the most complicated program they've worked on is a fart app or crud site. I work in Enterprise software and you want something easy to build and maintain, that's flexible, that's easy to deploy and support. The modern browser is powerful, especially for ui, and deploying updates to a webserver is easier than dicking with sccm and Citrix. 95% of our workflows can be done in a standalone browser, which is ideal. We need electron for that 5% where we need to interact with the filesystem, or talk to a device over a serial port, or integrate with some 3rd party app from a decade ago through COM. The things you hate about it are valid, you just probably haven't worked in the kind of environment where they're the better alternative.

C is literally just as fast as asm.
Python/Javascript are 10-40 times slower than C. You're comparing apples to oranges.

Wrong
stefankrause.net/wp/?p=144

Even if this were true, you know what's more important? Solving actual problems and getting paid.

how the fuck have i never heard of this???

>javascript for desktop programs
>of all the things, fucking javascript
>having to run a full blown chromium instance to eg talk to people
>this is fine
How can people like you even exist?

Why have applications that use more ram than necessary, when there are perfectly acceptable solutions that not only use less, but are far more performant as well.
It's not a question of whether we can use this. It's a matter of whether we should.

>oct 2016

Ok

Electron is what you'd get if you mixed the worst parts of JavaScript, Perl, and Flash togehter and then allowed Satan to take a shit on it.

>people trying to speak about web technos without knowledge : the post

>Why have applications that use more ram than necessary,
massive development time savings, portability, extensibility, etc
i can tell you've never shipped something.

I'm not going to speak for everyone. But I am more of a proton man myself.

Electron is just too negative for me

Retards fall in love with their first programming language and refuse to move on. Before JavaScript there was the same problem with retards that learned Pascal and felt it was delivered to them from God.

Electron is a tool that lets people who don't necessarily know any basics about CPU/memory/OS to write applications. And big surprise they end up writing incredibly shitty applications.

Its like a magic wrench that would let anyone work on your car. I'd still want a mechanic to work on my car.

When did you last check ram prices? Four sticks of 8 gig dram will run you $350-$400.

Probably because it runs like shit.

>shills defending shitty practices: the post

Sup Forums hates JavaScript and Java

Letting Pajeets take jobs.

>no cogent argument
>no understanding of subject matter
>calls everyone who disagrees with them a shill
hi Sup Forums, you need to go back.

As opposed to someone who THINKS they know how the cpu etc. works and slows the entire project down trying to debug for multiple platforms

Because you can run on multiple operating systems with minimal effort and prototype and deliver faster, not worry about multiple libraries for things like media functionality also update faster at the expense of mbs of ram

Why people talk about javascript like it's some ancient language? 10 years ago it was a pain in the ass.
Now you can use it like a common programming language, even debug it ffs.
It has frameworks, IDEs, nice docs, norms, etc

Why the hate? Especially when you look at C evolutions and other "ancient" languages which don't evolve anymore

>running processes don't use up cpu cycles that in turn drain battery power
>muh ram usage strawman
are you seriously this retarded? it's like you've never used an electron app before. Go download the steaming pile of trash that is the """native""" Spotify client and come back here saying that with a straight face. Ram is the least of the issues with that piece of garbage.

>even debug it ffs.
Hey everyone, Tyron didn't rob a bank today. Everyone clap for Tyron for meeting the bare minimum requirement for being a member of society.

>What is file caching

>See github.com/mike-schultz/materialette
>Every release takes about 40MB
>For a color picker
>Rewrite in Python and tkinter
>Python installer is literally only 30MB

so developers never shipped anything prior to github blessing us with the savior that is electron?

Good to know.

The inventor of Node.JS switched away from JS because it's a turd.

The writer of express Js.. tj hollowaychuk switche away from JS b/c it's a turd.

async by default, unweildy scoping, gotchas with so many things in the lang.

It's just a gross turd and hopefully web assembly will give it a dirt nap.

That's neither here nor there, everyone knows B2B enterprise intranet shovelware is crap. The issue is companies thinking this is a sane model to follow for average consumer facing app deployments.

Peoplehate what they dont understand...

>>>reddit

>why do people hate spinning up individual Chrome instances for each application?
FTFY

>spamming so obviously

I have shipped plenty, right now I would not recommend to a client to try and ship an app with electron unless they were having a lot of trouble hiring non-web devs, and I mean a lot. If you focus on shipping above all else, you will inevitably ship bad products that fail.

Now there is nothing particularly wrong with using javascript to write a program, but there are multiple problems with electron's approach:

- chromium embedded framework is a bloated piece of shit that wasn't designed to have 10 copies running at once
- SPAs are actually quite complicated and not easy to work with once they get large, and especially when you start running up against V8 GC issues
- forcing the user to install things defeats the whole purpose of web technologies
- using web technologies to make a bunch of custom widgets that look and behave strangely defeats the purpose of making a desktop app
- resources are more constrained than you think, the average person does not have an expensive developer machine with 8 cores and 32gb of ram, they have a shitty HP, dell, asus, etcetera. think about what business value you are really getting when you bundle a 150mb VM with your app

it would be a lot more useful for the desktop use-case if this type of thing was designed as a thin, embedded web engine that you could add optional features onto, but i doubt this is even possible in this day and age, every web browser has ballooned in size and scope and become needlessly complicated.

Fun fact: the push towards electron and react and other "heavyweight" dependencies that increase the bug surface, attack surface, resource footprint, and overall complexity of your program for little business value in return is what eventually led me to quit web dev a few years ago. The web is a place where people go to exchange information. No one needs all this crazy shit just to read the news or send a message to someone.

>I have shipped plenty,
Fair enough, I see a lot of really uninformed criticism of Electron and jumped to conclusions.

>chromium embedded framework is a bloated piece of shit that wasn't designed to have 10 copies running at once
Agreed, but most of those issues are remediable and users aren't running 10 Electron apps at once (yet). This will be more relevant as time goes on.

>SPAs are actually quite complicated and not easy to work with once they get large, and especially when you start running up against V8 GC issues
This is just an application scope issue, something that should be understood at the planning stage. It isn't a criticism of the technology if people misuse it.

>forcing the user to install things defeats the whole purpose of web technologies
But Electron is not usage of web technologies in the context of the web, which is where this "whole purpose" you're referring to is relevant.

>using web technologies to make a bunch of custom widgets that look and behave strangely defeats the purpose of making a desktop app
This is a completely spurious criticism. You can make badly designed widgets in any framework.

>resources are more constrained than you think, the average person does not have an expensive developer machine with 8 cores and 32gb of ram, they have a shitty HP, dell, asus, etcetera. think about what business value you are really getting when you bundle a 150mb VM with your app
The majority of users have at least 8 GB of memory, which is plenty to run a few Electron apps. I agree this becomes a problem if you balloon the number of such applications you're trying to run, but that's really not a problem right now. If it becomes a problem, then we can talk about it. It isn't clear this will happen. Most CPU overhead issues are avoidable, but it can be a problem.

Really I think what people actually have a problem with is bad use of Electron.

(different person)
>I see a lot of really uninformed criticism of Electron and jumped to conclusions.
So do we all, user :^)
>This will be more relevant as time goes on.
That's setting yourself up for failure though, don't you think? It's like writing spaghetti code... sure it works now, but it's going to be an absolute bitch later. Might as well take the time in the beginning, and do it right.
>It isn't a criticism of the technology if people misuse it.
It's a valid criticism if it affects a large enough percentage of the userbase.

Don't get me wrong, I fucking love things like Electron. I think everything under the sun should be written in web technologies, because it's just fantastic. But Electron is to that end goal what Android 1.0 is to the latest one. While I think it has its place, I don't think very many things should be written in Electron. Perhaps if they had a shared chromium instance, so running ten Electron apps didn't run ten chromium instances, I'd have no complaints, but that simply isn't the case.

>This is just an application scope issue, something that should be understood at the planning stage. It isn't a criticism of the technology if people misuse it.
Yes it is because there aren't any other real ways to make "big" apps in javascript right now. Don't forget, the killer app that made electron popular was Atom, which has already way grown outside its scope and there's nothing that can be done. It will only continue to become more bloated and resource-intensive.

>But Electron is not usage of web technologies in the context of the web, which is where this "whole purpose" you're referring to is relevant.
No, it's not relevant because you are taking the 95% of cases where web technologies are useful and throwing them out, optimizing only for 5%. Shit makes no sense

>You can make badly designed widgets in any framework.
1) You cannot make properly behaving native widgets AT ALL if you're using using webshit
2) Webshit was not even designed to make widgets in the first place, it was designed to make web pages.

>It isn't clear this will happen.
It probably will because I doubt google is ever going to be interested in optimizing chromium for this use case, and there is little business value in trying to make yet another webkit fork. Big vendors are not going to care because as long as the code runs fine in a browser tab, the electron version will always be seen as a "nice to have but not needed" thing.

So to that end if you have an already popular web app and people keep asking for a desktop version then sure, go ahead and ship an electron version, it won't take long. But these "electron-first" apps are completely stupid and pointless and missing the point of webshit.

Typescript is what it should be. Javascript is a dinosaur and scope is still a major issue

Maybe its the fact you can use angular with typescript for a more modern oop approach without Javascript scope issues or unsafe syntax or even react. Both can be exported as a mobile app. There's no need for electron

>falling for the TS meme
user, I...

JavaFx pls

It's literally Chrome with some packaging scripts to make your shitty JS webshit code run. Huge fucking memory and CPU requirements.
> b-but v8! jit!
Electron apps take ages to start and feel sluggish throughout the life cycle. No amount of fancy beneath-the-hood tech can make Electron apps feel as smooth as a well written native app.
Finally, as if all this wasn't enough, they are raging fucking SJW (look up ElectronConf on twitter).

this, i'd rather have programs running under JVM than a 500mb electron instance that takes up my cpu cores

fpbp

Because it's an entire fucking webbrowser PER application, it's cancer.

>his shitty language can't even do multi-threading
>his shitty language just continues to run with undefined behaviour after fatal errors
JS is a fucking joke

Discord runs well enough.

But your points are valid, Electron will never be able to even remotely compare to native apps. It's an interesting way to get new programmers started on writing applications, and it shouldn't be looked at as anything more than that.

Can't they just crap like Visual Basic?
Even that's better.

this

i prefer my everything is emacs approach to this bloated everything is a browser approach

You've actually got a point. Microsoft cheats by making their disastrous VM based infrastructure tightly ingrained in the fucking OS of all places, but at least that means .NET shit can actually launch sometime in your lifetime thanks to ngen etc

So it's all the fault of capitalism once again.

It bundles a whole browser for something that could be just a web site/app.

You're a fucking faggot, user-kun.
In my last company, we tried porting our web app to a home-rolled wrapper on top of Chrome. It literally never works out as easy as idiots think of at the time of planning.

>webapp
Opinion discarded

>upgrade your system to supercomputer standards compared to 2005
>run the same shit as in 2005 but orders of magnitude slower and more ram-hungry
fuck you fuck you fuck you

RAM prices are through the roof, buckaroo.