Talks and Materials
Speaking
Talks and materials on Swift, SwiftUI, concurrency, architecture, cryptography, algorithms, and practical app development.
Swift Concurrency: Are We There Yet?
Slides (PDF) – Slides (Keynote) – Presentation (Vimeo)
Date: 2024-06-12 Location: One More Thing Conference (Cupertino, CA)
Swift Concurrency history, adoption strategy, Swift 6, and Apple-framework realities.
Building with SwiftUI and Concurrency
Slides (Keynote) – Project (GitHub)
Date: 2022-05-25 Location: Underdog Devs Xcoders
Building a small Simon-style game with SwiftUI and async/await.
SwiftUI: Understanding State
Date: 2022-04-28 Location: Underdog Devs Xcoders
State, observable models, substate, redraw behavior, and view structure.
Modern UICollectionViews
Date: 2022-02-24 Location: Underdog Devs Xcoders
Compositional layouts, diffable data sources, and modern collection view patterns.
Swift Scripting
Project (MyLibrary.zip) – ShellProcess (GitHub) – Slides (Keynote)
Date: 2022-01-20 Location: Underdog Devs Xcoders
Using Swift for lightweight scripts and command-line helpers.
Building Tic-Tac-Toe with SwiftUI
Date: 2021-04-19 Location: Underdog Devs: Spring Into Swift
SwiftUI view construction, navigation, state, and single sources of truth.
How to Make a Living Creating Mobile Apps
Date: 2021-04-05 Location: Underdog Devs: Spring Into Swift
Career notes for aspiring iOS developers and independent app builders.
View Controller Composition
Date: 2020-02-19 Location: iOS Orlando
Breaking large UIKit view controllers into smaller composed pieces.
Programmatic UIKit Basics
Date: 2020-01-15 Location: iOS Orlando
Building UIKit interfaces without storyboards or Interface Builder.
Combine in Action
Date: 2019-11-20 Location: iOS Orlando
Using Combine with Timer, NotificationCenter, URLSession, and app data flow.
Tiny SwiftUI (on watchOS)
Date: 2019-10-16 Location: iOS Orlando
SwiftUI on watchOS, Digital Crown interactions, and WatchKit comparison points.
Apple CryptoKit: Encryption and Keys and Signatures, Oh My!
Project (CryptoKit.playground) – Slides (Keynote)
Date: 2019-09-18 Location: iOS Orlando
Hashing, authentication, encryption, signatures, and public-key cryptography.
Swift Package Manager
Date: 2019-08-21 Location: iOS Orlando
SPM basics, Xcode integration, package setup, and package authoring.
Swifty Algorithms - Merge Sort
Project (MergeSort.swift) – Slides (Keynote)
Date: 2019-06-19 Location: iOS Orlando
A Swift walkthrough of merge sort and generics.
Swifty Algorithms - Minimum Coin Change
Project (MinimumCoinChange.swift)
Date: 2019-04-17 Location: iOS Orlando
Greedy and dynamic-programming approaches to minimum coin change.
Swifty Algorithms - Radix Sort
Project (RadixSort.swift) – Slides (Keynote)
Date: 2019-03-20 Location: iOS Orlando
A Swift walkthrough of radix sort.
Swifty Algorithms - Fibonacci
Date: 2019-02-20 Location: iOS Orlando
Iterating from a straightforward Fibonacci implementation to a more efficient one.
What’s New in Swift 5.0?
Slides (PDF) – Slides (Keynote)
Date: 2019-01-23 Location: iOS Orlando
Swift 5.0 changes, ABI stability, Swift Evolution, and snapshot builds.