Featured Books


The Case of the Crimson Test Suite

Finally, it's easier to write, run, and read the results of testing your Swift code. This book is a quick introduction to the new Swift Testing framework. You learn to write and run tests. You'll see how simple it is to collect some tests in a suite and use tags to group others. You'll write expectations and requirements and learn various techniques to combine and simplify them.

The Case of the Crimson Test Suite is a great introduction to Swift Testing.

The Case of the Vanishing  Bodies

We begin by looking at how using macros simplifies our use of SwiftUI, Observable object, and Swift Data before moving on to creating macros of our own. You'll create freestanding and attached macros, learn to write tests for them, diagnostics, and FixIts and combine attached macros to create quite powerful macros.

The Case of the Vanishing Bodies is a comprehensive introduction to Swift Macros.

The Mystery of the Mutating  Mannequin

This book is an exploration of DataFlow in SwiftUI. We progress from a simple view with no state, to one that uses @State, @Binding, @ObservableObject and @Published, AsyncStreams, and @Observable objects. When we need to manage an object graph, we begin with a manual solution, we go old school with Core Data and we finish by glancing into the future with SwiftData.

The Mystery of the Mutating Mannequin is a fun study of the various ways in which data flows in SwiftUI. Your apps will thank you for reading it.

The Curious Case of the Async Cafe

Swift's solution to asynchronous and concurrent code is now part of the language itself. The new syntax is easier to read and follow the logical flow of what in the past was complicated, fragmented, or deeply nested. With async/await you'll focus on tasks instead of threads or even queues.

"The Curious Case of the Async Cafe" is a quirky fast-paced tour of the components of modern concurrency in Swift including async, await, Tasks, using continuations to replace and wrap delegates and closure-based APIs, AsyncSequences and AsyncStreams, structured concurrency using async let and Task Groups, and, of course, actors.

A Bread Baking Kickstart

The only thing better than the smell of fresh baked bread is the taste! Whether you're an accomplished baker or just getting started, A Bread Baking Kickstart will put you in control of your dough by giving you formulas and techniques with the context you need to make them your own.

The book begins with pancakes and other quick breads before moving on to simple fool-proof recipes and techniques for yeasted breads as well as foccaccia, pizza, pita, and bagels. You'll learn to add more complexity to your breads by using time and pre-ferments such as biga, poolish, and - only if you want - sourdough that you grow from scratch. The book finishes with a foundational recipe that you will learn to adapt to make a wide variety of breads depending on your mood and what you have on hand.

From a simple pancake to a rustic whole wheat sourdough this book is more than just a journey through recipes and techniques. It's a collection of stories and breads I've made for friends and family in various home kitchens over more than four decades.

The latest from...


The Newsletter

Newsletter 241 - Meaning

Meaning of words we're voting on today: immigrants, marriage, and abortion. Also, cats in space, an emotional support clown, infinite monkey theorem disproved, YES SHE CAN from will i am, Maggie's link to Bernie's answer to an important election question, and Glenn Fleishman's new book.

The Blog

Swift Testing Beta 1

I've just released the first beta of my Swift Testing book with Chapters 1 and 2 of 4.

Book Updates


Functional Programming Kickstart

Check out A Functional Programming Kickstart, our new friendly and practical book that introduces you to FP quickly and painlessly.

This book highlights the built in support for functional programming in the Swift Standard Library and shows you how to adopt FP in a way that makes sense to you.

Code along with us as we emphasize the important habits and techniques that originate in functional programming but benefit all styles.

Updated for Xcode 12 and tested on Apple Silicon. Includes support for dark mode, epub, pdf, and mobi.

A SwiftUI Kickstart

A SwiftUI Kickstart has been completely updated and revised for the very latest additions to SwiftUI, iOS, and Xcode.

SwiftUI is the future of iOS, Mac, AppleWatch and AppleTV development and A SwiftUI Kickstart introduces experienced Swift programmers to this new User Interface framework.

A SwiftUI Kickstart introduces you to the light-weight, value-typed, declarative world of SwiftUI.

A Swift Kickstart

A Swift Kickstart is the perfect book for the experienced developer who wants to get serious about learning the Swift programming language.

As the language matures and improves, this book changes to reflect the latest best practices and coding style. This second edition to the best-selling Swift introduction has been updated to the very latest public Swift 5.3 release.

Code along with - A Swift Kickstart on the iPad or Mac using the latest Swift Playgrounds or Xcode Playgrounds.