Leader track ๐งญ ยท six sessions, no code
For anyone being asked to approve, fund or explain a project that reads chain data. What genuinely improves for a data team, what an active user count is actually counting, who is paid to move it, what a source that retracts does to a report, when a database does the same job better, and the six questions to ask before the decision rather than after.
The data is public now
What changes for a data team when the source has no owner. Some of it is a genuine improvement and some of it is a tax.
๐ฅ Leader session 2The user count that is not one
About 1,000 addresses, 304 parties, 696 after cleaning. Nothing is ever wrongly merged, which makes the figure a ceiling.
๐ฏ Leader session 3Numbers people are paid to move
Four operators running 60 addresses each look exactly like 240 people, and the clustering only partly separates them.
โฉ๏ธ Leader session 4You cannot take it back
A record that cannot be deleted moves the correction into the read path, forever, for every reader.
โ๏ธ Leader session 5What actually gets better
Four claimed benefits, tested against a database with an audit log. Inside one organisation the database wins on all four.
๐ Leader session 6Scoping a project on this
Six questions with an acceptance criterion each, asked before the decision by the people who will carry it.
Practitioner track ๐ ๏ธ ยท ten sessions, hands on
For whoever has to build it and defend its numbers. Reading a chain as a dataset, the indexer that turns out to be the product, entity resolution on addresses, a counterfactual sweep done correctly, a reorganisation going through a warehouse, designing for retraction, a model on top of all three problems, and the session where this course's own bench was caught being wrong.
Reading a chain as a dataset
No SLA, no backfill request, no gatekeeper. The same absence produces all four, and two of them are yours to solve.
๐๏ธ Practitioner session 2The indexer is the product
A normal pipeline with three abnormal properties, and why two competent teams publish different numbers and both are right.
๐ Practitioner session 3Addresses are not people
Co-spend clustering with a union-find. A co-spend is evidence; the absence of one is not, and that asymmetry is the result.
๐ Practitioner session 4Measuring the clustering
In the bench the truth is 304 and the error is measurable. In production it is not, so what can you still honestly say.
๐ช Practitioner session 5Sybils and adversarial counts
A counterfactual sweep built properly. Better Sybil detection chases 31 of the 392, and the other 361 was there anyway.
๐ฅ Practitioner session 6Reorgs hit your warehouse
511 wrong rows and every check green. The loader is correct code doing exactly what append-only means.
๐งฏ Practitioner session 7Designing for retraction
Late data is additive and your tools expect it. Withdrawn data is subtractive and almost nothing downstream survives it.
๐ค Practitioner session 8ML on public adversarial data
Public features, manufactured labels, a training set that can be withdrawn. None of the three is a property of the model.
๐ชค Practitioner session 9The bench that fooled itself
This bench was wrong, three self tests passed anyway, and the reasoning that caught it generalises well past here.
๐๏ธ Practitioner session 10 ยท capstoneThe Larkfield bench
Both benches, every input exposed. Two exchange rates come out, and the cleaning step turns out to have a slope of 1.
The whole thing on one page
Every idea in the course and the session that owns it. Click any node to jump there.
Three ways through
Everyone starts at session 1 of their track. These are the shortest useful routes if you cannot take all sixteen.
What is real here
Every number in this course was computed before any page quoted it. The world is generated on purpose so that the truth is knowable; the algorithms run over it are the ordinary ones.
| The clustering | A real union-find over real co-spend links, scored against a truth of 304 parties. Across 1,365 settings, the number of clusters holding two real parties is 0 |
| The warehouse | A loader running over a chain that reorganises. Measured over 4 seeds, 5 depths and every lag: about 169 wrong rows per block of depth minus lag |
| The engine checks itself | Five properties on every page load. The fourth exists because the first three all passed against a fault, and session 9 is the record of it |
| No coins | No cryptocurrency, no price, no token, no trading. No figure here describes a real network, and nothing here is investment advice |