This reads like someone hired a consulting firm to send out surveys asking why people don't like Electron apps, without really understanding the problem.
None of the four bullet points actually address real issues. The security problem isn't that Google is bad at security (they're among the best really). The problem is that Javascript code is generally written with the expectation that it will run in a web browser's highly locked down security context. Performance is really the same issue: web apps are authored wastefully. For use cases where you visit a web page for a few minutes then leave that's fine, but when you then let that code run for hours with no sandbox you will inevitably hit perf issues.
Write native apps. If you can't afford that, just make a web page.
This seems to be changing as of recently this year. There have been many security-related changes including making options such as Node integration disabled by default [1]. Support for renderer process sandbox is also available [2].
Almost nobody can afford that, not anymore. If your application can be written in Electron and provide 80% of your features, someone's going to do it and eat your business alive. Especially if they can figure out how to leverage network effects to use their users to drag your committed users away.
Unless you have a core feature that _can't_ be implemented in Electron for some reason (I guess you're writing a game or something similar?), or have some other mechanism for locking your users in, writing a native app in 2018 is just putting your employees livelihood at stake.
It's not cool or fair at all, sure, but hey, us Marxists were telling you this will always happen for over 150 years now, and y'all still acting surprised.
All else being equal, native apps will always be better. Higher performing and longer lifespans. It’s like Winamp; simple, extremely fast, 21 years old and still kicks the shit out of modern music apps. Of course, if you can’t write well in native you shouldn’t.
> All else being equal, native apps will always be better.
I didn't write this wasn't true; I wrote this didn't matter.
Edit: to expand on this a bit: sure, most of the throwaway Electron applications won't have much life in them. But they'll suck the oxygen out of the room and kill everything else first, then fail. So if there was any livelihood staked on those superior native apps you made — well, those people are looking for jobs now. Hope all of them have it as easy as a young software developer.
> most of the throwaway Electron applications won't have much life in them. But they'll suck the oxygen out of the room and kill everything else first, then fail.
I agree, and this is the other reason I dislike Electron apps. Not just because of the utter disregard for user's computing resources, but also because of the damage those apps do to their surrounding ecosystems. It's hard to compete against people who can secure money faster than you by cutting corners and dumping waste on everyone else.
It's yet another example of "worse is better" causing a setback in the industry.
Yea, Winapp totally won the music app wars! Oh, no, Spotify seems to have won and AFAIK it runs in an HTML based UI even in it's "Native" app. No idea if it's electron.
So the parent seems correct. Winamp stayed native an lost. Spotify embraced the rapid dev that using a browser host brings to app dev and won.
The thing about Electron - and the thing that Electron fanboys either don't realize or don't care - is that with Electron, the company/vendor wins at the expense of users, who have to put up with their "application". No one really likes Elecrton apart from the vendor/developer and the most fanatic fanboys. Everyone else at best doesn't mind Electron.
If an Electron "application" is decent, people typically like the features or the online service to which it's tied but its Electron base is something that people more or less tolerate, depending on the degree it irks them. It's just a huge tradeoff, that's all. It reminds me of some Java or Python desktop applications, it's a similar kind of tradeoff.
The other bonus of Electron (from a user perspective) is it lets companies release software for Linux too. For maybe the first time in history, Linux now gets a release for all these major mainstream services/companies -- I can now have VSCode, Slack, etc. on Linux and they work well. I've been on Windows and Mac for years and in recent years using Linux finally feels modern and viable. I'm not sure if VSCode/Slack would even create a Linux client if Electron wasn't available.
Disclaimer: Not an Electron fanboy, I don't even develop Electron apps. I do enjoy using a Linux dev laptop, however, and am not a hardcore vim/emacs guy.
Yeah, typically users are mildly annoyed by electron applications because they either don't fit into the basic style of the OS or suck away RAM. They stay because of the service, something that is provided (the walled garden usually)
Which is why electron is so popular. I'm sure the whole "it's way easier to whip something together that kinda works" is correct in the short term. You whip something up and rely mostly on the hype and viral marketing to drive your app.
Yep, no one likes Spotify. No one likes Slack. People are just putting up with them. Except not really, a few loud mouths complain, most users are totally happy.
I never said people didn't like Spotify or Slack. In fact, I said the exact opposite. Please read the comment properly and try to understand, don't just skim checking for "the right" opinion.
Winamp won far before Spotify was even a contender. It won in another time. Spotify is winning mostly because people don't want to spend money for songs anymore and they don't give a damn if they own them. Which is not to say I don't like the practice, it doesn't matter to me.
They frequently didn't spend money for songs to start with they just stream them instead of pirate them which however much people complain about the revenue is certainly more than the zero they got from piracy.
The degree to which people didn't want to pay for music was kind of obvious when people needed mp3 players sufficient storage that filling them legally would have required as much money as a down payment on a house.
Desktop multimedia players are still a thing they don't even really compete with one another.
Spotify and Pandora are for letting you play a service's music. Winamp and 17 bazillion players are for letting you play a collection of digital music you control.
None of the four bullet points actually address real issues. The security problem isn't that Google is bad at security (they're among the best really). The problem is that Javascript code is generally written with the expectation that it will run in a web browser's highly locked down security context. Performance is really the same issue: web apps are authored wastefully. For use cases where you visit a web page for a few minutes then leave that's fine, but when you then let that code run for hours with no sandbox you will inevitably hit perf issues.
Write native apps. If you can't afford that, just make a web page.