Mijn zus runt een hondenuitlaatbedrijf vanuit haar auto. Veertien klanten, een gedeelde Google Agenda die drie mensen slecht bijwerken, en de gewoonte om "ik kom eraan!" te sms'en naar wie er ook aan de beurt is, waardoor ze het twee keer vergat en een ongemakkelijk telefoontje moest incasseren. Ze vroeg me op donderdag om "een app, niks bijzonders" en wilde dat die aankomende maandag live stond. Ik zei dat ik zou proberen zondagavond iets te hebben. Dit is het logboek dat ik bijhield, omdat ik achteraf wilde weten wat er echt tijd kostte tegenover wat ik alleen dácht dat tijd zou kosten.
Vrijdag, 20:40 — de prompt
Ik opende geen leeg editorvenster. Ik opende de chat en beschreef gewoon het bedrijf: een zelfstandige hondenuitlater, veertien vaste klanten, klanten moeten 's ochtends automatisch een herinnerings-sms krijgen op de dag van hun wandeling, en er moet een simpele pagina komen waarop ze in minder dan dertig seconden een nieuwe klant en de naam van diens hond kan toevoegen, omdat ze dat meestal doet terwijl ze in iemands oprit staat. Ik zei één keer "boekingsapp" en trok dat meteen weer in — het is geen boekingsapp, het is een klantenlijst met een herinneringstrigger. Precies zijn over wat het níet is, bleek meer uit te maken dan beschrijven wat het wel is.
Vrijdag, 21:05 — het plan komt terug
Het plan bevatte drie onderdelen die ik niet had gevraagd en anders zeker was vergeten:
- Een manier om een wandeling als voltooid te markeren, zodat de herinnering niet twee keer afgaat
- Een sms-afmeldlink voor compliance
- Een simpele dagweergave in plaats van een agendagrid, want een agendagrid op een telefoon met veertien items is gewoon een muur van piepkleine tekst
Ik herschreef het plan de volgende twintig minuten drie keer, meestal door dingen te herformuleren die geen herformulering nodig hadden. Achteraf gezien was dat puur zenuwen — het planagentteam had de vorm de eerste keer al goed te pakken, en ik was zinnen aan het bewerken in plaats van de inhoud.
Vrijdag, 21:40 — eerste run
Ik startte het en zag het agentteam werken aan het klantmodel, de dagweergavepagina en de herinneringstaak. Het ontwerp zag eruit als een intakeformulier bij de dierenarts, wat eigenlijk correct was voor het publiek — de klanten van mijn zus zijn hondeneigenaren van in de 40 en 50, geen Series A-pitchdeck. Ik wilde bijna uit gewoonte bezwaar maken tegen de visuele stijl, tot ik besefte dat die beter bij de echte gebruiker paste dan alles wat ik zelf zou hebben gekozen.
Vrijdag, 22:30 — eerste pauze
Het sms-onderdeel had een actieve providersleutel nodig voordat het echt iets zou versturen, wat correct gedrag is en geen bug, maar ik was vergeten dat ik die nog niet had ingesteld. Al het andere bleef gewoon werken — de app logde alleen wat het zou hebben verzonden in plaats van het echt te versturen, waardoor ik kon doorbouwen in plaats van vast te lopen op een Twilio-aanmelding om 22:30 op een vrijdagavond. Ging naar bed.
Zaterdag, 8:00 — het echte probleem
Dit is degene die echt tijd kostte. Ik had gevraagd om herinneringen "'s ochtends op de dag zelf" te versturen, en de eerste versie interpreteerde dat als een vast tijdstip van 7 uur voor elke klant, ongeacht het tijdstip van de wandeling. Prima voor een wandeling om 9 uur, nutteloos voor eentje om 16 uur. Ik ging terug naar de chat en zei het rechtstreeks:
De herinnering moet een vast aantal uren vóór het geplande tijdstip van élke wandeling afgaan, niet op een vast kloktijdstip.
De oplossing kostte één uitwisseling. De les ging niet over de tool, maar over mijn eigen prompt: "'s ochtends op de dag zelf" is het soort zin dat voor de persoon die het zegt precies aanvoelt, en voor iedereen anders volkomen dubbelzinnig is — inclusief, blijkbaar, mezelf twaalf uur later.
Zaterdag, 11:15 — het verificatierapport lezen
Voordat ik nog iets anders aanraakte, haalde ik erbij waar de build zichzelf aan had getoetst:
- Of het klantformulier correct opsloeg
- Of de herinneringstaak draaide tegen een testdag met afspraken
- Of de afmeldlink een testnummer daadwerkelijk uitschreef
Er stond niets in brand. Ik heb de gewoonte ontwikkeld om dit te lezen voordat ik zelf op zoek ga naar problemen, omdat het me vertelt waar ik mijn aandacht echt aan moet besteden, in plaats van willekeurig rond te klikken in de hoop iets verkeerds op te merken.
Zaterdag, 14:00 — sms, nu écht
Providersaccount ingesteld, sleutel erin gezet, mezelf een testherinnering gestuurd.
Klein detail, maar het is het moment waarop een project ophoudt een demo te zijn en iets wordt dat echt in de wereld bestaat.
Zaterdag, 16:20 — het wachten op het domein
Wees haar echte domein ernaartoe en deed vervolgens twee uur lang niets nuttigs terwijl DNS bijwerkte. Ik gebruikte de tijd om zelf de veertien echte klantregels in te voeren in plaats van dat aan haar over te laten om zondagavond op haar telefoon te typen, wat achteraf gezien de beste tijdsbesteding van het hele weekend was — onaantrekkelijke data-invoer verslaat elke hoeveelheid extra polijstwerk waar niemand om had gevraagd.
Zondag, 9:00 — het onderdeel dat ik bijna te veel uitbouwde
Ik kreeg het idee dat ze wel een wekelijks overzicht zou willen — voltooide wandelingen, no-shows, omzet — en begon te vragen om een geautomatiseerd maandagochtendoverzicht. Ik hield mezelf halverwege tegen. Ze heeft veertien klanten en houdt haar eigen boekhouding bij in een notitieboekje. Een overzichtsfunctie is een oplossing voor een probleem dat ze nog niet heeft. Weggelaten. Ik kan het er in vijf minuten bij bouwen in de week dat ze er echt om vraagt, en tot die tijd is het alleen maar extra oppervlak waar iets mis kan gaan.
Zondag, 13:10 — de link naar haar gestuurd
Ze voegde vanaf haar telefoon een klant toe terwijl ze op een parkeerplaats stond, wat de échte test was die meer betekende dan alles wat ik zelf had gecontroleerd.
Zondag, 18:40 — wat ik de volgende keer zou overslaan
Wat ik de volgende keer zou overslaan:
- Drie planherzieningen die niets veranderden
- Twee uur piekeren over de sms-provider voordat ik het zelfs maar had geprobeerd in te stellen
- Het bijna-gebouwde overzichtsdashboard — de snelste dertig minuten van het hele weekend waren die waarin ik "nee" zei tegen mijn eigen idee in plaats van het te bouwen
Alles wat echt tijd kostte, was ofwel een oprechte dubbelzinnigheid in mijn eigen verzoek, ofwel het onvermijdelijke wachten op de DNS-server van iemand anders. Bij de volgende build schrijf ik de prompt één keer, lees ik hem terug alsof ik een vreemde ben, en vertrouw ik het eerste plan meer dan ik dit keer deed.



