Did I Just Accidentally Build a Memory Management System for Claude Code?
It has been one of those months where you fix something small and discover something big. The Story It’s a Tuesday afternoon. I’m updating a GitHub Actions workflow when Claude Code tells me…
Type Variances
The culprit I was minding my own business writing some type-annotated Python code when my type checker of trust did me dirty and nerd-sniped me. error: Return type "list[A]" of…
tags for rust
I use tags to navigate source code in vim. Here is how I set things up for generating tags for rust. If we take the advice from these two articles…
New Pelican Plugin: Obsidian-Style Callouts
New Pelican Plugin: Obsidian-Style Callouts Vibe-Coded Slop It should be noted, per the anti-clanker movement, there was little to no thought involved in this process. I had learned to use…
BitNet, Nix, and Pipulate: The Future of Talking Local AI
This article captures an important moment in Pipulate's development: achieving a truly self-announcing, cross-platform installation. It's incredibly satisfying to see the `curl | bash` command…
String Types For E2E Tests
Every individual item sold on Mercari.com has an id that looks like m<number>.
Vibe Coding From My Phone with OpenClaw
Wow, what a wild year it’s been! Claude Code was first released only a year ago , though it feels like it might have been a decade. The progress on LLM developer tooling has been unreal, and it…
migrated to lume, new page for tech resources
new page to the resources section was added for miscellaneous tech-related resources . mostly about linux, self hosting, learning programming, command line tools, that sort of thing. a small indie…
Infinite Lists in Lean
You might remember my post last year about lazy infinite lists in Lean, back when I didn’t know how to write Lean. I still don’t know how to write Lean, but today we’ll try…
Projects
Open-Source Projects I host my open-source projects on tangled.sh with own-hosted knot Also see my GitHub for older projects Small Tools Yeebike - Fastest way to find an e-bike around you (Youbike is…
DSPy + LiteLLM + ChatGPT: Xây Dựng Pipeline AI Thông Minh Hơn Năm 2026
Hết thời viết prompt thủ công rồi vá víu khi model thay đổi. Bài này hướng dẫn bạn kết hợp DSPy và LiteLLM để xây pipeline LLM có thể tối ưu prompt tự động, đổi model tùy ý — từ ChatGPT đến Ollama…
Friday Faves: Craft CMS
This week’s Friday Fave is for the web nerds out there. Many folks who makes web sites rely on content management systems to update their sites. (And some still make their sites with plain old HTML.…
I Pruned Two Layers From a 30B Code Model and Got 47% Better at Coding Benchmarks. Then I Tested It On Real Software Engineering Tasks.
It got worse. But the full story is more interesting than that. The Setup I have two projects that collided. Thunderdome is an agentic SWE benchmark I built that tests models on real multi-file…
Adding a selftest for someone else's fix
Note: This will be a casual blog, so excuse my language. It’s mostly stuff for documentation (for my brain). The goal lore.kernel.org is the conversation I came across earlier today. I want to…
Do We Need a Programming Language Built Just for AI Agents?
Programming languages were made for humans, but now AI writes a lot of code, so we could design a language just for AI. This language would focus on strict rules and clarity, prioritizing correctness…
Scaling SignalR With a Redis Backplane
SignalR connections are server-local. Scale out to multiple instances and messages stop reaching the right clients. Here's how the Redis backplane fixes that - and what you still need to get right.
Maximally minimal view types
This blog post describes a maximally minimal proposal for view types . It comes out of a converastion at RustNation I had with lcnr and Jack Huey, where we talking about various improvements to the…
There Should be a [Connect with OpenClaw] button for SaaS
I keep thinking there should be a [Connect with OpenClaw] button for SaaS. A lot of SaaS apps want to do things on behalf of the user: create a cron send a reminder trigger a task run a background…
What is still hard
There used to be two hard things in Computer Science. Now there's one.
Automating my son's YouTube with Python and FFmpeg
My son Ben is 12. Back in August he decided he wanted to start a YouTube channel. We talked about what it could be and he landed on Premier League score predictions. Every gameweek he'd predict the…
Migrating to PNPM
Advantages (as I see them). Quick start These are handy things… Gotchas Advantages (as I see them). It stores node_modules in a single place and references them, rather than having multiple copies of…
Simple Sudoku Solvers SII, EIII: Forth
Simple Sudoku Solvers SII, EIII: Forth
Faking Human Typing in Demo Videos on macOS
A Hammerspoon script that fires real system-level keystrokes with variable timing, realistic typos, multiline support, and a clipboard hotkey.
Using AI to Contribute to Open Source
[This post is AI level 1: Human asked chatbot for ideas. Claude Opus was used primarily for review and ideation and I took some of its advice and a few (very few) of its words.] Like many open source…
The Training Grounds: A Taxonomy of RL Environments for LLM Agents
The infrastructure that determines what your agent can actually learn - Model architecture gets all the attention. Post-training recipes follow close behind. The training environment — what the model…
Agent Harness Engineering vs Context Engineering vs Prompt Engineering
If you are building agents in 2026, prompt engineering is still necessary, but it is no longer sufficient. The teams shipping reliable agents are working across three different layers: Prompt…
An Ode to Variable Names
I remember vividly, just a few years ago, walking out of an hour and a half long meeting, which at the onset we had hoped would lead to a big architectural decision, only to have decided on one…
Android Enterprise App Development with Voice Coding
Accelerate enterprise Android app development using voice coding tools for security, compliance, and scalability.
Android Game Development with Voice Coding: Unity and Unreal
Accelerate Android game development using voice coding tools for Unity, Unreal Engine, and native Android game programming.
Introducing fashion command-line tool
fashion is a Swift command-line interface to traverse a file hierarchy and compute or match popular hash digests. The project is hosted on GitHub and natively supports: CryptoKit hash functions:…
WebSockets Are Back. The Client Side needs more support.
Building a streaming LLM client pushed me to write the WebSocket library I wished existed.
Profiling Neovim performance
If you’re experiencing sluggishness or stuttering in Neovim, there’s a straightforward way to measure exactly what’s going on using profile.nvim. This plugin instruments your Lua…
What I've Worked On at Stainless
At Stainless, I build compiler-like generators that transform API specifications into idiomatic client libraries that feel as though they were hand-written by a language expert who had the time to…
Extracting musical fragments in PDF or PNG format
1. LilyPond, extracting score fragments: a detailed guide 2. Output format: PDF and PNG. 3. Extracting a fragment from the beginning of a score 4. Increasing Image Resolution 5. Quickly Exporting a…
11: Alerting & Service Level Objectives (SLOs)
How to define SLIs and SLOs for your services, configure symptom-based alerts in Grafana, and build error budget burn rate alerts that page you before users notice.
Paid Remote Research Engineer Internship: Exact Runtime ML / Problem-Shaped VMs
Paid remote internship focused on exact runtimes, local ML, document extraction, and public research-engineering.
Repositories, transactions, and unit of work in Go
Decoupling business logic from storage in Go, adding transaction support without leaking SQL details, and coordinating atomic writes across multiple repositories using a unit of work.
The Math Behind the Yoga SVG
How simple trigonometry and CSS variables combine to create anatomically connected, fully animatable SVG stick figures for yoga.
Quality Gates for AI Content Pipelines: What Happens When Your Agentic Workflow Moves Faster Than Your Judgment
My AI publishing pipeline got a book flagged on Amazon. Here's how I added content risk assessment and why every agentic workflow needs quality gates.
creating a native-feeling neovim picker
preface Fuzzy searching in neovim has been a heavily debated topic for years. There were those we fought for telescope being merged into core (which fortunately did not happen), and those who felt…
Connecting Codex to Google Workspace via MCP
When you work with an AI coding agent like Codex, the real productivity gains come from letting it interact with the systems around your code — not just the code itself. Connecting Codex to Google…
The Load-Bearing Pipeline Was Human
A specification-to-code pipeline that worked for decades doesn't stop working because you swapped the executors; it stops working when you rip out the stages.
Making Good PDFs from Scanned Documents
This is a quick post to document my personal workflow of producing nice PDF documents from scanned images. Some of my obligations and hobbies produce paper documents with no option for digital…
𝗢𝗽𝗲𝗻-𝘀𝗼𝘂𝗿𝗰𝗲 𝗠𝗟 𝗵𝗼𝗺𝗲𝘄𝗼𝗿𝗸𝘀 𝘄𝗶𝘁𝗵 𝗮𝘂𝘁𝗼-𝘁𝗲𝘀𝘁𝘀 - 𝗳𝘂𝗻𝗱𝗮𝗺𝗲𝗻𝘁𝗮𝗹 𝗮𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺𝘀 𝗳𝗿𝗼𝗺 𝗳𝗶𝗿𝘀𝘁 𝗽𝗿𝗶𝗻𝗰𝗶𝗽𝗹𝗲𝘀
This year I’ve been designing homework assignments for an ML course at Skoltech (Russia’s answer to MIT/Caltech for science and technology). After bombing more job interviews than I care…
Daily GitHub Stars: March 21, 2026
Today’s starred repositories:
Week Notes - w12
Things I did Typed a lot on my new keyboard - MageGee MK-Star ! Created a new monitoring tool for work comparing two different systems and making sure they match and alert the team if not. It was…
SvelteKit and Cloudflare Compatibility Date after `2024-04-01`
Today, I needed to increase my compatibility_date for my Svelte project. I noticed, that when I ran the project locally with npx wrangler dev, that no POST requests worked any longer. There was a 405…