DEV Community

Cover image for Did Electron just suffer a major setback at WWDC?
Stephen Belovarich
Stephen Belovarich

Posted on • Updated on

Did Electron just suffer a major setback at WWDC?

With the beta of Xcode 11, Apple made it easy for developers to migrate iPad apps to MacOS. Now I don't think this spells DOOM for hybrid web apps made with Electron in MacOS, but it certainly would make me pause at a company where separate teams develop the same product for iPad, but have a different web based implementation for Desktop Mac and Windows. It makes a lot more sense to go native for performance or at the very least develop a PWA.

As a developer I'm torn. I like the idea of hybrid web apps built with Electron because it's the platform in which I develop, but having so many node processes running on my machine simultaneously can be a burden on performance. This is an unintended consequence of the hybrid web application boom we've had over the past 5 years.

If you run

ps aux | grep node
Enter fullscreen mode Exit fullscreen mode

in your Terminal on MacOS you can see all the active node processes running currently.

If you've got Adobe CC, Slack, or VS Code open there will be a long list of processes running, alongside any node processes you may require for developing a project.

I dunno about you, but I want a speedy machine for developing. I don't need all these other processes running. Except VSCode, which is currently my IDE of choice. There are times extensions can run wild in VSCode, usually after a monthly update and the extension authors have failed to update as well.

There is nothing wrong with Node.js. The V8 engine is so performant it runs on a Raspberry Pi, quite well in my experience. It's only when several processes start running that performance can suffer.

It's not like we can use the simplicity argument anymore when the same team could potentially develop an app for the entire Apple ecosystem and in turn get the performance of a native application. Might as well throw out that card.

It may be too early to tell the ramifications of this move by Apple to allow developers to migrate iPad apps over to MacOS, but wondering what you think? Maybe it's finally time to dive in and learn Swift.

Top comments (8)

Collapse
 
frothandjava profile image
Scot McSweeney-Roberts

I don't see how it's going to make much difference to anyone who is making a multi-platform desktop app. That iPad app isn't going to run on Windows (or Linux/Chromebooks), so you're still looking at coding a second app anyway.

Collapse
 
chchrist profile image
Tolis Christomanos

I don't understand what PWAs have to do with Node.js. Node.js is not a PWA requirement. The only requirement is a manifest.json and a service worker.

Collapse
 
steveblue profile image
Stephen Belovarich • Edited

Some hybrid web apps run node processes and too many node processes running at once takes too many resources.

Building a native application will most likely be more performant than hybrid app.

If engineers can port iPad app to MacOS this is a better option than building a hybrid app for MacOS (when developer resources are available to do so) IMHO.

Collapse
 
chchrist profile image
Tolis Christomanos

It is not possible for a PWA to start a node process. Maybe you are confusing them with electron apps?

Thread Thread
 
steveblue profile image
Stephen Belovarich • Edited

I’m using the term kinda loosely. Edited above article for clarity.

Collapse
 
mandaputtra profile image
Manda Putra

Maybe he talk about development process, maybe he create PWA with node.js framework, so it create multiple node process... I

However I still don't get it, what are this article about?

Collapse
 
steveblue profile image
Stephen Belovarich • Edited

This article is about Apple making the move to allow iPad apps to be ported to MacOS and why that’s important for developers. Developers rely on apps built with Electron for work, namely Slack and VS Code. All these apps running node processes kinda ruins the development process.

Collapse
 
steveblue profile image
Stephen Belovarich

PWA aren’t going away and I totally agree they make perfect sense in some situations.