-
Changelog: Giving Way
Two hundred and twenty-six releases across twenty-five apps since the last changelog, and most of them are about macOS 27. Several of my cleverest tricks stopped working on the day it shipped, and the fix, more often than not, was to stop being clever and let macOS do the job itself. Plus a newspaper that no longer needs a browser to show you an article, three screensavers that were arguing with themselves, and one thing you may need to do by hand.
-
Announcing Save Cannes: Your Films Are the Screensaver
There used to be a screensaver called Save Hollywood that played your own films when the Mac went idle, and it was quietly one of the best things on the platform until macOS broke it. Save Cannes is my tribute act — rebuilt from scratch, free, and honest about the one thing a modern screensaver can no longer be.
-
Changelog: ASCII Saver 2.0.1
The camera stayed on after the displays went dark. Thirty-one minutes of it, on my own machine, with the screen black and the green light on. The fix was four lines. Convincing myself it was actually running took considerably longer, and that part is the more useful story.
-
Changelog: ASCII Saver 2.0
ASCII Saver has stopped being a screensaver. It’s an ordinary app now, which sounds like a downgrade and isn’t — it’s the only way the thing could ever hold its own camera permission. Out go a second process, a shared-memory frame buffer and a settings file in /tmp; in come automatic updates, a real Settings window, and two caveats you should read before you upgrade.
-
Strataris: The Screensaver That Became a Game
Five months, a lot of swearing, the occasional actual tear, and a stubborn rule that the whole thing had to fit on a floppy disk. My first native game is finished. Here's the messy story of how it got here.
-
Rainy Day Isn't a Screensaver
Rainy Day shipped this past weekend. The product page calls it a screensaver. The bundle on disk is a regular .app — no .saver in sight. This is the story of why. A run-down of the macOS frictions that ended my attempt to build it the orthodox way: WebContent suspended within seconds of activation, an Apple SPI that no longer works in macOS 26, a CARenderer that returns blank frames, ScreenCaptureKit edge cases when the saver occludes the screen it's trying to read, multi-instance lifecycle thrash from System Settings previews, and the way ad-hoc signing burns TCC grants on every rebuild. And then the architecture I ended up with — LSUIElement app, SMAppService login item, idle-driven fullscreen NSWindow at screenSaver level — which side-stepped every one of those frictions in an afternoon.
-
Screen Savers Still Exist
I built a screen saver, and why not? It's a full-screen canvas that activates when you step away from your desk. Some would call it a relic of the CRT burn-in past. I say it's a dashboard, a photo frame, an ambient display. It's just wearing the wrong name.
-
Building ASCII Saver: Lessons from My First macOS Screensaver
What I learned building a two-process screensaver that renders live camera input as ASCII art — shared memory, Darwin notifications, and the legacyScreenSaver sandbox.
Screensavers
Screensavers, and things that do the job of one. 8 notes.