News for hackers. Stuff that matters.
Re:Every Windows 11 app should kill Electron, and Discord ju... by EddieRingle on Saturday November 07, 2026 @08:51AM (#50404523)
Discord isn't really the model to follow here, IMO. They killed their native Android app and moved to React Native, and now they're dropping React Native (while mobile somehow keeps "native UI", according to their CTO's tweet). If they wanted to maximize code reuse and accelerate feature development, they should have instead considered Kotlin Multiplatform, then they could've skipped the React Native detour while actually building apps that are native to the platform. (Rust and its cacophony of UI frameworks are not really platform-native anywhere, as far as I'm aware. Maybe Pop OS, but I don't know anyone targeting that specifically.)

This bit is obviously subjective, but Rust as a language is simply not ergonomic enough for a lot of the use cases people are trying to apply it to, especially UI development. Most of the Rust UI libraries I've seen to date either use a more imperative style, or attempt to replicate more declarative approaches like Compose UI or SwiftUI, but without the nice language aesthetics that make it simple to read and write. And if the counter-argument there is for LLMs to be reading and writing this stuff, that's a whole other can of worms: (1) The subsidized inference era is quickly coming to an end and (2) if you're using LLMs anyway, why not maintain apps that are as native to each platform as possible?

Re:Every Windows 11 app should kill Electron, and Discord ju... by afavour on Saturday November 07, 2026 @07:44PM (#50409474)
IMO Rust is great for creating a shared library that native clients then use. Mozilla even made a great library to handle all the FFI bindings:

https://mozilla.github.io/uniffi-rs/latest/

Mobile UIs are different enough and, these days, easy enough to construct that to my mind there isn’t much value in the cross platform UI proposition these days. But logic? Sure.

Re:Every Windows 11 app should kill Electron, and Discord ju... by baist0 on Saturday November 07, 2026 @11:01PM (#50410316)
"the nice language aesthetics" is shit in your head. i want good program without buying additional RAM.
Re:Every Windows 11 app should kill Electron, and Discord ju... by saagarjha on Saturday November 07, 2026 @11:57PM (#50410521)
Kotlin multiplatform is horrible on iOS, it’s basically as bad as React Native.
Re:Every Windows 11 app should kill Electron, and Discord ju... by franga2000 on Sunday November 08, 2026 @03:25AM (#50411399)
Have you used Kotlin Multiplatform? I currently am and while it sounds great, it's nowhere near ready. Something as simple as scanning a QR code has been a week-long project - the Kotlin-only libraries suck, the Java ones don't work on iOS, the only Kotlin Multiplatform one pulled in 500 MB of dependencies (that's final app size, not development files!!).

There was legit a point where I considered embedding a webview just for the QR code scanning screen, but of course, embedding a webview turned out to be a similar mess.

Re:Every Windows 11 app should kill Electron, and Discord ju... by pindab0ter on Sunday November 08, 2026 @04:01AM (#50411546)
I am not very familiar with Kotlin Multiplatform, but couldn't you use a Swift/Objective C library for iOS, while using a Kotlin library for Android? What would be the blocker to this?
Re:Every Windows 11 app should kill Electron, and Discord ju... by franga2000 on Sunday November 08, 2026 @05:32AM (#50412006)
There's no blocker, but that's not a comparable development experience to more mature cross-platform toolkits.

I now have a separate QR scanning implementation for three platforms and a bunch of if statements in the Gradle files. It took 4x as much effort (once for each platform, plus the work to tie it all together) and now I also need to know how to develop for those platforms, which is exactly what I wanted to avoid by picking a cross-platform toolkit.

This will hopefully improve with time, as it did with RN and Flutter, but my point is that we're simply not there yet.