Projektets instruktionsfil
Hvorfor den findes
Hver session med assistenten begynder fra nul. Den læser hurtigt, men den husker ikke noget fra sidste session, og derfor er de dyreste fejl den kan begå, dem der allerede er begået og betalt én gang. Det er det problem instruktionsfilen løser. Den er en almindelig tekstfil i repositoryet, som assistenten læser før den går i gang med noget, og den indeholder det der er besluttet, sammen med den begrundelse der afgjorde det. Det er den der gør at sidste måneds beslutninger overlever denne måneds session.
Hvordan den begynder
Den begynder som regel i det små, og som regel på en dårlig dag. Den første linje i sådan en fil er sjældent et princip. Det er en rettelse med dato på: et design der var besluttet, blev åbnet igen af en ny session med en god idé, eller et udkast kom til at bruge et tal der aldrig var frigivet. Beslutningen bliver skrevet ned sammen med den begrundelse der lå bag, i hele sætninger og mens den er frisk. Fra da af bliver filen læst før arbejdet går i gang, og den fejl er lukket.
Hvordan den vokser
Den vokser med én regel pr. fejl. En regel kommer ind i filen fordi noget gik galt, og den kommer ind sammen med sin begrundelse. En regel uden begrundelse bliver læst som smag, og smag bliver taget op igen af enhver der finder den ubelejlig. Fordi filen kun vokser gennem fejl, kommer der ikke noget ind i den som ikke hænger sammen med noget der er sket.
Hvad der hører hjemme i den
Beslutningerne hører hjemme i den, hver med sin begrundelse. Det gør de lukkede spørgsmål også, markeret som lukkede og med det argument der lukkede dem, for et lukket spørgsmål uden argument ligner et åbent.
Hvad der holdes ude
Alt det som koden eller dataene allerede siger, holdes ude. Assistenten læser repositoryet ved starten af hver session, så en linje der genfortæller koden, bliver forældet ved næste ændring, og én forældet linje er nok til at hele filen mister sin troværdighed. Det samme gælder tal som de tilkoblede systemer kan svare på. Filen noterer hvad der er besluttet om dataene, og lader selve dataene blive hvor de ligger.
Filen bag det her site
bucca.dk kører på sådan en fil, og tre af punkterne i den viser hvor bredt den spænder. Det ene handler om hvilke tal der må offentliggøres: kunderesultater holdes ude af sitet indtil kunden har frigivet dem, og filen har en liste over de påstande der allerede er fjernet, så en senere session ikke lægger en af dem tilbage i god tro. Det andet er en designbeslutning der blev truffet to gange: kundelogoerne på forsiden står i deres egne farver, selvom identitetsmanualen lægger op til en monokrom logovæg. Jeg besluttede det to gange i samme måned fordi den første beslutning aldrig blev skrevet ned; nu står det i filen, og spørgsmålet har været lukket siden. Det tredje er en fælde i skriften: slår man dens tal om til det tabulære sæt, tager tegnsætningen en hel cifferbredde, så “4,5” bliver sat som “4 , 5”, og “No lock-in” får luft omkring bindestregen.
Hvorfor den betyder mere med tiden
Den første måned er der ikke meget at skrive. Hver beslutning er frisk, og den der traf den, sidder med ved bordet. Et år senere består det meste af det assistenten skal vide, af de diskussioner der blev afgjort undervejs, og filen er det eneste sted de findes. Koden viser hvad hver diskussion endte med; filen viser hvorfor. Et langt samarbejde består af mange afgjorte diskussioner, og filen er det sted hvor de bliver ved med at være afgjort.