Give Every Belief a Date
Written later and filed to this date, as part of filling in every day of the year.
You are going to build a system that scores itself. That is the whole idea: it watches what it costs you and what it gives back, and reports the difference. What I want to tell you is the one thing I got wrong about that, and the one fix.
A system that scores itself cannot lose. Every number it reads is a number it chose to read, and a bad week reads as a week the measurement needs work. I ran mine for not quite six weeks before a review of the bet said so in three words: unfalsifiable by construction. So at the start of July I wrote five sentences, each with the same four parts. A belief the system depends on. A condition that would show the belief was false. A date by which the condition would be checked. And what happens if it fires, decided in advance, so that on the day it fires there is nothing left to decide.
The fifth sentence was about me. The system had a layer that read hand-kept records: a time log, a few small files I was supposed to fill in by hand. The belief was that I would keep filling them in. It had already failed once; the sentence gave it a second chance with a clock on it. The condition was fourteen days without an entry. The date was a Thursday in the middle of July. The default was written into the sentence: if it fires, shrink the layer that reads the dead files; do not rebuild it, and do not try to re-converge me with it.
It fired. On the Thursday the time log held one week heading and nothing under it, and the other files were untouched scaffolds. Fourteen days, zero entries, clock not reset. The default was applied the same afternoon. Forty-nine commands that read the dead data were marked deprecated, each pointing at a live keeper, and the tool’s live command count went from 207 to 158. Nobody had to decide anything. The decision had been made in the sentence two weeks earlier, by a version of me who had not yet failed to write in the log.
Here is the part to copy, and the part not to. Copy the four parts, especially the date and the default. A belief without a date is a hope. A belief with a date and no default is an argument you will have with yourself on the day, when you are the least qualified person to have it.
Do not copy how mine fired. No code evaluated the fifth sentence. It lived in prose, in a review document and a resolved question, and it fired because a session happened to open the document on the right day and read the clock. Before that day was out, all five were wired into the check that runs with every verification, each with a dated clock, so that a fired one lands at the top of the decision queue whether anyone opens anything. Yours should start there.
Write the belief, the condition, the date, the default. Then make something other than you read it.