More About Me
- My /now page shows what I am doing.
- Résumé/CV shows what I have been doing.
- Work with me on your projects!

Writing
- Introduction to my most important articles.
- Wiki with important concepts.
- All About TextKit: I deal with text, and here's a collection of everything I figured out so far.
- Ultimate FastSpring Guide for Selling macOS Apps: I sell my macOS apps in my own store. Resources and tips to get you started.
Latest Blog Posts
Clickable Swift Testing Failure Messages in Emacs compile-mode
The swift test command-line invokation does not print unambiguous filenames for test failures, so we need to attempt to patch this from the console output ourselves like true hackers.
Infinite Canvas – iOS and macOS Whiteboarding and Sketching App, Now Available
Announcing my latest app, Infinite Canvas, an app for quick sketches, handwritten notes, with a canvas as wide and deep as your imagination. Available for all platforms as a free download.
Emacs Elevator Pitch (August Blog Carnival)
This month’s entry for the Emacs Carnival is how I'd talk someone into using Emacs at the workplace I do not have.
Adapt Unidirectional Flow Virtues to Your Plain SwiftUI App
To get started, you can require authentication for actions on buttons anywhere in your SwiftUI app produce a change up the scene, e.g. a log-in overlay or dialog, by injecting a closure into the environment to handle that.
SwiftUI DocumentGroups Are Terribly Limited
Document-based apps with SwiftUI are easy to write, but hard to customize apart from a couple visual tweaks. Say if you want to introduce in-app purchases.
My latest app project is ready for testing: a delightfully simple drawing app for all Apple platforms.
TextIndex: a Markdown Pre-Processor and Syntax Extension for End-of-Book Indexes
Matt Gemmell makes use of his new Mac to create another tool for a Markdown publishing pipeline.
More blog posts in the archive