Many notable desktop apps are written in Electron lately to get the best of both native apps and web apps. Therefore, it also makes building for multiple OSes simpler that writing a native app for each one. The problem with Electron is that it is quite inefficient because it packages Chromium, the underlying web browser tech used by Chrome and other browsers.
The effect is that every such app is like running a separate instance of Chrome. This article goes into a little more detail:
…every single Electron application you download bundles most of Chromium, and every application you run is executing a good chunk of that code. There’s no sharing of resources here like there is with native applications, meaning Electron apps are going to take up more hard drive space and memory than an application developed with your platform specifically in mind.
The issue is that many commonly used apps, in many cases company-adopted and therefore mandatory for many, are now Electron apps: Visual Studio Code, Slack, Github desktop, Trello, and the desktop apps from Discord, Bitwarden, WordPress.
This blog post makes the important point about the cumulative effect of using inherently inefficient technology for development convenience:
That path lies a world where we can’t have nice things. That path lies a world where our laptop batteries need to grow ever larger to support our CPUs doing even more dumb crap. That way lies the return of shockwave flash, of warm phones in our pockets which are mysteriously flat when we want to use them. Of getting paranoid about battery life and closing apps the instant we’re done with them.
As hardware gets more powerful and software gets more inefficient, the user experience doesn’t improve as dramatically, even as magically, as one would expect. It also means that older hardware becomes less capable and therefore obsolete faster.