Every Windows 11 app should kill Electron, and Discord just showed why

Read the linked article.


Discuss on Hacker News

I’m pretty sure this was known since the early days of Electron. It was even one of the chief complaints about VS Code when it was first launched.

Electron’s value prop has always been about having one team producing one app that is supported on multiple platforms with minimal additional effort.

This article does nothing to address that.

Let’s hope we see a new wave of desktop apps rewritten natively, thanks to LLMs. Whether they use Rust with GPUI, C++ with Dear ImGui, or something else entirely, that would be great. Personally, I’m so fed up with bloated UIs. Windows is full of them, and it’s a pity considering how powerful our CPUs are.

On another note, Microsoft Teams and new Outlook use very little amount of memory on paper, because their main windows show up under the Edge name. It’s a Microsoft way of solving the high ram usage problem.

It’s hard to say “Discord just showed why” before the product is in production and sees actual use. Promising initial statistics, but the transition is based on a lot of assumptions that won’t really be proven until mass adoption and the software has seen long-term maintenance.

They keep talking about 2 accounts logged in so that’s why it’s still high. But they’ve done nothing to defend that claim.

Also, pro tip, you can still just use it in browser. I hope that doesn’t go away.

I would not add alternative accounts to the account switcher, they’ve used these to coordinate bans ever since the account switcher’s inception.

C++ with Dear ImGui

it would be absolutely awful

compared to chromium, it’s really limited, like it’s just always a compromise with these

we should instead figure out a way to do electron but better and make it easier to do the things you can do with e.g. React with native languages and frameworks

Signal is still dragging Electron, can’t have a working FreeBSD port due to dependency hell. Also VSCode.

Electron is pretty awesome in that it allows a small team to build a decent GUI app using their existing web skillset but it also feels like it’s time for something better at this point.

With the ram prices as crazy as they are. It’s pretty frustrating to have to run multiple GB eating applications just to do some basic tasks (90% is read and write messages, in the case of Discord). I understand that other people might use the more advanced features (voice chat, etc) but these could be loaded on-demand.

It’s a bit crazy to me that I can comfortable run an entire Linux stack (+ Podman, monitoring, alerting and multiple services) in 512 MB ram (with 40% free, just checked!). However my Windows PC needs 5.5GB just to show the desktop! Realistically it needs somewhere between 8GB and 16GB for some basic web browsing and even then it can feel slow if you have a few apps like Discord running in the background.

We have gotten so used to slow app startup these days I believe. I have recently started using Task Slinger 1 and every single time I boot it, I get a feeling that it was already running and it’s window just showed up. I wish all modern software were like this.

WebView2. Other applications can also use it but it seems like there’s less out-of-the-box functionality than Electron

By being dishonest and misleading?

QtQuick is quite good.

That’s also how Tauri claims to use so little ram.

I’ve rarely liked any Electron apps, both for the performance and because it seems to encourage a feeling of bloatedness, for want of a better word. Tried VS Code, but dropped it when they started putting too much AI in it and too much complexity. Sublime is so much better.

I don’t know…there seems to be something unpleasant about all Electron apps.

Meanwhile Zed isn’t really usable on machines without a GPU e.g. VDIs

https://github.com/zed-industries/zed/discussions/17212

I don’t know if we have a winner here.

or Rust with things other than GPUI

…exactly, and at some point you want to show inline animations or videos and all sorts of other media, show webpage previews, play audio snippets and all the other things things a webpage can do, and then you’re back to either integrating a browser engine or attempt to write one from scratch (the browser engine can of course be provided by the system webview, e.g. what Tauri does).

Crux, lets you use native UI but Rust for business layer: https://github.com/redbadger/crux