Recent articles

Jump to a random post

Should you opt-in to Swift 6.2’s Main Actor isolation?

Published on: September 11, 2025

Swift 6.2 comes with some interesting Concurrency improvements. One of the most notable changes is that there’s now a compiler flag that will, by default, isolate all your (implicitly nonisolated) code to the main actor. This is a huge change, and in this post we’ll explore whether or not it’s a good change. We’ll do […]

Read post

What is Approachable Concurrency in Xcode 26?

Updated on: September 12, 2025

Xcode 26 allows developers to opt-in to several of Swift 6.2’s features that will make concurrency more approachable to developers through a compiler setting called “Approachable Concurrency” or SWIFT_APPROACHABLE_CONCURRENCY. In this post, we’ll take a look at how to enable approachable concurrency, and which compiler settings are affected by it. How to enable approachable concurrency […]

Read post

Supporting Universal Links on iOS

Published on: July 4, 2025

Universal Links are a fantastic way to allow users to share your app’s content through URLs that work on the web, iOS devices, and more. Learn how you can set up Universal Links for your app by setting up entitlements as well as your server.

Read post

Grouping Liquid Glass components using glassEffectUnion on iOS 26

Published on: July 2, 2025

The Apple Maps app features something that looks like a vertical toolbar where they’ve stacked two grouped buttons on top of each other using a Liquid Glass effect. In this post, you’ll learn how you can make use of a GlassEffectContainer and the glassEffectUnion view modifier to achieve this effect.

Read post

Designing custom UI with Liquid Glass on iOS 26

Updated on: July 10, 2025

Building custom UI with Liquid Glass is easier than you think! Learn how you can leverage animations, the glassEffect view modifier, and a GlassEffectContainer to achieve a fun look and feel that will feel right at home on iOS 26!

Read post

What is @concurrent in Swift 6.2?

Updated on: July 7, 2025

Swift 6.2 makes significant changes to concurrency, and because of that we have to understand a brand new mechanism to offload work to a background thread in Swift 6.2. Learn everything you need to know about @concurrent and nonisolated(unsafe). You’ll also find out why I’m pretty happy with these changes even though they require us to relearn certain concurrency concepts.

Read post

Exploring tab bars on iOS 26 with Liquid Glass

Updated on: July 7, 2025

Liquid Glass drastically changes how you app looks and feels when you’ve used default system components in your UI. In this post we look at how TabView changes with Liquid Glass, and how this forces us to rethink aspects of how certain interactions in our apps should work.

Read post

Expand your learning with my books

Practical Combine header image

Learn everything you need to know about Combine and how you can use it in your projects with Practical Combine. It contains:

  • Thirteen chapters worth of content.
  • Playgrounds and sample projects that use the code shown in the chapters.
  • Free updates for future iOS versions.

The book is available as a digital download for just $39.99!

Learn more