Når en lang planlægningssamtale med AI er færdig, kan den idé, vi droppede, fylde mere end den løsning, vi valgte. Det var jo den, vi brugte al tiden på at diskutere.

Så er hele samtalen et lidt besværligt udgangspunkt for at gå i gang med koden.

Jeg bruger en session på at finde frem til planen og en ny session til hver kodeopgave. Det er lidt kedeligt at skrive den overlevering, men det tvinger mig til at tage stilling til, hvad den næste session faktisk har brug for at vide.

Forestil dig, at vi skal tilføje søgning på navn i en kundeliste, hvor resultaterne er fordelt over flere sider. Det er nærliggende at filtrere de rækker, der allerede er hentet ind i browseren. Så finder vi bare ikke kunden på side to, når vi søger fra side et. Vi vælger derfor at søge på serveren, før resultaterne deles op i sider.

“Tilføj den søgning, vi talte om” får ikke den beslutning med. En overlevering til dette eksempel kunne se sådan ud:

Tilføj søgning på navn i den eksisterende kundeliste. Tag udgangspunkt i den nuværende listevisning og det server-endpoint, den kalder. Bevar de eksisterende adgangsregler.

Filtrer på serveren, før resultaterne deles op i sider. Når søgningen ryddes, skal den første side af den ufiltrerede liste vises igen.

Vi fravalgte at filtrere alene blandt de indlæste rækker, fordi det ville overse kunder på andre sider.

Kontrollér med en kunde, som normalt ville ligge på side to. En søgning fra side et skal finde kunden. Ryd derefter søgningen, og kontrollér, at den normale liste kommer tilbage.

Den fravalgte løsning får en enkelt sætning, fordi begrundelsen stadig er relevant. Den næste session kan se, hvorfor den oplagte genvej ville være forkert, uden at læse hele diskussionen. I en rigtig opgave ville jeg også linke til de relevante kildefiler, når planlægningen havde fundet dem.

Det giver også noget konkret at kontrollere bagefter. Et søgefelt, der kun filtrerer de synlige rækker, kan se overbevisende ud i en hurtig demonstration. Kunden på side to afslører, om søgningen faktisk virker på tværs af siderne.

For mig gør en ny session den overlevering svær at springe over. Handler opgaven bare om at rette en knaptekst, behøver det ikke blive en større øvelse. Men efter en ordentlig planlægningssamtale vil jeg have, at kodesessionen starter med den beslutning, vi traf. Den behøver ikke sidde med til hele mødet igen.