I love developing apps for iOS, especially with SwiftUI. I believe that it's the best developer experience that you can get.
I'm sceptical about hybrid/cross platform mobile development like Xamarin, React Native, Flutter and Kotlin Multiplatform.
On the one hand, those technologies tend to die out or be abandoned after a few years. On the other hand, they don't live up to their promises to speed up the development for both platforms, because the theoretical gained speed is counteracted by the quirks of those technologies and the problems with the compatibility to the native SDKs. They never seem to mature enough to be worth using.
In my opinion mobile apps should be written in native technologies, Swift+SwiftUI for iOS and Kotlin+Compose for Android. A great developer experience means fast development and better quality of the end product.
My favorite programming languages by far are Swift and Kotlin.
Swift combines the performance of low level languages like C++ with the feature set of Haskell and the syntactic elegance and ease of use of JavaScript. It has the advantages of every language and practically no disadvantages.
Kotlin has great syntactic sugar, making declarative definitions and initialization logic of types a joy to use. Sadly it's bound to the JVM and doesn't have custom value types (struct in Swift and C#).
What I love most about Swift and Kotlin is that they make it practically almost impossible to have null-pointer-exception bugs. And both have algebraic sum types, which make it possible to model data safely and elegantly.
I believe that the best code architecture for a project is one that is tailored specifically for that particular project. There are no silver bullets. It always depends.
Some of my thoughts about Swift and development on Apple's platforms, written as short blog-like articles: