Recent articles

Jump to a random post

Structured concurrency in Swift explained

Updated on: July 4, 2025

Swift’s async await syntax heavily relies on a concept called Structured Concurrency. Structured concurrency describes the relationship between tasks that perform concurrent work. Specifically, it defines the relationship between parent and child tasks in Swift. Structured Concurrency finds its roots in the fork join model which is a model that stems from the sixties. In […]

Read post

Setting up a simple local web socket server

Updated on: April 23, 2024

Every once in a while I find myself writing about or experimenting with web sockets. As an iOS developer, I’m not terribly familiar with setting up and programming servers that leverage web sockets beyond some toy projects in college. Regardless, I figured that since I have some posts that cover web sockets on my blog, […]

Read post

Providing a default value for a SwiftUI Binding

Updated on: June 4, 2025

Sometimes in SwiftUI apps I’ll find that I have a model with an optional value that I’d like to pass to a view that requires a non optional value. This is especially the case when you’re using Core Data in your SwiftUI apps and use auto-generated models. These models will usually include optional values for […]

Read post

Enabling Concurrency warnings in Xcode 16

Updated on: November 4, 2024

If you want to make sure that your code adopts Swift concurrency as correctly as possible in Swift 5.x, it’s a good idea to enable the Strict Concurrency Checking (SWIFT_STRICT_CONCURRENCY) flag in your project. To do this, select your project’s target and navigate to the Build Settings tab. Make sure you select All from the […]

Read post

Swift’s associated types for protocols explained

Updated on: September 25, 2025

Swift 5.7 introduced many new features that involve generics and protocols. In this post, we’re going to explore an extremely powerful new feature that’s called "primary associated types". By the end of this post you will know and understand what primary associated types are, and why I think they are extremely important and powerful to […]

Read post

Differences between Swift’s any and some keywords explained

Updated on: July 4, 2025

Protocols are an extremely important part in the Swift language, and in recent updates we’ve received some new capabilities around protocol and generics that allow us to be much more intentional about how we use protocols in our code. This is done through the any and some keywords. In this post, you will learn everything […]

Read post

Expand your learning with my books

Practical Swift Concurrency (the video course) header image

Learn everything you need to know about Swift Concurrency and how you can use it in your projects with Practical Swift Concurrency the video course. It contains:

  • About ten hours worth of videos and exercises
  • Sample projects that use the code shown in the videos.
  • FREE access to the Practical Swift Concurrency book
  • Free updates for future iOS and Swift versions.

The course is available on Teachable for just $89

Enroll now