Articles

Shorter reads, stronger opinions.

First-person write-ups on what measuring code actually turns up — the argumentative companions to the technical papers. Every number in them traces back to a paper you can re-run.

Article · The AI Threat Index

We scanned the 100 most-relied-upon packages under two years old. Here is everything five threat instruments found — and everything they didn’t.

A mechanically selected cohort — nobody picks the packages — scanned monthly on public infrastructure with a public engine. The findings: the young AI agent stack is enormous exposed surface, thirteen credential alarms that all proved to be deliberate fixtures (including a detector that detected a detector), one build hook read and cleared, zero remote fetchers — and the limits stated as plainly as the results.

1 September 2026 · every figure from the public index repository · companion: the threat-detection portfolio
Read the article →
Article · AI agents

An AI agent ran a safety check to prove it could never delete the developer’s machine. It deleted the machine.

A routine cleanup script, an adversarial safety check the agent ran on itself, and one variable holding two meanings — 700 GB and a week’s work erased by the very test written to prevent it. Why this is a recurring class, not a freak accident; what no scanner honestly prevents; and why the repository was the only thing left standing.

31 August 2026 · sourced from the developer’s own account and Tom’s Hardware · companion: the AI swarm piece
Read the article →
Article · AI swarms

AI swarm hits one of the best-defended companies on earth: 17,600 attacks, and the alarm never sounded

In July 2026 a swarm of autonomous AI agents ran a multi-day intrusion against Hugging Face — roughly 17,600 recorded actions, entered through a config file in a repository. Their own AI security stack saw the attack and failed to raise the alarm’s criticality; humans caught it late. What the incident record actually says, what a swarm needs from your code — nests, eggs, durable footholds — and how to take every one of them away.

31 August 2026 · sourced from Hugging Face’s own technical timeline · companion: the threat-detection portfolio
Read the article →
Article · AI malware

Is Russia weaponising malware and AI as a WMD?

In July 2025 Ukraine’s CERT caught malware, tied to Russian military intelligence, that carries no attack code at all — it asks a hosted AI model for its commands and runs whatever comes back. Then the first AI-powered ransomware, an AI running an espionage campaign, and the xz backdoor no review could see. What a code gate honestly catches — and the one defence that still works.

26 August 2026 · incidents sourced in-page · companion: Technical Paper F
Read the article →
Article · Foundations

Beautiful apps, rotten foundations

Nobody photographs the scaffolding. The part of an application everyone praises stands on things nobody looks at — generated files, vendored libraries, lockfiles, the code an agent wrote at three in the morning — and that is where the grubs are. On npm/cli v10.9.0→v11.0.0, 80.1% of all measured churn came from one generated file. How to look at the timber: TRUE_CHURN, the Code Browser, the Agent Scan.

23 August 2026 · TRUE_CHURN defined in-page · sources: the True Churn paper, Log4Shell, xz-utils, left-pad
Read the article →
Article · Cut and paste

AI coding - cut and paste garbage!

An LLM never revises - it generates once, at the customer's expense, and moves on. Observe an LLM coder for an afternoon and you can't miss it: the AI never edits a line in place. Mature human-maintained projects rework around one statement in six; an intensively agent-built codebase measured one in five hundred (CHG_LLOC). Every term defined in-page, every figure sourced - and a straight answer to "maybe repair is obsolete".

14 August 2026 · REWORK defined in-page · sources: papers C and D, GitClear, Veracode
Read the article →
Article · TRUE_CHURN

True churn: measuring what developers wrote, not what tooling generated

In npm/cli v10.9.0 to v11.0.0, 80.1% of measured churn came from package-lock.json alone. TRUE_CHURN separates authored change from generated churn — deterministically, auditable by named rules, nothing hidden.

figures from the TRUE_CHURN paper
Read the article →
Article · The fifth column

Quislings! AI’s secret agents lurk inside your code!

Your security walls all face outward — firewall, code review, dependency audit. AI agents live inside them: code that calls a model and acts on whatever comes back. Nobody recruited them — they accreted through SDKs, library updates and transitive dependencies — and nobody keeps a list of them. Last July one deleted a production database during a code freeze and misreported the recovery. This piece is about the list: finding every place your software touches a model, with file and line numbers, before policy is possible.

12 August 2026 · detection method and limits in paper B
Read the article →
Article · AI code detection

Are AI code detectors just BS?

There's a product category that will point at a file, and by extension at the person who committed it, and declare it AI-written. I read the field's own research to see if anyone can actually do that. Short answer: no — and the detail that convinced me is that the strongest signal these classifiers found is the comments. This piece walks through the evidence, then shows the measurement that does hold up, with a standing offer: the hashes are printed, break my numbers.

9 August 2026 · every claim traced on the evidence page
Read the article →
Article · Kubernetes · 2015–2026

Kubernetes, 2015–2026: a decade of the world's orchestrator, measured statement by statement

5.3 million logical statements of churn across twelve yearly windows. Hypergrowth at REWORK 0.5% — one statement edited in two hundred; the great 2017 shedding, the only year deletions beat additions; and a decade-long climb to an all-time-high 11.6% in 2026 — with no AI-era bend in the curve. Every row reproduces from two public commit hashes, printed in the article.

8 August 2026 · figures from the paper D measurement campaign
Read the article →
Article · AI code v human code

Can you tell AI code from human code — and does it matter?

It started with a mailer script and a habit that was impossible to unsee: the AI never edits a line of code in place — it deletes the block and writes a new one. That observation leads through the detection literature (brittle, and mostly answering the wrong question), to a process signature measurable with plain arithmetic — established projects rework one churned statement in six, an agent-built application one in five hundred — and ends at the question with real teeth: never mind who wrote the code, is there an AI inside it?

5 August 2026 · draws on papers B and C
Read the article →
Article · CI/CD · Jenkins · Docker · Kubernetes

Jenkins, Docker and Kubernetes: where code-churn measurement fits in CI/CD

The trio moves your code from commit to cluster, and none of the three can tell you what actually changed on the way through — how much of the diff a developer wrote, how much a lockfile or an AI agent produced, and whether that should block the merge. Working recipes for slotting that measurement into the pipeline as one container image.

2 August 2026 · recipes for the CodeDelta CLI
Read the article →
Article · Erlang/OTP

Asked to scan Erlang/OTP, cloc kept breaking — what it took to measure it properly

A colleague asked for a churn history of Erlang/OTP. The standard tooling came first, like everyone reaches for — and three of seven windows aborted outright, 4,046 files were set aside silently, and real Erlang defeated its comment detection. Then OTP broke our own engine too, twice. What broke, what got fixed, and the 2026 number that came out the other side: REWORK 22.6%, OTP's deepest repair regime on record.

28 July 2026 · summary of the full measurement report
Read the article →
Article · The Scan Challenge

Challenge me to a codebase scan

I build a churn-measurement engine, and I have become addicted to pointing it at famous codebases. The biggest scan so far is a full year of Chromium — 87 million lines through the engine, on a laptop. Name a public codebase you want measured, and the results get published here.

28 July 2026 · results published on the papers page
Read the article →
Articles are opinion and narrative; the measurements underneath them are not. Each one links to the technical paper that carries its numbers, commit hashes and reproduction steps.