Writing
Part of my life’s work is dedicated on how to become a good coder and independent software developer.
My approach is holistic: to be successful, it’s not enough to know how to code. That’s why I write about the life of an independent software developer, not just the day-to-day work.
- 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
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.
Books
A Pattern Language for Zettelkasten
A shared language for enthusiasts and experts to have an efficient way to communicate about thinking and writing from atomic notes with Zettelkasten.
- WIP with free chapters! #buildinginpublic

Make Money Outside the Mac App Store
Own your products and know your customers: sell outside the Mac App Store. In a few hours, you'll have in-app purchases, a trial mode, and piracy protection all set. The book includes fully functional sample projects and code ready to be copied into your app.
- 2nd edition: expanded to twice the features and details!
- PDF, EPUB, and Kindle download
- Lifetime updates

Exploring Mac App Development Strategies
Learn how to create an application from scratch or refactor existing code to keep your code maintainable: clean up Core Data and AppKit dependencies from the rest of your app.
- 4th, expanded edition
- PDF, EPUB, and Kindle download
- Lifetime updates