Knowledge-Driven Development

A technical book gives you advice. This project turns it into something you can check.

kdd-book reads a book or a technical guide and sorts every piece of advice into three honest buckets: what a computer can verify automatically, what is a real technique that still needs human judgment, and what is just background knowledge. For every piece that's verifiable, it then builds an automatic checker and a hands-on exercise with a solution.

The problem

Reading a technical book doesn't mean you applied it correctly

A best-practices book tells you what to do. But nobody tells you, while you're writing code, whether you're actually following it — not until someone else reviews your work, or the bug is already in production.

01

The advice is just text

"Name your variables clearly." "Don't repeat yourself." These are correct ideas, but no computer understands them as written.

02

Not everything is measurable

Some advice has a clear, checkable rule behind it. Some depends on context and a developer's judgment. Treating them the same is the most common mistake.

03

Nobody practices with real feedback

Without an automatic check, "practicing" a book is just re-reading it. kdd-book builds the exercise and the checker for every technique that's genuinely testable.

How it works

Three steps, no shortcuts

The same method has been applied, so far, to 15 different sources — from style guides to technical specs to purely philosophical texts.

Extract the graph

Every idea in the book becomes a knowledge node: a title, a description, and where it came from. Nothing is invented — everything traces back to the original text.

Triage it honestly

Every node gets one of three labels: measurable (there's a clear rule), judgment (it's real, but has no binary threshold), or knowledge (context, not a technique).

Actually verify it

For every measurable technique, an instrument checks it in seconds, plus an exercise with a broken version and a correct one — proving the instrument tells them apart.

The three categories

Not every piece of advice is the same, and saying so is part of the method

One real example of each category, taken from the sources already processed.

MEASURABLE

"Two blank lines between functions"

PEP 8, Python's style guide. An exact rule: it can be counted and checked in any file.

JUDGMENT

"Choose names that reveal intent"

Clean Code, by Robert C. Martin. A real, valuable piece of advice — but there's no threshold separating a good name from a bad one.

KNOWLEDGE

"Namespaces are one honking great idea"

The Zen of Python. It's design wisdom, not a technique with a property to check.

By the numbers

The project's current state, re-measured from scratch every time

15 sources processed
727 techniques identified
151 verifiable exercises
304 own tests, all passing
Two honest answers

Sometimes the correct result is "almost nothing here is measurable"

Neither source below "failed." Each one measured exactly what there was to measure.

PEP 8 — Python's style guide

69% of its techniques are measurable

A style guide designed to be enforced by a tool. Almost everything it says has an exact rule behind it.

The Zen of Python

0% of its techniques are measurable

19 lines of design wisdom ("simple is better than complex"). None of them has a binary threshold — and forcing one would misrepresent what the text actually says.

Built by one AI agent. Verified by hand, twice, by another.

Several of the newest sources were built by an external AI agent, unsupervised during triage. Every result was re-run from scratch, every rule was deliberately sabotaged to confirm it genuinely catches the mistake it claims to catch, and every forbidden shortcut was manually reconstructed to prove the checker blocks it. Across two separate rounds, that verification found real defects — once, incomplete coverage; once, a test that didn't actually block the shortcut it claimed to block — and both were fixed before the result was accepted. No claim is accepted just because the agent said it worked.