Lets write an OS in Electron and go to March. Maybe start using the right tool for the right job. If i only know how to build with lego, I dont build a real house with lego, instead i learn how to do it right.
The problem is that even Microsoft choose to use Electron when they built Teams. MS got loads of developers and Teams is really a big product in terms of users.
and vscode
VSC is an interesting case because they opted not to use any JS frameworks for performance
💀 writing a text editor in electron and worrying about performance is wild /hj
It’s quick and doesn’t lag at all, even with the couple dozen plugins I have installed. Compare that to Atom (or whatever it’s called now) with zero plugins.
i cant relate sadly. ive got a decent computer but vscode still takes a while to load (with plugins). neovim on the other hand takes a split second to open, and has never crashed on me, even with the equivilent of my vscode plugins
Does Firefox support desktop PWAs?
Not natively, but there’s an addon that works really well:
https://github.com/filips123/PWAsForFirefox
Some assembly required.
JS land is the America of development. You may not like it, but it’s the encumbent power and it’ll be that way for a long time so might as well enjoy the plus sides
The McDonalds of fine dining
deleted by creator
also works
People that are upset about electron should consider it’s not:
Electron App vs Wonderful Fully Supported Native Linux Application
The reality is that your choice is largely:
Electron App vs No App (maybe running their windows app in wine if you can get that to work)
It’s not like companies are going to go build a native linux app but electron got in their way. It was always electron or no support.
So if you like the app, remember that the ram and the cpu you paid for doesn’t provide value unless it’s doing something. There’s no trophy you get at the end of your life for “most cumulative ram left idle”
I think Electron has made running Linux on the desktop much more viable than it was in the past. There are a lot of apps the average user expects which are now available all because of Electron.
And someone needs to inspect the package to see that it’s an Electron app, then it can’t be all that bad.
Web apps don’t even need electron, lol
A lot of people like the convenience of open an app over navigating to a website. A website also requires login, in most cases, where a Electron app may not.
Sure, I can use Github code spaces to run an instance of VS Code in the browser on someone else’s computer… if I want to login to Github, store whatever I’m working on in Github, and be at the mercy of whatever Github and Microsoft decide to do with Code Spaces in the future… Or I can download the VS Code Electron app, not log in, store my work on my laptop (or simply edit local config files), use whatever source control I want (or none), and have some control.
Or with Spotify, which uses CEF, not Electron, but close enough… Having it’s own app means the audio controls can be independent of the browser, which is usually a good thing.
Doesn’t Qt provide native, cross platform UI? I agree with your post though.
C++ is generally more difficult to use than JS. Styling is also more difficult.
We are aware, and we’d take “no app” any day, thank you.
You know that “no app” and “not using the app” is the exact same user experience right? So you can just not use the app and stop complaining about it existing.
This means not installing app AKA open in browser
“Not using the app” means instead of developing a real one, I’m being pointed at an abomination.
Uhhhhhh no
Idk who you think you’re speaking for, but I don’t think it’s as many people as you think lol.
Besides an electron app you don’t use and no app are literally the same thing, so why choose nothing?
Electron app I don’t use is less chances to get a normal app.
Making a normal app costs much more than making an electron app, so I press X
I will (and do) happily pay for quality software over using Electron trash 🚮
Dumping a trashbin into your backyard is even cheaper, doesn’t mean it’s a remotely good idea tho.
So, why is electron a bad idea?
The same reason why webapps are a bad idea. We’ve built monstrous browser engines to do fancy stuff to pages in a bonkers language in a sandbox, and the resulting abomination is neither pages nor apps. And now we’re like: we have so much expertise in shuffling page parts around to look like they’re apps, let’s build “real” apps out of them. It’s like rejecting headphones and towing a car with broken windows around with you just in case you’ll wanna listen to music: it technically works, but makes negative sense.
Even native apps usually use cross-platform toolkits which usually have very good Linux support. E.g. Qt, .NET, WxWidgets, GTK (maybe)
There’s no trophy you get at the end of your life for “most cumulative ram left idle”
Some people like to use more than 1 app you know.
Also, RAM is never ever idle. It is used as filesystem cache when not used by programs thus speeding up read accesses significantly.
Honestly even with more than 1 application open it shouldn’t be an issue. Maybe with a really old computer, but anything modern really should handle an electron app just fine
Just to nitpick, RAM is usually not idle.
Alright, let’s nitpick! No, it is never ever idle, every few cycles is a refresh cycle, which is work.
It’s great that you mention this, but this is a different layer of abstraction than what we were previously talking about.
Maybe we should make that a trophy
So if you like the app, remember that the ram and the cpu you paid for doesn’t provide value unless it’s doing something.
It could be doing so much more if you hadn’t gone with Electron you fuck
Right? Why are people talking like this? You don’t see Kubernetes and more generally, servers being looked at this way. We optimize like hell to make things fast, responsive and resource-efficient but on the desktop we just stopped caring or we just got very spoiled and lazy.
From the comments that have mentioned the efficient programming languages, my guess is there’s a bunch of devs in here that never got past the “c++ is hard!” stage.
The first time I saw an office app launch in my browser, I was both impressed that they got excel to work in a browser and appalled that they wanted excel to work in a browser at the same time. And I’ll admit that it does perform well considering it’s running in a fucking browser, but I’ll still launch the native app any time I actually want to work with a file that’s opened in the browser.
Hell I’m in the “C++ is hard” stage but that doesn’t mean we should just downgrade everything to Electron.
Keep at it, eventually things will click and you might find yourself appreciating the compiler errors and type strictness. Perhaps you’ll even spend time getting rid of warnings even though it will let you run without doing that, because they indicate edge cases that might break your program in difficult to debug ways.
I’m a Ruby on Rails developer that’s been doing this for so many years. I experiment in Crystal from time to time but I haven’t had the time in quite awhile to set aside to learn something new. I have an entire course on Swift bought and paid for but with all the side projects I have going on it’s been tough.
Yeah, time is always the hard part.
It’s all kinda the same btw. Like you’ll have different sytax and styles, but most languages have variables, loops, conditionals, functions, objects, inheritance, APIs to access OS functions like files and network, etc.
lmao, yea. Besides, it’s not like electron is that bad either. We aren’t in 1990, why would you care if electron uses a gb of ram or ten processes or this or that… they think that native means good, but more often than not native means a shitty ugly unusable application that will work (not really) just on windows
If a fancy text editor starts eating hundreds of megabytes RAM without having loaded a file, i think we did something wrong.
Though Visual Studio can do that too without Electron.
Have you ever had, in good conscience, a problem caused by an electron app using too much resources?
Because we are, again, in 2023: the standard is 16GB of RAM, with CPUs much more powerful and with a lot of more cores and thread per cores than the past. Complaining about a PC resources being used when these doesn’t actually create a problem is like complaining about GUI being bloat; or JS/CSS being bloat.
This of course doesn’t mean electron is perfect, cause it clearly isn’t, but it’s a good enough solution that can be iterated upon (see Tauri) and improved (the DX on electron is shit). Nor that every app should be in electron.
not everyone can afford 16 GB of RAM though, if you want to make your software accessible write it to work on as many systems as possible with few or no slowdowns or hiccups. Electron is a shitty bandaid because you’re a lazy ass that doesn’t want to write more efficient software for desktop and instead you keep making web applications running natively, which is and will always be wrong
It didn’t cause problems since i have a lot of RAM but i still hold the opinion that just because we have a lot of RAM, we don’t need to waste it. We could keep being efficient about it and get even more out of the same amount of RAM, you know. That said, if Tauri lowers the RAM usage of the same applications i’m looking forward to it.
Your kernel allocates all the ram anyway lol, it literally changes nothing to you
Hmm yeah, but what if applications had to ask for less memory from the kernel?
that would change nothing to you. Unless they are seriously consuming a lot of memory and filling up processes while not needed, then it’s fine. Otherwise it means the app was developed by a bunch of monkey, but that could happen - maybe even more likely - with native software as well.
Tldr: to the end user it changes literally nothing nowadays, to the companies and the devs it changes quite a lot. And to some degree, end-users won’t have to deal with shitty ugly apps (unless the designers are jerks, in which case you are probably working in the same company as me)
Uh, have you not? Ever run Slack on macOS? My work computer is a completely spec’d out MacBook Pro and Slack still runs slow as hell on it. I know VS Code isn’t Electron but it’s so bloated that I don’t have the patience to let it finish starting up on my old M1 MacBook Air; I’d rather use a native text editor than deal with the trash.
I use both daily, never noticed a problem. MacBook Pro M1 with 8GB ram. Eight!
on the vscode comment, that’s just plain wrong. here’s vscode opening up on a base model m1 air (it’s a test project but my works codebase also opens just as fast)
on a 8gb ram m1 air, with 3/4 chrome windows, slack, postman and two node processes running. as for slack, i agree its not as snappy as say, native macos apps but it doesn’t really bother me a lot.
I just uninstalled VS Code from my MacBook Air, it was never able to open without crashing. I don’t need it in my personal life so no loss there.
I run slack every day. It’s a bit slow sometimes but it doesn’t cause any real issues. Still better than teams. I’d rather have it as an electron app than as a web app.
VS Code is electron but it’s not meant to be a lightweight text editor like notepad. Must people are using it as an IDE at this point. Can you explain what’s “bloated” about it?
These apps probably wouldn’t exist at all if it wasn’t for electron so I’m grateful for it. The purists can pound sand like always.
VS Code is low than a text editor these days. It’s frequently used as a full fledged IDE now.
deleted by creator
A lot of the time, the alternative would be a website running in the browser.
I’d prefer that. One firefox instance can easily run 10 big fat websites while using like 6GB of RAM. 10 electron apps on the other hand? 32GB RAM won’t be enough.
Have fun updating those Electron
Electron IS a browser. It’s a Chromium browser to be exact with all the Chromium UI elements except the very bare minimum removed.
So the only difference that remains is running a website in a tab or in a fancy window.
I know that Electron is a browser. But the issue is that it’s a different browser, and AFAIK Electron applications don’t share libraries etc. like Chrome/Firefox tabs would, which makes Electron apps even more inefficient than web apps.
Yeah, I’d rather a website
Well, there’s also Tauri which requires slightly more testing since you actually use the device’s built-in browser, so there might be differences. The upside is a much smaller bundle size, quick start-up times and often less RAM usage than with Electron.
remember that the ram and the cpu you paid for doesn’t provide value unless it’s doing something.
Remember that house you paid for doesn’t provide value unless you fill it with elephant shit.
That’s consumerism. Another equally shitty statement: your liver doesn’t provide value unless it dies from all toxins in the world.
I think proprietary Electron apps better run in browser anyway because of trackers that you can disable via extensions.
I get around this with DNS-based blocking but I do agree with your point.
What about laptop battery life? More CPU usage = less battery life. WHY DOES NO ONE GIVE A FUCK ABOUT BATTERY LIFE???
The single most reason I switched from Spotify to Apple Music is that I was sick of seeing the Spotify macOS app at the top of the “High Battery Usage” page on Activity Monitor. I also actually noticed less battery life. Fuck Electron. I avoid apps made in it like the plague.
So if you like the app, remember that the ram and the cpu you paid for doesn’t provide value unless it’s doing something. There’s no trophy you get at the end of your life for “most cumulative ram left idle”
This is a damn homicide lmao
And very true. 32gb is 99 dollars Australia pesos, 16 is about 70 percent that. What a waste to let it sit around.
The issue is not RAM, it is how slow it performs.
I’ve never had a problem with the speed of an electron app be it steam or Spotify.
Running electron apps becomes a genuine ram issue when running heavy ram workloads like running heavily modded games
Download more ram, problem solved
As a full stack web developer, I FUCKING LOVE Electron. I can make really cool desktop apps, and you can deal with it.
Time to murder you in front of all Linux people
Where Linux
Dude, if it doesn’t hog memory then what’s the problem?
if
It kinda do though. VSCode, without a project open has 10 processes running and uses over a half gig of ram. I like VSCode to be clear. I also like discord but it’s just a chat app and apparently needs a half gig itself and 6 processes.
I hope they’ll find a way to run all those applications in one browser. Like basically having a browser with multiple tabs but getting treated like seperate sandboxxed apps.
Does tauri do this?
So, a web browser?
Browser already do this. At least on Linux all browsers use namespaces(containers) for tabs
Pretty sure he means for separate electron apps
Yeah, if all these apps are gonna use a common framework we might as well let the operating system handle it.
You should come over to vim. It only takes 12 months of intense training and an additional 3 years of super glueing random rc file configs together before it works how you want it to
And that’s just to figure out how to save and exit.
I use IdeaVim in JetBrains IDEs, does that make me some kind of monster?
Yeah, but once it’s all setup, you get to see all your coworkers roll their eyes when they see you use vim at every job from that point on
So, all worth it in the end 👌
Also, I’ve saved at least $5 over the last decade from wear and tear on mice
It is slow and usually anyway consume more memory than any native application built the same way due to it have to run a web browser. It is also taking up more storage space and updates are bigger and you need to watch out for we browser security holes. I think Electron have some limitations so you can’t do everything you want with it like a native application.
I’ll take shitty electron apps over winforms any day of the week.
I guess I should be happy that I’ve never heard of winforms?
You have you just didn’t realize it. Think every shitty windows XP app you ever used. They were usually built with winforms.
Well, screw you too, do you know how much easier developing web apps is compared to native ones? I’ve only tried to use gtk and qt and took more years off my life than the entire time I’ve spent learning web stuff… I genuinely don’t know how people have the patience and expertise to use native frameworks…
you can usually tell by the size (and ram usage while just sitting there)
Not very found of them either but it’s hard to do without them, matter wise.
@HenriVolney @Oha I don’t use a single Electron app currently. I might consider VS Code though.
I guess my pun got lost in everybody’s logics. Poor me, unable to connect with my fellow lemmys.
@HenriVolney I’m terribly sorry.
it’s hard to do without them
Just load the wrapped website in a browser.
Or even better, encourage native apps.
You mean native Windows and macOS apps? Because that’s what you’ll get, mostly.
Or Linux, yes.
Or even better, steal their source code. 😈
That’s not better at all.
I guess my pun was lost on your computer mind too, I’ll go back talking to my physics pals
Back when I had to use QuickBooks I realized it’s just an Electron app. I ended up wrapping it myself and it outperformed their official app. 🤣
That works for some apps but not anything that needs access to the filesystem and/or devices. Things like VSCode or mod managers, etc.
That works for some apps but not anything that needs access to the filesystem and/or devices.
Granting some application with a bundled ancient and insecure Electron build is insanity.
Things like VSCode
Luckily there are plenty of native source code editors out there, for example Kate.
Granting some application with a bundled ancient and insecure Electron build is insanity.
Granting some application with a bundled ancient and insecure library of any kind is bad. That is not a problem exclusive to Electron it applies to static builds of any application ever made.
Luckily there are plenty of native source code editors out there, for example Kate.
Okay but that’s not the point. You said, “Just load the wrapped website in a browser.” Some apps won’t function like that. The fact that alternatives exist is irrelevant to what I replied to.
Okay but that’s not the point. You said, “Just load the wrapped website in a browser.”
I replied to “it’s hard to do without them”. So yeah, opening wrapped websites in a browser for most Electron apps and using native alternatives for the rest is totally feasible and absolutely not beside the point.
Yeah, it’s feasible to do that. And? My point was that you can’t just rip out the web portion of an app and always expect it to work in a browser. That’s it. What you said is irrelevant in the sense that it has no effect on whether the web portion can run in a browser or not.
You’re aware that Electron app have access to much more stuff than what you can do in a browser? Like, important, functional stuff?
Getting really tired of “this is just a website” approach. It’s starting to feel like /r/programmerhumor here.
Are you aware that a huge chunk, most likely the vast majority, of Electron apps don’t use all that and are just wrapped web sites?
a huge chunk, most likely the vast majority, of Electron apps […] are just wrapped web sites
[citation needed]
[citation needed]
If the question was “how many repositories on GitHub mention the word electron”, your answer would be correct. As it stands, citation is still very much needed.
If the question was “how many repositories on GitHub mention the word electron”, your answer would be correct. As it stands, citation is still very much needed.
That is a valid citation. You can count yourself how many of those repositories are just for wrapping specific websites by random people. If you think I’m wrong, put your money where your mouth is and provide a citation yourself.
just because electron apps have access to system features that browsers restrict access to for security reasons doesn’t mean they’re not websites in a trenchcoat
deleted by creator
so “sudo rm -r / --no-preserve-root” ?
deleted by creator
professionals run everything on root
Professionals boot kernel in singleuser mode
Why don’t you like ctrl-shift-i?
ctrl+shift+i brings up the inspect tool you’ll find in Chrome. Which Electron is based on.
And that’s a problem?
No, it’s just a confirmation that the app is indeed built on electron, and not native.
And is that a problem? Depends.