iOS Newsletter
Hi folks!
Fortunately our newsletter isn’t dependent on delivery providers, so no delays for our subscribers here. Hope Black Friday’s purchases arrived safely — or even better, you embraced the JOMO and are living your best life.
Apple went on a release spree this week — 26.2 RC’s are out for all platforms, all packed with goodies for developers. Xcode 26.2 tagged along, and TestFlight now plays nice with Managed Apple Accounts for tighter beta testing security.
Right before we light up your sky with this week’s articles — check out (if you haven’t yet) your Apple Replay to see what you really listened to this year. Now, put your glasses on:
SwiftUI
A Deep Dive into SwiftUI Rich Text Layout: Beyond AttributedString — Inside MarkdownView and RichText
Struggling with SwiftUI rich text rendering? LiYanan explores the technical evolution behind MarkdownView and RichText, from Layout Protocol experiments to TextKit’s underlying power.
Initializing Observable classes within the SwiftUI hierarchy
Why does your @Observable state reset when the parent view rebuilds? Natalia Panferova reveals the critical difference between storing models in @State and as plain properties.
The 7 changes I do for every new Xcode project
Antoine van der Lee shares seven essential modifications that prevent technical debt from day one in every new Xcode project.
Little SwiftUI Tip: An Easier(Hopefully) Way to Get Location Permission
Tired of handling authorization status and request permission calls manually? Itsuki reveals how SwiftUI’s LocationButton simplifies location permission requests to just 14 characters—no Info.plist keys required.
Creative Coding: Randomness and Noise
Want to generate organic, unpredictable visuals in your app? Antonella Giugliano explores how Perlin noise and randomness create beautiful, evolving patterns with SwiftUI.
Swift
A deep dive into Collections, Sequences, and Iterators in Swift
Ever wondered what’s really happening when you write for item in list? Donny Wals unpacks the machinery behind Swift’s iteration to help you reason about loops with confidence.
Concurrency
The Problem With Combine Annotations
Why does Combine cause crashes when mixing it with Swift Concurrency? Matt Massicotte explores the missing @Sendable annotations in Combine’s operators and what you need to know to use them safely.
Tools
A Better Way to Localize Swift Packages with Xcode String Catalogs
Worried about typos breaking your package localization silently? Daniel Saidi shows how Xcode 26’s auto-generated symbols make LocalizedStringResource type-safe across packages.