SwiftUI: Good memories

Thomas Ricouard
2 min readMay 12, 2022

I’m the first SwiftUI fan, I’ve been doing it since day 1, I was at the WWDC for the lauch, the next hour I was already making an open source project about it. We were all amazed, it was the greatest Apple surprise of the decade for us developers.

It was awesome, it was all I was asking for, something to make iOS development fun again. UIKit is too much code, too old, not fun. So much code needed just to draw custom UI. Boring. SwiftUI was lacking so many features it was painful, the first few months were agony. But it was fun, so fun that the agony is long forgotten. The public API changed many times, I had 100 errors on my project between betas versions. I was barely sleeping because I was too excited for the next SwiftUI discovery. The next feature I would add to my app. The next beta.

It’s still great, it’s still fun, iOS 14 & 15 were greats with SwiftUI, a lot of stability and new features. iOS 16 will be great with it too, no doupt. A lot of behavioural differences too. You need to carefully test your app on iOS 14 & 15. iOS 16 could add a layer of complexity if you plan to support iOS 14, 15 & 16 with a SwiftUI app.

This is the future, there is no going back, nobody want to go back. Nobody want to write hundreds of lines of auto layout code. Nobody want to use Storyboard & Interface Builder.

You can make an iOS, iPad iOS, WatchOS, tvOS, macOS app in the same codebase, this is amazing. It still had its quirks, you still need UIKIt, AppKit, WatchKit from time to time. But hot damn, it made writting UI code fun again.

The iOS SDK has never been in a better position. It’s full of high level API for doing great things, and you can plug all of it (almost all of it) easily into SwiftUI. SwiftUI is that, a UI layer. You need many other tools to make an app.

Yes! I’m hyped for this WWDC.



Thomas Ricouard

📱 🚀 🇫🇷 [Entrepreneur, iOS/Mac & Web dev] | Now @Medium, @Glose 📖| Past @google 🔍 | Co-founded few companies before, a movies 🎥 app and smart browser one.