PyGrunn: list-man, pragmatic system integration - Doeke Zanstra
(One of my summaries of the 2026 one-day PyGrunn conference in Groningen, NL). When automating in a big company with many systems, you often end up with spaghetti: many systems connecting to a lot of…
Simulating a USB MIDI device with an ESP32 using Rust
Imagine plugging an ESP32 into your computer’s USB port - and suddenly, your OS detects a brand-new MIDI device. You connect your phone to the WiFi network the ESP32 is hosting, open your…
I've been prototyping a fun little GUI over the top of Finder
Jokingly calling it Finder++. Here are a couple of videos from the past few days of playing around. You can use cmd+shift+. to summon the shelf from the bottom of the screen at any time. It’s a…
Auto Expand Linked References in Roam Research
I have been using Roam Research for taking notes for years. One of the crucial features I like in Roam is linked references, also known as “backlinks”: you create links to new or existing pages as…
Using Rust typestates for BCF writing
If you’ve ever needed to produce a typed binary format where the header constrains what the body can contain, you’ve probably written validation code that runs at runtime and hoped your…
Spec-driven Testing for AI Agents: Now in Early Access
Safe Intelligence is launching a new AI Agent validation and monitoring platform named /Spec27. Signup is free for early access.
Extracting Sensor Calibration from Intel's AIQB Binary for libcamera
Intel ships per-sensor calibration data in proprietary AIQB binaries alongside their Windows camera drivers. Here is how to parse them to generate libcamera Simple IPA tuning files with accurate CCMs…
Three spaces of context
Three-space context management to improve LLM performance and project durability using a vault-docs-index system.
OmniVoice is surprisingly good
I tried OmniVoice this afternoon because I saw a post on r/LocalLLaMA and got curious. It's a zero-shot voice cloning TTS model that claims 600+ languages. I recorded two short voice memos on my…
My Thoughts on AI, Part 2: Agent Setup, Workflow, and Tools
Introduction Hopefully you've already read Part 1: Fears, Opinions, and Mental Journey so you understand how I ended up with this mindset and approach. Or maybe you saw how long it was and just…
A Viewer For Tumblr Likes
A couple of years ago, I wrote some code to display my archive of images from ffffound, an image bookmarking site, with the ability to filter by date and generated tags. That’s not the only…
AI News Archive Project – Report 1
In a previous post, I mentioned that my first AI project was to develop an application to create a archive of US newspapers based on RSS feeds. I initially used Claude Code to review a list of US…
Troubleshooting bench testing setup for the 1627 controller card
COMPLEX BENCH TESTING SETUP NOT WORKING PROPERLY The setup makes use of a breadboard development system, an Arduino Uno, several power supplies, an oscilloscope and my SLT breakout box. The…
Emacs Chat 22: Shae Erisson
[2026-05-08 Fri] : Transcript, yay! I chatted with Shae Erisson about Emacs, keyboards, Org Mode, and life. View it via the Internet Archive , watch/comment on YouTube , read the transcript online ,…
Big Words
Tool: Big Words I'm using my vibe coded macOS presentations tool to put together a talk, and I wanted to add a slide with some text on it. The tool only accepts URLs, so I put together a quick page…
Optimizing vLLM startup time
vLLM has very slow time to first token (TTFT). On AMD Ryzen AI Max+ 395 it can take even 10 minutes depending on exact settings and model size. To make my user experience of using those things myself…
I rebuilt Voicy with agents instead of rewriting it myself
How I used Symphony, OpenClaw, Codex, a home server, Telegram Web QA, and a Windows GPU worker to revive Voicy as an agent-driven maintenance loop.
Nicht MCP, sondern das 50-jährige Konzept der CLI gewinnt
Im Jahr 2002 hat der Chef von Amazon allen Mitarbeitenden ein berühmtes Memo geschrieben, welches als “The Jeff Bezos API Mandate” in die Geschichte Eingang fand. Kernaussage: All teams will…
LLM Experiments #1: Shorter Sentences
Note: Experimenting with quick writeups as I play around with LLMs using my homegrown agentic workflow system. Today’s idea (and the workflow system itself) both came from a dream of building a…
ifgame - An Interactive Fiction game library for Clojure
On of the first programs I ever ran on a computer was a text adventure game, also known as Interactive Fiction. I think the first one I played was Adventureland by Scott Adams, which was based on the…
Beyond the Hype: A Comprehensive Guide to Benchmarking LLMs with AWS Labs’ LLMeter
In the current AI gold rush, the conversation has shifted from “Can it do the task?” to “How efficiently can it do the task?” For engineers moving Large Language Models (LLMs)…
Machine Learning in OxCaml
The inspiration for this post came from Dave’s Garage YouTube Channel. It featured dbrll/ATTN-11, which used machine learning on a PDP-11 to reverse a sequence of numbers. I’m not (quite) old enough…
Energy-Based Transformers: The 1982 Architecture Finally Got Compatible Training Tricks
An EBM finally crossed 800M parameters without collapsing. Nobody has independently reproduced the 35% scaling claim. Both halves matter.
Catppuccin Complete UI for Mastodon Now Supports GlitchSoc
When I released Catppuccin Complete UI for Mastodon 2.0 , I felt like the project had finally grown into what I wanted it to be. It was no longer just my own Mocha-flavored tweak of Bird UI. It had…
agents need control flow, not more prompts
Thesis: reliable agents tackling complex tasks need deterministic control flow encoded in software, not increasingly elaborate prompt chains If you’ve ever resorted to MANDATORY or DO NOT SKIP ,…
My Dotfiles: macOS Bootstrap and an Emacs Distribution
My dotfiles for my MacOS rice and Emacs configuration live in two public repositories. Both repos are shared as a reference; clone, fork, or just lift the bits that look useful to you!
Vibe coding builds the mess, you still have to live in it
The codebase doesn’t care how it got written, but you will. Robby Russell wrote a piece that I keep thinking about. His argument: the pros dismissed Access and FileMaker, but founders built…
The Benny-Blanco Death of Developer Marketing
Editorial note: I originally published this over on the Hit Subscribe blog. I was perusing the Heavybit newsletter this week when I decided to wander over to their site and see what they were up to.…
Vim & PKM submissions
A bit late, but finally here are the few submissions we got for April’s Vim Carnival about notes, and PKM. I hoped to get more people involved, but that wasn’t the case. Perhaps the next…
Not Classic RAG: Building a Structured-Retrieval Discovery Agent with LangGraph
I just added a new feature to Kino , my educational movie-discovery project built with LangGraph: a prompt-driven discovery flow that finds grounded titles from a local catalog. The easy label would…
Commodore 64 game development gets visual coding boost with C64 Dev Machine update
C64 Dev Machine has received another update, bringing a set of practical improvements to its visual coding environment for the Commodore 64. Version V099.61.9 continues the project’s main idea:…
Do We Still Need Dev Conferences?
<p>i was always a big fan of going to developer conferences - talks, in-depth workshops, coding labs and meeting other developers in real life. Also if i couldn’t attend in person i usually was…
8.5x Faster Speech-to-Text: From 429ms to 50ms on a Single GPU
My STT journey started with Whisper. One of Freya's STT models was a fine-tuned Whisper Large-V3. I optimized it with TensorRT, got it to 130ms, around 94x realtime. Solid, but we hit a wall. The…
Building a Language Model: Tokenization
We implement tokenization using the byte pair encoding algorithm.
pgFirstAid - hits 500 stars!
Couple, Too, Tree During Boise Code Camp this past weekend, pgFirstAid hit 500 stars on Github! Honestly, I really did not think it would gain the attention it has. Not to mention, in the thick of…
Retiring opam 2.0 from the build pipeline
ocurrent/docker-base-images publishes the ocaml/opam:* Docker images which the OCaml CI systems use. For each distro, it tracks 2.0, 2.1, 2.2, 2.3, 2.4, 2.5, and master opam release branches in…
JavaScript Wraparound Index
What I call “wraparound” are repeatable indices on an array. The common use case is a carousel. Here’s how it’s done: const items = ["first", "middle",…
How cmder made my life easier (Part II)
As a developer I type lot of command lines but there are certain commands that we type more than others : (example for (git : git status, git commit -m “message”) or (angular : ng g c myComponent) or…
Learn T-SQL With Erik: Clustered Tables, Page Splits, and Readaheads
Learn T-SQL With Erik: Clustered Tables, Page Splits, and Readaheads Chapters *00:00:00* – Introduction to Clustered and Heaps *00:07:52* – Clustered Indexes and B-Trees *00:13:32*…
PVM - PHP Version Manager for Windows
PVM (PHP Version Manager) is a Windows-native command-line tool that eliminates the complexity of managing multiple PHP versions on Windows systems. With simple commands like pvm use 8.2.0 or pvm…
vm2 Node.js Sandbox Escape 12 Critical Vulnerabilities Two Without a Patch
Twelve critical vulnerabilities were just published for vm2, a Node.js security library that sits inside millions of applications. Three of them score a perfect 10 out of 10. The creator shut the…
Learning JavaScript, Day 11 – Strings and Template Strings
All the things you can fit into strings. Plus 80s bands and dyeing my hair.
Interactive KL Divergence Visualisation
An interactive visualisation of Kullback–Leibler divergence. Shape two distributions and watch forward vs reverse KL, the pointwise integrand, and the effects of asymmetry, support mismatch and…
I added an apple-touch-icon by reading my own access logs
Stood up GoAccess on the production logs this morning. Noticed iOS clients 404'ing on /apple-touch-icon.png within minutes. Resized the admin avatar with PowerShell and System.Drawing, dropped the…
GPT-5.5 low vs medium vs high vs xhigh: the reasoning curve on 26 real tasks from an open source repo
An interactive GPT-5.5 Codex reasoning-effort curve on 26 matched GraphQL-go-tools tasks: low, medium, high, and xhigh.
How to Flash Zephyr RTOS on Windows: XIAO Boards Guide
There is a growing interest in Zephyr RTOS within the embedded community. Unlike Arduino or ESP-IDF, Zephyr gives you a real hardware abstraction layer that lets you write firmware once and compile…
But what about Java
Step 9 - But what about Java This is the final step, adding a Java generator - each step adds or improves a small feature, this text is just highlighting a few details along the way, the best way to…