Electron is Cancer
medium.com
medium.com
Electron is awesome. It lets me build powerful desktop apps in JavaScript. Nothing else lets me do that so well as electron.
And let me say something to you if you're concerned about its memory usage:
Don't use it. No one is forcing you.
If you don't use it then you won't need to whine about it.
> Okay, sure having a plumber cut out a square wheel from a plank is also a lot easier to do than having a woodworker carve a perfectly round wooden wheel, but it is gonna be one hell of a bumpy ride, and square wheels are actually fine, right?
the problem isn't electron, or electron developers. it's much larger than that.
Runs in 1mb of ram, and the download size of most apps made with it won't exceed that either. It's no C for sure, but it's really amazing to have cross-platform gui-support bundled into the language itself (windows & mac is ready, android and linux are in the works)
So yes, no re-use of webdev skills, but a really fun language, and immediate results - had I known about red before javascript, I would've never picked up JS.
i agree that electron is a suboptimal choice for a variety of reasons. however, one should probably ask a) why aren't these electron-based tools written with another technology and b) would they even exist at all were it not for electron?
perhaps the answer to the "electron crisis" isn't whining, but developing a new and better option (or renovating an existing one) that developers will actually want to use.
This is a huge part of it.
If I want to make a cross platform app, and I don't want to spend 1/3rd of my dev budget on cross-plat abstraction layers, then electron solves a real problem.
I can spin up multiple teams, hiring talent that understands 3+ different UI toolkits in depth, write 3 different apps, or use Electron.
I can spin up a huge cross-plat team that papers over the file system, app permissions, authentication, the clipboard, sharing, media playback, and text editing, or use Electron.
Now as features get more advanced, platform specific implementations will be needed, but to get up and running quickly, and to get something that people want to use, Electron is a great solution.
As for the article's comment
> There is nothing desktop like about Electron applications, they always feel out of place, even the simplest elements like the native menu bar is not available.
Every app now days tries to be its own thing, Chrome feels out of place, Firefox feels out of place, Notepad++ is maybe the one app I use that feels like a Windows app. FWIW Microsoft Office, the parts of which, combined, likely make up the most commonly used Windows app, has always felt different from the rest of Windows, because they acknowledge that specialized apps can use specialized UIs.
In the case of Slack, the UI is designed around what the product does. And a browser as a chat room is obvious, chats have been hosted in HTML like containers for ages, and a browser engine supports all the types of things users want to do in chat now days. If you had to choose a tech stack that:
1. Is primarily text based 2. Allows for quick styling of text 3. Supports media inline with text
Then a browser fits all of those pretty well. The new HTML5 features that make video chat possible are just icing on the cake. Browsers have made what once used to be a huge differentiating factor (video chat) into something that almost feels commoditized. Not to discount the huge amount of work that is still needed to get video chat working, but working video chat used to be an idea that got huge amounts of startup funding, but now with modern tech stacks, it is measured in engineering sprints.
What to do video chat natively? Well, I've certainly noticed that all the native video chat apps on my PC are sorta iffy. The effort to make it work was put into Chrome, why shouldn't everyone else benefit?
I can see why it appeals to front end web devs who feel the need to play at writing desktop apps - but Microsoft of all places, where they have an existing native client, now decide to go backwards and use electron.
Makes sense I guess when you consider their whole revamp of the iOS app took a useful business tool and tried to make it into an app teenagers use to share photographs of their genitals.
Edit: On Mac at least, you can still get the pre-Electron Skype.
Go to https://www.skype.com/en/get-skype/, pick "Get classic Skype" in the blue button/dropdown combo thing.
You're welcome.
The same snark would be directed at people thinking GWT is/was a good solution for Java dev's trying to create web GUI's without understanding html&css.