Nil Coalescing Newsletter - June 2025
Hi there,
I hope you had a great WWDC, whether you followed it closely or just caught the highlights.
This year brought a lot of exciting updates, and we've been busy working through them bit by bit. We are particularly excited about the new Liquid Glass design, it feels playful and modern, even though there are still a few rough edges, especially around readability.
Matt booked a couple of one-on-one labs during WWDC and was really impressed by the support engineers' level of preparation. One engineer even captured a Metal debug trace from our app ahead of the session. This extra effort made the lab time truly productive.
On the topic of graphics, Metal 4 didn't introduce all the features Matt was hoping for, but it looks like it will significantly simplify development for those porting over existing Vulkan or DirectX pipelines, which is a welcome improvement.
One notable disappointment for us this year was the absence of the API diff. Previously, it was really useful for quickly identifying smaller changes across frameworks, especially those that didn't get a dedicated session. Without it, we’ll likely miss many subtle updates, making it harder both for developers to benefit fully from improvements, and for Apple’s internal teams to showcase their work.
In terms of SwiftUI, I was really happy to see that we finally got a rich text editor, and I'm looking forward to experimenting with it later. While it doesn't look like we got much in terms of SwiftUI improvements for window management on macOS, or more opportunities to create custom styles for system components, there are still some interesting new APIs to explore.
Projects
Alongside following WWDC, we've also been busy building. I’ve started working on a brand new app that I aim to have ready for day one of iOS 26. It's a great opportunity to work with the new design and try out frameworks like AlarmKit and Foundation Models. I can't wait to share more details about it soon, and I’ll be covering what I learn while building it in future blog posts.
Matt has been exploring what iOS 26 means for our existing apps, starting with our walking app, Strolly. He’s begun incorporating the updated visual style and even recorded a practical demonstration. In his coding session, Matt integrates the new SwiftUI APIs into Strolly, adding glass effects to UI elements layered over the map. He navigates through layout and transform quirks and experiments with the new glass container style for action buttons. You can see how the design comes together in a real app, and what still needs adjusting.
▶️ Adopting Liquid Glass in Custom SwiftUI Components
Blog
Using enumerated() with SwiftUI List and ForEach to show item numbers
Starting with Swift 6.2 and iOS 26, EnumeratedSequence
conforms to RandomAccessCollection
, allowing enumerated()
to be used directly in ForEach
and List
views.
Stretchy header in SwiftUI with visualEffect()
Build a stretchy image header in SwiftUI using the visualEffect()
modifier, scaling the image on pull-down without tracking scroll offset or modifying its frame.
Create immersive backgrounds in SwiftUI with backgroundExtensionEffect()
The new backgroundExtensionEffect()
modifier in iOS 26 lets us extend and blur visual content beyond a view’s bounds, creating continuous backgrounds behind elements like sidebars, inspectors, and overlay controls.
Discounts
Every month, I share exclusive, limited-time offers on my books with email newsletter subscribers. Sign up so you don’t miss future newsletter issues and can take advantage of upcoming discounts!