// Articles

Technical writing

Build logs, incidents and findings from systems tested in practice.

Browse by topic
Work That Outlives Its Worker
2026-10-09

Work That Outlives Its Worker

One small task, followed through a crash, a corrected input and a retried side effect: which records let someone else carry on without losing progress, repeating what cannot be undone, letting a presumed-dead worker write, or trusting a result built from the wrong input.

5,848 wordsRead →
From dependencies to execution
2026-10-08

From dependencies to execution

Graph engineering and orchestration: what an arrow means, which work can overlap, why a ready task still waits, what survives an interruption, and who decides a finished result can be used.

8,961 wordsRead →
Luna: Changing a Connected System
2026-10-07

Luna: Changing a Connected System

A valid model answer became a chatbot failure because its response format had changed. The repair shows how a small interface assumption can spread through a system—and how a work graph helps carry the change.

759 wordsRead →
LOOM: When the Sound Does Not Match
2026-10-07

LOOM: When the Sound Does Not Match

Taking a modular instrument from the browser to C++ exposed a tiny difference in when an oscillator stopped. Finding it required several investigations to meet at one explanation.

711 wordsRead →
The Graph Is Not the Runtime
2026-09-12

The Graph Is Not the Runtime

Choosing tools is not the end of design. After a graph-shaped way of working is available, something still has to hold the drawing, advance the pieces that are ready, and decide whether what came back was acceptable.

2,384 wordsRead →
A Voice Is Not a Finishing Pass
2026-09-11

A Voice Is Not a Finishing Pass

Taking apart what people hear as an artificial voice — and asking how much of it four of our own productions can actually account for.

2,302 wordsRead →
Usefulness Is a Systems Property
2026-09-11

Usefulness Is a Systems Property

What a working machine is worth when the system, not the specification sheet, assigns its role

1,661 wordsRead →
A Rejection Belongs to the Work
2026-09-11

A Rejection Belongs to the Work

When a finished production returned the wrong article, the rejection became part of the work: recursive judgment, not a discarded miss.

1,512 wordsRead →
What Happens After You Choose the Right Tool
2026-08-28

What Happens After You Choose the Right Tool

A dependency graph can expose eligible work, but it cannot schedule a worker, define material completion or grant human authority. Here is how to separate the DAG, node contracts, runtime and revision lifecycle.

1,903 wordsRead →
Which Tool For Which Job
2026-08-27

Which Tool For Which Job

A folder of stills does not want a conversation. Three questions before any tool, four ways to run the job, and a diagnostic you can fill in on paper.

2,529 wordsRead →
We Generated 2,302 Articles; Here's What That's Worth
2026-08-27

We Generated 2,302 Articles; Here's What That's Worth

A teardown of our own generated-content corpus — spin versus real. We counted both stores, drew a seeded sample of fifty, and read them. The number in the title was wrong.

1,377 wordsRead →
The Serial-Default Trap
2026-08-27

The Serial-Default Trap

A folder of documents is still crawling through its queue hours after the result stopped needing human attention. The delay is a quieter decision: each item waits, although the items do not depend on one another.

1,910 wordsRead →
AI Adoption Is Not a Tool Rollout
2026-08-26

AI Adoption Is Not a Tool Rollout

How to tell whether a capability has actually transferred — a practical diagnostic, a first-win method, and a humane next step for independent builders and small teams.

1,796 wordsRead →