In focus / Swift · AppKit · IOKit · Menu bar
Watt is it?
The honest wattage number, in your menu bar.
Most chargers report what they are rated for. macOS repeats that number. Nobody tells you what is actually crossing the cable.
Inside the build →The brief / small tools, specific annoyances
macOS menu-bar utilities, self-hosted services, and research tooling. Everything here is public, deliberately small, and built to solve a real problem.
In focus / Swift · AppKit · IOKit · Menu bar
The honest wattage number, in your menu bar.
Most chargers report what they are rated for. macOS repeats that number. Nobody tells you what is actually crossing the cable.
Inside the build →The honest wattage number, in your menu bar.
Most chargers report what they are rated for. macOS repeats that number. Nobody tells you what is actually crossing the cable.
Swift / AppKit / IOKit / Menu bar
YouTube channels as a podcast feed on your own Wi-Fi.
Podcast clients only understand one thing: an RSS feed with enclosure links. PodcastSync makes a YouTube channel look like exactly that, served from your own machine.
Python / Swift / yt-dlp / ffmpeg / SQLite
Display control for current macOS, including the brightness macOS hides.
LumaControl started as a fork of MonitorControl and became its own project, with a focus on current macOS releases, a native-feeling interface, and display-control ideas upstream had not taken on.
Swift / AppKit / DDC/CI / Sparkle / CI
AI summaries for Zotero that show you the payload before they send it.
The default shape of an AI feature is a button that quietly ships your document to a server. The default shape of a research workflow is a folder of unpublished drafts and embargoed data.
JavaScript / Zotero 9+ / Python (build) / Keychain
A $3,500 split-flap board, emulated in a browser tab.
Real split-flap boards cost thousands. FlipOff turns any television or monitor into one, and it is a single index.html with no build step and no dependencies.
JavaScript / CSS 3D / Web Audio / No build step
What's eating your disk, without the ceremony.
A minimal native SwiftUI app that answers one question: what is taking up the space? Expandable size-sorted tree, totals grouped by file extension, and a duplicate finder — all readable end to end and yours to hack on.
Swift / SwiftUI / CryptoKit / SwiftPM
METAR Viewer is a Windows application that translates raw METAR Data into a more "human-friendly" format. FOR FLIGHT SIM ONLY
METAR Viewer fetches and decodes aviation weather reports (METARs) into plain English. Search by ICAO code, IATA code, airport name, or even a common misspelling, and get wind, visibility, cloud layers, temperature, altimeter, present weather, and flight category back in a readable form. Simulation and hobby use only; not for real-world aviation or weather decisions.
C# / JavaScript / Python
14 Sept 2025 – 12 Sept 2026 · 569 sampled commits
Frozen at the GitHub snapshot of 12 Sept 2026. Sampled repository commits, including fork history; not a complete contribution graph or a measure of personal output.
660 commits in the full saved sample; 8 original and 5 forked repositories. The chart above covers its labelled period only.
Share of code bytes across tracked repositories, including forks. Snapshot: 12 Sept 2026. Not time spent or proficiency.
2 Sept 2026
Finding duplicates without hashing your whole diskThe naive way to find duplicate files is to hash everything and group by digest. It is correct, it is simple, and on a disk with a million files it will make you wait a very long time to learn that most of your files are not duplicates.
Read the full essay →31 Aug 2026
Your 140 W charger probably isn't delivering 140 WPlug in a 140 W charger. Open System Information. It says 140 W. Everything agrees, nothing is lying, and yet the number describes the adapter's claim about itself — not what is arriving at the battery.
Read the full essay →23 Aug 2026
Modelling a split-flap display in the browserA real split-flap display has no pixels. It has a stack of physical cards on a spindle, and a cell can only ever show the card currently at the front. To get from A to B, the mechanism does not fade or slide — it flips forward through every card in between.
Read the full essay →19 Aug 2026
The brightness range macOS won't show youThe brightness slider in macOS stops at 100%. On an XDR panel, 100% is not the ceiling — it is a convention. There is more light available, and macOS will let you reach it if you ask through the right private interface.
Read the full essay →14 Aug 2026
AI summaries that ask permission firstThe default shape of an AI feature is a button that silently ships your document to a server. The default shape of a research workflow is a folder full of unpublished drafts, embargoed data, and things covered by an ethics approval.
Read the full essay →4 Aug 2026
Turning YouTube channels into a private podcast feedPodcast apps are the best audio player on your phone, and they will only talk to one thing: an RSS feed with enclosure links. That is the whole interface. If you can produce a valid feed and serve MP3s, you have a podcast — regardless of where the audio actually came from.
Read the full essay →Independently built.
Openly shared.