Chen's blog

Notes on building polished Apple apps.

Swift, SwiftUI, tooling, app architecture, and the small product details that make software feel considered.

Method dispatch in Swift

What is method dispatch? Method dispatch is the process by which the program, at runtime, decides which concrete instruction to use when a particular …

15 min read #Cocoapods #Dispatch

Protocol Extension

Protocol is the most important building block in the Swift ecosystem — the scaffolding that holds everything else together. A few of the obvious wins of …

3 min read #Cocoapods #Codable

A few notes on LetsMove

When you download a Mac app from the web, it usually ends up in your Downloads folder. But some apps really need to live in /Applications to work properly …

3 min read #Agent #Applescript

XPC Services

About XPC I’ve been doing some work in this area lately, so here are my notes — a quick recap of what XPC is and how it works. XPC is the umbrella …

4 min read #Agent #Applescript

Codable && Tuple

While learning Swift, I keep finding interesting things. Codable is one of them. Today, I defined a model with a tuple type, then Xcode gave me an error. …

2 min read #Build #Cocoapods

A Swift quiz

A puzzle showed up on Twitter the other day. It exercises overload resolution and type(of:) together. This is just a note for myself; I’ll write up …

2 min read #Agent #Applescript