Twee dingen waar je op leunt: een groen lampje en een verslag

Als je agents laat werken, krijg je als mens twee soorten signalen terug. Een toets die groen staat, en een verslag van wat er gedaan is. Je leunt op allebei. En allebei kunnen je geruststellen zonder dat ze iets zeggen.
Een groen lampje betekent "aan", niet "werkt". Een verslag betekent "er is iets gebeurd", niet "hier moet jij iets beslissen". Wie die twee verschillen niet scherp heeft, krijgt een organisatie waarin alles netjes groen is en de vragen ergens onderaan een lange tekst zijn blijven liggen.
In dit stuk loop ik door beide. Eerst waarom een groene toets niets bewijst tot je hem rood hebt gezien, en wat je daaraan kunt doen. Daarna waarom een besluit niet in een verslag hoort en hoe je een vraag zo stelt dat hij beantwoord wordt. De voorbeelden komen uit mijn boek AI-agenten die het werk doen en uit de omgeving waarin ik zelf agents laat werken.
Een rookmelder met een groen lampje
Een rookmelder met een groen lampje vertelt je dat hij stroom heeft. Of hij ook piept als er rook is, weet je pas als je er een beetje rook onder houdt.
Voor toetsen van software en controles van agents geldt precies hetzelfde. Een groene uitslag voelt als bewijs. Maar een toets die groen staat, zegt twee dingen tegelijk en je kunt ze niet uit elkaar houden: het klopt, of ik meet niets. Een toets die naar de verkeerde plek kijkt, een controle die altijd waar is, een bestand dat nooit geladen wordt: ze zien er alle drie precies zo uit als een toets die zijn werk doet. Ze zijn zelfs rustgevender, want ze gaan nooit stuk.
Daarom is er een regel die ik elke keer volg: een groene toets die ik nooit rood heb gezien, is geen bewijs.
De proef: breek wat de toets moet vangen
Het ritueel is kort. Je schrijft de toets. Je breekt, in een kopie, wat de toets moet bewaken. Je draait de toets en kijkt of hij rood wordt. Dan herstel je het en kijk je of hij weer groen wordt. Vier stappen, tien minuten.
Een paar voorbeelden van hoe dat er bij mij uitziet:
- Een grens op het aantal berichten per uur? Ik zet hem op 600 en kijk of de toets alarm slaat.
- Een hek dat lekken tegenhoudt? Ik haal het weg en kijk of het lek gevonden wordt.
- Een controle op bijlagen? Ik draai hem om en kijk of dat opvalt.
En dan het belangrijkste: wordt de juiste controle rood? Er is een verschil tussen "de suite faalt" en "de toets die hierover gaat faalt". Het eerste kan door iets heel anders komen. Het tweede bewijst dat de toets het gedrag bewaakt dat ik wilde bewaken.
In het boek beschrijf ik een controle op de dekking van een set pictogrammen. Een fout in het tekenprogramma had ze ooit allemaal bleek gemaakt, zo bleek dat het eruitzag als een stijlkeuze. De nieuwe controle stond groen. Toen heb ik de fout teruggezet, en er vielen negenentachtig van de zesennegentig controles om. Pas op dat moment wist ik dat hij hem zou vangen. Wie dit overslaat, bouwt een alarm en test nooit of de bel het doet. Dat is duurder dan geen zekerheid, want je gaat erop leunen.
Wat de proef oplevert
Het levert vaker iets op dan je zou denken. Eén patroon kwam bij een grote batch toetsen steeds terug: een onderdeel dat compleet gebouwd was, met alle goede onderdelen erin, maar dat door niemand werd aangeroepen. Alle losse toetsen waren groen, want elke toets riep het onderdeel zelf aan. Het werkte in de toets en nergens anders. Zo'n fout vind je pas als je telt of er ook echt iets naar verwijst, en dan nog zonder het commentaar mee te tellen, want een uitgecommentarieerde aanroep telt niet.
Een ander geval was een verschil van twee: er werd 1400 verwacht en er kwam 1398. Dat zie je met geen enkele blik op de uitslag. Het was alleen te vinden omdat de toets expres kapot was gemaakt en daarna precies de juiste melding gaf.
Een grens zonder ondergrens
Een tweede valkuil zit niet in de toets maar in de vraag die hij stelt. In het boek staat een voorbeeld van een controle op de bijschriften in een tekening. De toets stond groen. Ik keek naar de tekening en zag twee bijschriften die in elkaar overliepen: het eerste woord van het ene verdween achter het laatste van het andere.
Mijn eerste verdenking was de meting. Maar die klopte, binnen een of twee procent. Wat er wel aan de hand was, was subtieler. De toets vroeg: overlappen deze twee? Het antwoord was nee, en dat was correct. De twee stonden een halve millimeter uit elkaar, raakten elkaar niet en lazen toch als één woord. Er was een grens, maar geen ondergrens. En een grens zonder ondergrens keurt alles goed wat er net aan voldoet.
Een groene toets is nooit meer waard dan de vraag die hij stelt, en die vraag staat nergens in het antwoord. Het herstel is bijna altijd een ondergrens erbij: niet "ze mogen elkaar niet raken" maar "er hoort zoveel tussen te zitten". Die nieuwe regel vond meteen een tweede geval dat ik niet had bekeken, en dat is het bewijs dat het er een was.
En de andere kant: een toets die te veel vangt
Er is nog een manier waarop een controle waardeloos wordt, en die voelt onschuldiger. Een toets die te smal kijkt, laat door wat hij hoort te vangen. Een toets die te ruim kijkt, meldt dingen die er niets mee te maken hebben. De eerste kost je een fout. De tweede kost je de toets, want een controle die vals alarm geeft, wordt binnen een week genegeerd of weggehaald.
Dus kijk naar beide kanten: wat laat hij door, en wat meldt hij ten onrechte? Het tweede is makkelijker te meten dan het eerste en gebeurt bijna nooit. Laat de controle één keer lopen over alles wat al goed is en tel hoeveel hij afkeurt. Elk getal boven nul is werk voordat hij aan mag.
Het tweede signaal: het verslag
Tot hier ging het over het groene lampje. Nu het tweede ding waar je als mens op leunt: wat een agent je laat weten.
Er gaat bijna altijd iets mis op dezelfde plek. Een agent heeft iets nodig van de mens, en de vraag zit ergens in een lang bericht. Op pagina twee, tussen de uitleg en de resultaten. Wie het leest heeft het gevoel dat er iets gevraagd wordt, maar niet precies wat, en legt het weg tot later. Later is dan nooit.
Een verslag is om te lezen. Een besluit is om te beantwoorden. Het zijn twee verschillende berichten en ze horen op twee verschillende plekken. Een verslag laat ik liggen in een map, als bestand, voor wie het wil nalezen. Een besluit krijgt een eigen vorm.
De kaart: vijf delen
Elke vraag aan mij heeft een vaste vorm. Geen verslag met een vraag erin, maar een kaart met vijf onderdelen:
- Eén vraag, zo geformuleerd dat ik er met ja of nee op kan antwoorden.
- Wat er gebeurt bij ja. Concreet: welk werk gaat dan door.
- Wat er gebeurt bij nee. Even concreet.
- Een advies, met de reden.
- Wat er gebeurt als niemand antwoordt.
Vooral het vijfde onderdeel is nieuw voor veel mensen. Ook geen antwoord is een besluit, alleen een dat niemand heeft genomen. Een vraag zonder standaarduitkomst blokkeert werk zonder dat iemand merkt dat het blokkeert. Schrijf je vooraf op wat er na drie dagen stilte gebeurt, dan kan de agent doorwerken en kan ik gerust een dag overslaan. De standaarduitkomst moet daarbij iets zijn dat niets onomkeerbaars doet.
Twee gewoonten erbij
Eén vraag tegelijk. Niet tien vragen in één bericht. Wie tien dingen tegelijk moet beslissen, beslist er één goed en negen snel. Ik krijg de volgende pas als de vorige beantwoord is.
Grote sets op een pagina. Heb ik veel keuzes, dan staan ze op één pagina waarop ik per punt een optie aanklik of een toelichting typ. Niet per chatbericht. Een chat is voor losse vragen. Wie een stapel besluiten in een chat zet, krijgt een stapel losse reacties terug die je daarna weer moet samenvoegen.
Waarom het aantal vragen ertoe doet
In AI-agenten die het werk doen beschrijf ik acht opmerkingen die ik bij een interface maakte, en die alle acht te meten waren uit een schermafdruk. Acht vragen aan een mens die geen vraag hadden hoeven zijn. Het gaat me om de kant die minder opvalt: minder vragen maakt de vragen die overblijven bruikbaar. Iemand die acht keer gevraagd wordt of iets mooi is, kijkt bij de negende niet meer goed. Een goedkeuring die honderd keer per dag langskomt, is op papier een menselijke controle en in de praktijk een klik.
Het ontwerp is daarom: weinig vragen per mens per dag, en elke vraag de moeite waard. Wat een machine kan meten, meet ze zelf. Wat echt een oordeel is, komt als kaart. Zo blijft het verslag een verslag en wordt de kaart gelezen.
Hoe de twee samenhangen
Een groen lampje en een verslag lijken ver uit elkaar te liggen, maar ze hebben dezelfde zwakte. Allebei zijn ze een samenvatting van iets waar je als mens niet bij bent. En allebei kunnen ze mooier zijn dan de werkelijkheid zonder dat iemand liegt. Een toets die niets meet, is niet verkeerd bedoeld. Een vraag die op pagina twee staat, is niet verstopt met opzet. Het zijn ontwerpfouten, en je lost ze op met een ontwerp, niet met meer aandacht.
Voor het lampje is dat de proef: breek het, zie het rood worden. Voor het verslag is dat de kaart: haal de vraag eruit en geef hem een vaste vorm.
Wat je maandag kunt doen
Kies één controle of automatisering in je eigen werk en doe twee dingen.
- Breek hem. Haal weg wat hij moet bewaken en kijk of hij rood wordt. Wordt hij niet rood, dan heb je een groen lampje gevonden dat niets meet. Wordt er iets anders rood, dan meet je het verkeerde.
- Zoek de verstopte vraag. Pak het laatste verslag dat je van een agent, een collega of een leverancier kreeg. Staat er een vraag in, en zou je kunnen zeggen wat er gebeurt bij ja, bij nee en bij geen antwoord? Zo niet, schrijf hem opnieuw als kaart.
Beide kosten een kwartier, en ze vertellen je vaker iets dan je denkt.
Hoe weet jij dat een controle in jouw proces echt iets zou opmerken, en welke vraag ligt er bij jou al een week open?
Zie ook
Van compiler naar een besturingssysteem voor bedrijven
Deze week maakte ik een video van Wantzel Studio. In één minuut: inloggen, het boekingssysteem van een kapsalon openen en op Run drukken. 1.821 regels Wantzel, gecompileerd in 37 milliseconden. Daarna een echte boeking…
Een mail die zegt dat hij van mij is, is nog geen bewijs
Een mail die zegt dat hij van mij is, is nog geen bewijs.
Een besluit hoort niet in een verslag
Een besluit hoort niet in een verslag.


