A Kalman Filter to Avoid Annoying the Server (or the Guilty Pleasure of Over-Engineering)

I have a menu bar app that needs to know a single number. A percentage from 0 to 100. To fetch it, it pings a server every 30 seconds. Do the math: 30 seconds equals 2 calls per minute, 120 per hour, 960 over an 8-hour workday. Nearly a thousand HTTP requests a day to check a number that sometimes doesn’t change for 20 minutes. That’s not monitoring. That’s harassment. ...

March 12, 2026 · Fernando

macOS Notarization: the nightclub bouncer Apple put on your app

It’s 2 AM. Your app compiles. You sign it. You package it in a DMG. You run notarytool submit. Apple says “In Progress”. You wait 5 minutes. 10. 20. An hour. Two hours. The submission is still “In Progress”. You go to bed. The next morning: Invalid. With no more explanation than “The signature of the binary is invalid”. For both architectures. Thanks, Apple. Very helpful. Notarization is one of those processes that works perfectly… until it doesn’t. And when it fails, it leaves you with a .dmg that Gatekeeper won’t let open and an error that tells you nothing. After fighting with this for a couple of days with Tokamak (my menu bar app for monitoring Claude quota), I decided to document everything I learned and write a linter so I never have to go through this again. ...

February 22, 2026 · Fernando