demotime
I've built this app for myself to trim down demo videos by cutting off sections where nothing happens, e.g. when waiting for a command to finish. I could use a video editor, but I don't want to spend…
Explicit Account Routing in OpenCode with CLIProxyAPI
I juggle between personal and work accounts for both Claude and Codex, and I wanted all of them available in OpenCode . Most people set up local LLM proxies to pool their accounts into one bucket and…
FreeBSD's Base Comes From One Team
On 20 October 2026 a commit went into FreeBSD's source tree with the title pf: Keep every chunk of a table that a ruleset defines: libpfctl sends a table of addresses to the kernel in chunks of 256,…
Haar and DCT Time Reparameterization in NumPyro
This is another research iteration with Opus 5.5, see PR #215. I verified every step and concept and wrote most of the prose myself (where I didn’t, I guided the LLMs carefully, as I am not a native…
Love the Problem
I’m sharing this message to my kids after they came up with an algorithm for the CSES Movie Festival problem this morning.
Build Case-Insensitive Lookups with Rails' New QueryPredicates Types
Rails 8.2 lets an Active Record type define the SQL expression every query compares through. Write lower() once, in a type, and get case- and accent-insensitive find_by, where, order, and uniqueness…
Reclaim
Make room for your next build
Add To Calendar Without Promising To Keep It In Sync
Build a SwiftUI calendar export with EventKitUI, immutable request snapshots, and honest save receipts that survive a rescheduled booking.
Spartacus Press: A Research Experiment Outside My Usual Stack
A small macOS app for preparing LinkedIn posts, built with Tauri, Rust, React and Tiptap. It's an experiment for learning technologies I don't use day to day, not a product.
Automation
No summary available! :(
My Blog’s Clock Was an Hour Slow All Summer
A GMT offset saved as -8 is wrong half the year. How my blog’s clock ran an hour slow, and how I fixed it in ColdFusion and Lucee with Java time zone names.
Handmade Log #1: Setting Up
I started building Handmade right before I put out the previous blog post. I needed something to start building because, boy... a blank folder with an index.html document is quite daunting. So I…
How to style the vertical tabs in Firefox with userChrome.css.
Fix the rounded corners and style the vertical tabs in Firefox.
llama.cpp, vLLM, and SGLang: Three Approaches to LLM Inference
llama.cpp, vLLM, and SGLang all run transformer weights and stream tokens, yet each is built around a different systems bottleneck. Here is how they differ across model loading, KV cache memory,…
My free Scrabble tool is 20 years old. A 666k-row search log told me what to fix first
MOPSiK is a free helper for crossword and Scrabble players that I built in the mid-2000s. It still gets 1,600-1,700 unique visitors a month. Here is how I used a 666k-row search log to decide what to…
Colour variants from base colours with OKLCH, CSS relative color, and CSS functions
Many others have covered the manipulation of colour in CSS. This is me documenting what has worked for me, practically, 'in the wild'. It is a common requirement to need a variant of an…
My Take on Undefined Behavior in C
My Take on Undefined Behavior in C :root { color-scheme: light dark; } * { box-sizing: border-box; } body { max-width: 68ch; margin: auto; margin-bottom: 40em; font-family: -apple-system,…
How to Run Turing-Complete Malware in PyTorch's Backward Pass
Originally I was toying around with a question about floating-point precision in PyTorch: as a joke, I was curious to see if it's possible to find some weird loss \(\mathcal{L}\) for which calling…
Push to multiple git remotes with one command
Push to multiple git remotes with one command I keep my main repo on a self-hosted server and mirror it to GitHub. Two remotes, one command. 1. Add the remotes git remote add aurcade…
Measuring Go Landlock Adoption 2026
Landlock users in Go, by library Not using Go-Landlock yet? Landlock feature sets in use How to use more Landlock features If you maintain a software library, it is easy now to crawl code…
Obsidian Trouble Tags Plugin
My Obsidian Plugin called obsidian-trouble-tags to manage tags, todo’s and even tasks. A sidebar panel, inspired by todo-comments.nvim, that lists the things you want to come back to:…
Over-engineering makes you feel smart, but here comes the technical debt
One of the struggles I have come to know intimately over a career as a programmer is the tendency to over-engineer solutions. You constantly walk a knife edge trying to write good clean code and also…
"Coding" is Largely "Solved"
Supplements advertise boosting your immune system because it's not a medical claim.
The Hidden Cost of Java Virtual Threads: Deep Stacks, GC Pressure, and Cache Locality
A practical look at what happens when you push Java Virtual Threads in the wrong direction: how unmounting copies stacks to the heap, triggers OutOfMemoryErrors, pressures the Garbage Collector, and…
Xcode Projects for the Command Line and Coding Agents
Artem Novichkov (via Fatbobman): Xcode also ships two command-line tools for the new format: xcprojformatter came with the format in beta 2. It’s a formatter for project files, like…
Bringing AI to the LoRa Mesh: Building a Smarter MeshCore Bot with Ollama
I’ve been experimenting with LoRa mesh networks, AI agents, and running local LLMs with Ollama. At some point, it occurred to me: why not bring them together? Both Meshtastic and MeshCore…
Tu 20 October 2026
A few weeks ago I linked to Rich Hickeys Gist-Post about open source. Yesterday, Konstantin pointed me to the CultRepo-Youtube-channel and their playlist Documentaries for Developers. Concidentally,…
Three things a run stopped doing
A fast run is mostly a run that skips work. Three jobs vx used to do on every run, and why each one went: housekeeping at exit, a walk of the shared store, and a "saved" figure that overstated what…
We took back a glob shortcut
vx once read [...] in a task glob literally, so a Next.js route like app/[id] needed no escape. It also meant src/*.[jt]s matched nothing, unlike Turbo, Nx and most glob tools. Why vx now reads…
GLM on an A100, in Vx
The decoder of GLM-5, a mixture-of-experts model of about 750 billion parameters with sparse attention and 256 experts per layer, runs on an NVIDIA A100 through 28 GPU kernels written in Vx and…
Optimizing for the common case, in language design
Hardware designers make the common case fast. A language can make the common case need no extra words. The most common parallel loop starts one task per index. Go, C# and JavaScript first made that…
DeepSeek Open-Sources DeepInfer, the Engine Behind Its Models
DeepSeek has released DeepInfer, the inference framework it uses to serve its own models, under Apache 2.0. What it does, what it leaves out, and why it matters more than it looks.
Overtime: When the Plan Runs Out, Credits Take Over
My harness stopped Claude Code and Codex at 95% of their plan windows, even when usage credits could have paid for more. Now it checks for usable credits first, keeps working until they run low, and…
RAG and Microsoft Agent Framework Step By Step (2)
In a previous blog post I walked through a RAG example using Microsoft Agent Framework so that we could do a semantic search against our documents. However, Bruno Capuano (Microsoft) and I went over…
Cool Link: ASCII Animations Library
A library of ASCII art, but animated! You can browse a ton of scenes and data built with ASCII characters of your choice and even generate your own.
Exoskeletons and Drone Armies: Building Advanced Software in 2026
Exoskeletons and Drone Armies: Building Advanced Software in 2026
Formal Methods for Spec-Driven Development: Catching Requirement Conflicts as Products Evolve
A document app adds trash and restore. Each requirement looks fine, but together they conflict, and a check written for the old version catches it. A minimal example of formal methods for evolving…
Unleashing agents inside the workshop
I recently learned of Ubuntu Workshops. In short, Workshops allow you to create an isolated development environment to safely work with AI agents. You get a configured (via YAML) sandbox where you…
My Day Journaling app development
Work is coming along very fast now on my multi-journal app for Mac.
Fourier Neural Operators Visually Explained
How a Fourier neural operator turns an input into a prediction, step by step, with two small trained models running in your browser.
DX improvements in Python 3.15
Learn about the top 3 developer experience improvements from Python 3.15 This article covers the top 3 improvements made to the developer experience of Python 3.15 users: improved error messages more…
flatten a directory structure 🥾
I often find myself in a situation where I need to flatten a directory structure. I kept reusing variants of this script to flatten a…
herdr-dash: a board for my agent sessions
I run several Claude sessions at the same time in herdr , usually one per repository, and some of them run on another machine. herdr already knows the state of each one (idle, working, blocked or…
Puppy Log
2026 · A puppy app for two tired people. Tap a button on one phone and it shows up on the other in about ten seconds.
NacatamalOn HTML5 SameGame powered by samegame-engine, a headless TypeScript class
The same headless samegame-engine that powers my Phaser 4 SameGame, unchanged, now rendered with NacatamalOn: Mega Drive dithering, a CRT tube and art painted entirely in code, with the full…
Elm's Never type and Html.map
I’ve written before regarding the conflict between using Elm’s Html.lazy and extensible records. Today I wish to highlight a similar mild conflict between Elm’s Never type and Html…
Documentation-Driven Development
Last week, I needed to make some pretty major updates to a web component in a design system I use for clients. I’m a big fan of TDD, but I wasn’t mentally in a place to write my tests…
Python Core Sprint 2026: Day 1
This week I’m in San Francisco for the annual Python Core Sprint. This year the sprint is hosted by Brandt Bucher from OpenAI, at OpenAI’s office, and runs Monday to Friday, October 19 to…
Do I Need to Reprint?
Merge a change, get a versioned Cults3D listing. How a catalog of printable models ships itself from GitHub, what a version number should mean for a thing you print, nine traps in Cults3D's API, and…
Using GraphViz to Build Complex Models Bottom-Up
Complexity is a difficult beast to deal with. One of the core challenges of complexity is the strange independence between the parts and the whole. You may find yourself in a situation where learning…