Backa först, felsök sedan. När appen slutat fungera är den mest lönsamma åtgärden nästan alltid att gå tillbaka till den senaste version som fungerade — inte att be om ännu en fix. Det känns som att förlora arbete. I praktiken är det att sluta gräva sig djupare.
Läget du hamnat i
Det börjar med ett fel. Du klistrar in det, får en fix, ett nytt fel dyker upp. Du klistrar in det också. Efter fem varv fungerar ingenting, felmeddelandena handlar om saker du aldrig hört talas om, och du vet inte längre vilken ändring som orsakade vad.
Det som hänt är att varje fix bygger på antagandet att den förra var rätt. Var den inte det felsöker du nu konsekvenserna av tidigare fixar i stället för det ursprungliga problemet. Ju längre du håller på, desto svårare blir det.
Det finns bara en väg ut ur det läget, och det är bakåt.
Första åtgärden: backa
Läsa ett felmeddelande utan att kunna koda
Felmeddelanden ser skrämmande ut för att de är skrivna för utvecklare. Men fyra saker går att plocka ut utan förkunskaper, och de räcker nästan alltid.
Fyra saker att leta efter
- Ett filnamn. Något som slutar på
.js,.py,.html. Det säger var problemet är. - Ett radnummer. Ofta efter filnamnet, som
app.js:47. Ännu mer exakt. - Ett ord du känner igen. Namnet på något i din app — ett fält, en knapp, en funktion.
- Orden
not defined,undefinedellernull. De betyder nästan alltid samma sak: något som skulle finnas saknas. Ofta för att det inte hunnit laddas, eller för att namnet stavats olika på två ställen.
Med de fyra sakerna kan du ställa en fråga som handlar om ditt problem i stället för om felmeddelandet i allmänhet — och det ändrar svaret helt.
Frågan som fungerar
Vad jag försökte göra: [i en mening]
Vad som händer i stället: [vad du ser på skärmen]
Felmeddelandet: [hela, inte bara sista raden]
När det senast fungerade: [innan jag bad om X]
Förklara först vad felet betyder, på vanlig svenska. Föreslå fix efter det — en enda, den minsta möjliga.
"Den minsta möjliga" är värd att ha med. Utan den formuleringen kommer förslaget gärna med en omskrivning av tre filer, och du är tillbaka där du började.
Fel du kan lösa själv
Vissa problem är så vanliga att det är värt att prova innan du frågar någon.
När du ska sluta för dagen
Två tecken på att det inte är läge att fortsätta: du har fått samma förslag två gånger, eller du kan inte längre förklara vad appen ska göra.
Backa till en fungerande version, spara den, och gå ifrån det. Problemet ser nästan alltid annorlunda ut nästa gång. Det är inte ett tålamodsråd — det är att en trött person som stapla fixar gör mer skada per timme än en utvilad gör nytta.
När appen fungerar lokalt återstår momentet som överraskar flest: att få den att fungera för någon annan än dig.