A periodical on the art of modern iOS software engineering.

When Did I...? Track when you did things
Introducing tonight's special...

Keyboard and Combine

Tech Note

Handling the keyboard on iOS is a rite of passage if not also a little tiresome. Fortunately, Combine makes it better.

continue.reading(with: Keyboard and Combine)

Recent Posts

Creating a Retail Demo for Apple

Spend Stack was selected by Apple to be included as a retail demo on iPhones & iPads across the globe. Here's what the process was like.

continue.reading(with: Creating a Retail Demo for Apple)

Dynamic Master Detail View Background Colors

In my quest to pretty up some of the rougher edges of Spend Stack, today I turn my attention to styling my interface in Master-Detail Views. Easy to describe, harder to do.

continue.reading(with: Dynamic Master Detail View Background Colors)


Another core piece of functionality arrived in Swift 5.1 - built in diffing. Let's take a look.

continue.reading(with: CollectionDifference)

Empty View With Diffable Datasource

Empty views are a critical piece of user experience on iOS. Today in tech notes, I explore how this might be done with diffable datasource.

continue.reading(with: Empty View With Diffable Datasource)
View all posts by date
Classic House Favorites

Introducing Spend Stack

If I write about indie development, I suppose it's time to reveal my indie project. Many years in the making, here's Spend Stack.

continue.reading(with: Introducing Spend Stack)

A Best in Class iOS App

What is a best in class iOS app? How are they built, and can we quantify what makes them great?

continue.reading(with: A Best in Class iOS App)

Optimizing Images

iOS is a visual medium teeming with beautiful images in virtually every app on your phone. Important though they are, it's trivial to mismanage them from a memory and performance standpoint.

continue.reading(with: Optimizing Images)

Swift Keywords

Swift has quite a few keywords. Let's look at every single one, what it does and provide a code sample.

continue.reading(with: Swift Keywords)

Hors d'oeuvres







Safari Services

Device Check

Image IO

The Indie Dev Diaries




Tech Notes