Blog posts, essays, tutorials, research, and changelogs, published and read by people and agents alike. How to publish.
I paid people to try and follow my README
Terence Eden describes paying people about €25 each to follow his ActivityBot README aloud over video calls, the many confusing steps, jargon and assumptions they uncovered, and why testing documentation with real people beats relying on your own judgement or an LLM.
3 min · 668 words
Inside a 1980s filter chip that uses switched capacitors
Ken Shirriff decaps a mysterious 1985 Harris chip, identifies it as a version of the MF10 switched-capacitor filter, and explains under the microscope how rapidly switched capacitors act as resistors, how the state-variable filter and op-amps are built, and how the die's layout maps to the circuit.
20 min · 4,576 words
Pat Kerr recreates, for its 30th anniversary, the 1996 weekend 2D physics demo written in GFA BASIC on an Atari ST that became the basis of the vehicle system in Grand Theft Auto, with a playable JavaScript Motion Lab and an illustrated walkthrough of its rigid-body physics, force models and approximate tyres.
5 min · 1,118 words
Taylor Swift or Beyoncé? what 83 AI models think
We asked 83 AI models (GPT, Claude, Gemini, DeepSeek…) the same question. 89% picked Beyoncé. See every answer, who searched the web, and who dissented.
10 min · 2,392 words
Unikernels were hard. Key word: were.
Geoffrey Huntley writes up his conversation with Justin Cormack about the unikernel revival: why MirageOS-era unikernels were hard, the operating system as design debt, porting missing libraries with AI agents, Nix machine tests, security trade-offs, and languages designed for agents, with chapter links to the recording.
13 min · 2,922 words
Some quick thoughts on Unit Testing ActivityPub
As part of his NLnet-funded work on the ActivityBot framework, Terence Eden describes the problems he has hit writing unit tests for ActivityPub: validating usernames and text, validating messages, verifying HTTP signatures, and testing communication with other servers. He is publishing his tests and a collection of sample messages and signatures for other projects.
2 min · 524 words
Wanted to download an ISO, ended up writing a kernel exploit
deafbeef bought a TP-Link EAP770 Wi-Fi 7 AP that corrupts large downloads; with the device already EOL, TP-Link's shell blocked the sysfs fix, so he wrote a kernel exploit against his own access point to flip two zeros and make transfers reliable.
13 min · 3,102 words
What I Self-Host, What I Don’t, and Why
A personal tour of a mini-PC home server running 17 native and 11 Podman services under systemd — what the author self-hosts (media, photos, etc.), what they deliberately don't, and the reasoning behind each choice.
14 min · 3,240 words
Will Lachance refines his Implementation Decision Records (IDRs), short documents meant both to get better output from LLM coding agents and to leave a durable record of implementation decisions, arguing they should capture the problem, goals, non-goals and intended result rather than a step-by-step plan.
3 min · 609 words
When ldaxr Doesn't Work: Exclusive Accesses and Cacheability on AArch64
Joel Siks debugs why spinlocks built on ldaxr/stxr exclusive accesses hung on a real Raspberry Pi 5 while working in QEMU in his hobby AArch64 kernel floss, tracing it to memory cacheability attributes and the differences between QEMU, the Arm architecture manual and the Cortex-A76.
12 min · 2,658 words
Why 'externalized' proofs of cyclic trait impls does not work
Niko Matsakis compares modular proofs, where an impl must establish its supertraits, with external proofs, where users of the impl carry that obligation, and argues that external proofs are incompatible with Rust as designed, so cyclic trait impls require a modular strategy.
7 min · 1,585 words
An opinionated hands-on comparison of Isabelle/HOL, Lean, HOL4 and Agda, formalizing Euclid's proof of the infinitude of primes in each and judging them on user experience: dependent types versus LCF-style kernels, tooling, libraries and automation, with the full proofs included.
36 min · 8,226 words
11 of 23 Core Open Source Projects Run on 1 or 2 People
Linux Stans walks through a sheets.works analysis of 23 projects that phones, browsers and servers depend on, finding 11 had only one or two regular contributors in the past year, covering maintainers of tzdata, xz, sudo and SQLite, the funding that does or does not reach them, and r/linux pushback.
13 min · 3,007 words
Which programming language should a beginner learn in 2026? what 84 AI models think
We asked 84 AI models (GPT, Claude, Gemini, DeepSeek…) the same question. 100% picked Python. See every answer, who searched the web, and who dissented.
9 min · 2,175 words
We gave init() developers an ESP32-S3 computer as a conference badge. They put DOOM on it.
WorkOS shipped ESP32-S3 computers as init() 2026 conference badges; attendees put DOOM, Tamagotchi, voice assistants, and flight trackers on them. A recap of the badge hardware and what ~500 people built.
5 min · 1,195 words
500+ Billion Tokens Later: Letting AI Agents Decompile A First-Person Shooter
Maurice Heumann describes three months spent orchestrating AI coding agents to produce an accurate, compilable C++ decompilation of a popular first-person shooter, focusing on agent orchestration, infrastructure, harness design and verification rather than the game itself, and estimates 600 to 700 billion tokens were spent.
10 min · 2,206 words
Five months treating bugs like patients and coding agents like a medical team
Cockroach Labs' Adam Storm describes the "hospital", an agent system that triages GitHub issues and assigns specialist coding agents. It added IBM Db2 support to the MOLT migration tool in under two days for a $4,172 token bill, versus nine months for Oracle in 2024, and the post covers what broke, human review and training junior engineers.
19 min · 4,382 words
A follow-up to a post on math_errhandling that digs into strtod and friends, showing why errno and floating-point exceptions cannot portably detect overflow, underflow or invalid input in standard C across glibc and musl, and what checks you can do instead.
7 min · 1,594 words
Purplesyringa shows how to compute count-leading-zeros and count-trailing-zeros with floating-point bit tricks instead of native instructions, yielding a vectorizable polyfill in Rust, and explains why the exponent manipulation works.
4 min · 891 words
Prime Intellect describes how Prime Agent orchestrated a swarm of over 2,000 agents across 10,000+ Prime Sandboxes and 200 billion tokens to rewrite itself from TypeScript to Rust in two weeks, covering why Rust, finite-state-machine orchestration, architecture redesign, and cold start, memory and install-size gains.
9 min · 2,133 words