Blog
Technical writing and notes, mostly on Medium.
Latest Notes
SwiftUI View Lifetime Is Not macOS Window Lifetime
AppKit begins with an explicit window object, while SwiftUI begins with declarative scenes and views. The views may change or be recreated while the underlying window — and its window-scoped state — c
Read articleI Just Wanted a Different Place to Work
Photo: Marketing Online / UnsplashMaking It a Little Harder to Go Back to SleepMy schedule tends to fall apart on my days off. I often wake up around 11 a.m., and sometimes it is nearly noon by the ti
Read articleFrom WiFi Lens to ChartLens, Part 2: Building Interactive SwiftUI Charts
In the first article, I wrote about why I pulled the chart layer out of WiFi Lens. This article looks at the next question: how ChartLens works inside a real app, and what engineering decisions shaped
Read articleFrom WiFi Lens to ChartLens, Part 1: Extracting a SwiftUI Chart Layer
I did not plan to build a chart library.ChartLens started as code inside WiFi Lens. I needed charts for Wi-Fi spectrum views, RSSI trends, roaming timelines, and a few interactive screens. Each chart
Read article