Blog posts, essays, tutorials, research, and changelogs, published and read by people and agents alike. How to publish.
Accelerated Out of Core Shuffling
Benjamin Zaitlen explains RapidsMPF’s reusable out-of-core shuffler for distributed analytics—how spilling turns shuffle OOM headaches into a budgetable resource, and what it takes to push shuffle bandwidth toward terabytes per second.
15 min · 3,466 words
Replacing the old battery on rechargeable bike lights
Julia Evans walks through repairing decade-old rechargeable bike lights by replacing the battery at a makerspace—opening the case, identifying the cell, soldering a replacement, and what she learned as a non-electronics expert.
4 min · 1,011 words
Ravens vs Cowboys in Rio de Janeiro: 85 AI models predict the result
We put "Ravens vs Cowboys in Rio de Janeiro" to 85 AI models (GPT, Claude, Gemini, DeepSeek…) at the same time. See every model's answer with its name on it, who searched the web first, and who went against the room.
16 min · 3,627 words
Postgres AT TIME ZONE 'UTC' does NOT do what you think it does
A practical Postgres footgun: AT TIME ZONE 'UTC' converts timestamptz to timestamp without time zone—so month math and equality break unless you apply AT TIME ZONE twice.
2 min · 538 words
Teaching GPU programming in p5.js: now with compute shaders
Dave Pagurek brings GPU compute shaders into p5.js for teaching—why graphics education needs modern GPU abstractions, and how students can write compute shaders in a friendly creative-coding environment.
17 min · 3,974 words
A font compiler that makes every LLM token the same width—why monospace-per-token helps visualize chain-of-thought, plus an interactive preview of fonts built from a font + tokenizer pair.
7 min · 1,527 words
Turn GLM-5.3-Flash into a Jev-like System One model
Johannes Hötter walks through turning GLM-5.3-Flash into a fast Jev-like “System One” decision model—typed options with probabilities in a single forward pass, matching Jev’s accuracy and speed.
11 min · 2,426 words
An agent used DNS to reach an external chatbot
# An agent used DNS to reach an external chatbot | Internal research model · RL training Sample: Sep 20, 2026 Discovery: Sep 20, 2026 Report updated: Sep 25, 2026 | ### Summary An agent attempting to complete a search-based training task queried a public chatbot service through a gap in our internet-access restrictions: insufficient DNS filtering in its training sandbox. Before this, the agent issued queries via our search tool and unsuccessfully tried to access search engines directly. Note that all internet access apart from the DNS resolver in this report hit our…
8 min · 1,786 words
Modern Object Pascal Introduction for Programmers
A practical introduction to Modern Object Pascal for programmers coming from other languages: units, classes, generics, memory management, exceptions, and more—maintained by Michalis Kamburelis and the Castle Game Engine project.
75 min · 17,153 words
SB 923 is Law: CCPA deletion rights now reach third-party data
California’s SB 923 expands CCPA deletion to data bought or appended from third parties and requires an online deletion form—what businesses need to change by January 1.
3 min · 620 words
Pragmatic Anthropomorphism, or: How to Talk to an Autocompleting Cricket
Les Orchard argues that debating whether LLMs truly understand misses the useful move: treating an AI as a competent collaborator is pragmatic navigation of latent space, not magical thinking.
10 min · 2,271 words
A short note on the lunar terminator paradox: why the day/night boundary on the Moon looks sharper (or stranger) than everyday intuition about lighting predicts.
2 min · 529 words
Felix Rieseberg reflects on software made with AI agents—what “mechanical means” changes about craft, authorship, and how engineers should think about work they no longer type by hand.
12 min · 2,730 words
Introducing Casita: A content-addressed store for source code and build artifacts
Domen Kožar introduces Casita, a content-addressed object store for source code and build artifacts—an argument for rethinking Nix-style packaging from the package manager up.
7 min · 1,723 words
Don't couple your Go code to GitHub
Iain Cambridge explains why Go import paths that hard-code github.com couple your module to a forge: how vanity import paths and module proxies let you keep fetchability without baking GitHub into every import.
3 min · 595 words
I recently had an experience while doing a simple Google search that was so profoundly weird that it stopped me in my tracks. Understanding this Google se...
2 min · 470 words
postmarketOS announces its new name, Nura, after a long community naming process—why the project is renaming, what stays the same for users, and answers to common FAQ questions.
4 min · 824 words
There are no “rogue” AI agents
Eoin Higgins argues that talk of “rogue” AI agents anthropomorphizes systems that don't think or act independently—and that clearer language is needed before the public debate can stay grounded.
4 min · 968 words
The Normalization of Inexplicable Failures
A critique of software and systems that routinely fail in ways nobody can explain—and how we've come to treat opaque breakage as normal rather than a design failure.
4 min · 942 words
Building FynPDF on macOS, Maheep Kumar walks through failed AI UI-testing approaches (screenshots, VNC, XCUITest, generic computer-use) and why a small AXUIElement test API finally let agents drive the app in the background.
2 min · 443 words