4 ms·
So many divisive opinions here, but in case anyone reads this far down, here's my 2 cents: - Yes, desktop apps existed before Electron. But the top comment is
by automathematics 10y ago
So many divisive opinions here, but in case anyone reads this far down, here's my 2 cents:
- Yes, desktop apps existed before Electron. But the top comment is right. How many desktop apps. NOT utilities but full featured apps (like Spotify and Atom) that you loved either got swallowed up by other companies (Mailbox) or discontinued due to "lack of use" (read: lack of profitability). I'm sure if you dig deep you can remember quite a few...
I'm a game developer with a background in C++. But I'm developing my company's prototype in electron. This is because I can do it myself without needing to tap a bunch of people to help and find funding. I can bootstrap. Electron allows this and it's incredible. I couldn't make a cross platform game engine in a year on three platforms using native. Maybe you can and you're just a better human/coder than me (but seriously, email me in a year with your progress!) but Electron is allowing it.
What does this allow? This allows me to release a product (yay) and maintain a product easily (double yay!) and when you guys don't throw money at me.... I can KEEP maintaining it because of my low overhead. With native code and a staff of 20 I would be forced to shut down the product.
THAT BEING SAID
If the game does well? I'm not only using Electron, I'm using React (yes, it's a game. Yes I know, I've had this discussion. I'm crazy) so the next step is to port it to react native on the desktop and remove the Electron dependency. Totally doable since Microsoft is supporting it on the Univ. Windows Platform (https://github.com/Microsoft/react-native-windows https://github.com/Microsoft/react-native-windows) but macOS? Someone's working on it but it's of course not apple (https://github.com/ptmt/react-native-macos https://github.com/ptmt/react-native-macos). Ubuntu is on top of shit though (https://developer.ubuntu.com/en/blog/2016/08/05/introducing-react-native-ubuntu/ https://developer.ubuntu.com/en/blog/2016/08/05/introducing-...)
I can't speak for Spotify or Slack or any of the people mentioned (yes I know Spotify isn't using electron) but for a small company of 1 and a half people Electron is allowing innovation and project completion in a way that nothing else is for me. It's a great door to open to allow future optimizations. And hey, maybe Electron will slim down too... give it time. Remember how bad Windows development was? No? I do. But .NET has come a long way, maybe electron will too. If not, we can always port!
- castone 10y agoWhy not use Unity instead?
- automathematics 10y agoMainly two (honest) reasons: 1) After years of C++ in games, I've written a lot of JS. I believe in where the language is going and I saw an opportunity to use JS to write a cross platform 2-D game engine with low overhead and went for it 2) Unity lends itself very well to 3D games in my experience, or 3-D games with a fixed camera to look 2D. So this would likely lead to overhead involving "Well, let's just render the 2-d components in 3-d" which easily spirals into needing a modeler, a rigger, an animator, a concept artist and a programmer MINIMUM to run the game. As it stands now I need a 2-D artist and a single dev. Oh, I lied: 3) I can't create a business as easily marketing a unity mod than marketing a stand alone FOCUSED engine on one type of game. But if my plan fails, I can still write a unity renderer for my game since most of my logic is serverside and platform agnostic. So who knows! :)
- Asooka 10y agoIf you're doing a 2D game, won't SDL with Python and the assorted ecosystem be better than react native? IIRC the sprite operations are even accelerated with OpenGL these days.