| ▲ | EddieRingle 2 days ago | ||||||||||||||||
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? | |||||||||||||||||
| ▲ | franga2000 a day ago | parent | next [-] | ||||||||||||||||
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. | |||||||||||||||||
| |||||||||||||||||
| ▲ | afavour a day ago | parent | prev | next [-] | ||||||||||||||||
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. | |||||||||||||||||
| ▲ | saagarjha a day ago | parent | prev | next [-] | ||||||||||||||||
Kotlin multiplatform is horrible on iOS, it’s basically as bad as React Native. | |||||||||||||||||
| ▲ | baist0 a day ago | parent | prev [-] | ||||||||||||||||
"the nice language aesthetics" is shit in your head. i want good program without buying additional RAM. | |||||||||||||||||