4 ms·
At Nylas we made a huge bet on Electron-- our desktop app Nylas Mail actually started as a fork of Atom Shell before the project was rebranded to "Electron." T
by grinich 10y ago
At Nylas we made a huge bet on Electron-- our desktop app Nylas Mail actually started as a fork of Atom Shell before the project was rebranded to "Electron."
To be honest, we would have never built this app without Electron. It allowed us to have a small team (2 devs) ship the first version of the app without learning an entire new dev toolchain on multiple platforms. There certainly can be performance issues with building on Chromium/Node but those can be pretty easily addressed.
We even had an early engineer with tons of Cocoa/ObjC programming experience and they still preferred shipping with Electron.
The HN crowd complaining about Electron kind of feels like the early criticism of Dropbox or the iPod. "This is technologically inferior and has fewer features so it is clearly worthless."
For some reason there's a deep-rooted philosophical opposition to Electron-like technologies from lots of hackers. But I predict it will be like Java-- everyone "hates" the JVM for years and calls it slow and then one day it's running nearly every mobile device and being used across Google.
It's not crazy to think Electron will evolve like this-- it certainly has the momentum. And the ideas of a web-based desktop app platform have been pushed by Google, Apple, and Microsoft in the past. Seems like we're finally getting there...
(For the curious: https://github.com/nylas/nylas-mail https://github.com/nylas/nylas-mail )
- pdimitar 10y agoIt pains me to see how a person responsbile for a pretty important app is as oblivious as you are to the real issues. Many people use laptops and their battery life matters a lot, being one "minor" factor. Not to mention that in a technical sense, your app really shouldn't take any CPU while idling. Doing a socket wait is something a Raspberry Pi Zero handles without going to more than 1% CPU, for half a second. At any rate, other people in this thread explained it much better than I could: https://news.ycombinator.com/item?id=14091782 https://news.ycombinator.com/item?id=14091782
- namuol 10y ago> [...] oblivious as you are to the real issues [...] I understand that you're frustrated, but this kind of language does not foster productive discourse. As I understand it, Nylas (grinich's OSS Email product/platform) wouldn't have been possible to build with a two-person dev team had they chosen to implement it in something other than Electron. Are you suggesting we're better off without competitors to the existing email desktop-clients?
- pdimitar 10y ago> Are you suggesting we're better off without competitors to the existing email desktop-clients? This is a false dichotomy and you are aware of that fact. This polarization shouldn't exist in the first place. And it can be eliminated with a small time investment. As developers of important apps, your contribution to the world influences culture. Other follow in your wake. Is that the influence to the world you really want to give to other programmers and business people? Time to market is not the only priority. That you treat a non-flattering language as me being frustrated tells me you will not understand that side of the argument however. So let's agree to disagree and move on.
- grinich 10y agoWhen you are a startup, time to market is literally the only priority.
- pdimitar 10y agoWe all work for money, I get that. After you do that a number of times though, promise me something: please reflect on my words again in the future. Devs at important app shops are influencers for much more than technology. You should try and be a positive influencer of culture. Sometimes it comes with a financial cost and I've been guilty of going the way of the money in the past myself.
- grinich 10y agoI'm not saying other things aren't important or should be sacrificed. Just that when building a startup, if you can't get to market... you die. Having a great culture or clean code or beautiful design doesn't save you if you don't ship. Those are still all things which can kill the company later, but none of them kill you as immediately and completely as failure to ship. So time to market becomes the ultimate priority.
- pdimitar 10y ago
- vatotemking 10y agoI've seen this before in various forms: * Don't use PHP its a fractal of bad design - most popular server side language before * Don't use JavaScript its a scripting language - most popular programming language * Don't use Flash its bad for security and accessiblity - most popular authoring tool for animated web apps. * Don't use WordPress its a spaghetti mess - most popular CMS * Don't use VB6! - most popular rapid application development tool The most popular techs are the most practical and easy-to-use ones. Im not dismissing the arguments. The "dont use" arguments are valid. HOWEVER, you can't just tell people to "do the world a favor and don't use this tech because". That doesn't work. Unless you can release a competing tech that does better, with less amount of work.
- rodgerd 10y ago> The most popular techs are the most practical and easy-to-use ones. Funny how a high priesthood of people who get paid a lot of money would pour scorn on anything that lets the "mundanes" solve problems with computers.
- flukus 10y ago> To be honest, we would have never built this app without Electron. It allowed us to have a small team (2 devs) ship the first version of the app without learning an entire new dev toolchain on multiple platforms. There are a number of email apps around, why would I want to use one from developers that put their convenience above mine (and my batter life)? > But I predict it will be like Java-- everyone "hates" the JVM for years and calls it slow and then one day it's running nearly every mobile device and being used across Google. Notice how the jvm is dead on the desktop? Notice how android apps are incredibly slow compared to a native one? Also, android has never run on the JVM, they created their own VM because the JVM was too slow.
- koko775 10y agoWrong on all counts. I say this as someone currently writing a native desktop app and someone who doesn't like Android (having shipped substantial Android and iOS apps): Android apps are not incredibly slow compared to native apps, and the ones that are aren't due to Java. Android has always _used_ the JVM, just not run binaries _on_ the VM – they created their own (Dalvik) because they couldn't ship a Java virtual machine, so they shipped a virtual machine and played bytecode games so the thing that ran wasn't Java bytecode, and it wasn't run on a Java-compatible VM. Also, Android has and will be running on the JVM, because they're transitioning to OpenJDK.
- flukus 10y ago> Android apps are not incredibly slow compared to native apps I still have to wait seconds for simple apps to startup. Apps of the complexity that would have opened instantly on a desktop of 20 years ago. Part of that is the speed of java and part is the extra memory it uses. >Also, Android has and will be running on the JVM, because they're transitioning to OpenJDK. Android is switching to the OpenJDK class libraries, not the VM, they've already built their own VM twice to avoid it. I think your confusing the VM and the libraries everywhere else too.