torsdag 19 mars 2009

Rubber Duck Debugging

Känner ni igen situationen där man suttit och svurit och pysslat och googlat sig fördärvad över något fullkommligt oförståeligt fel, bara för att komma på lösningen i samma stund som man förklarar problemet för en kollega? Jag vet inte hur många lösningar jag bidragit till genom att bara ställa mig snett bakom någon och titta på deras skärm medan de skamset inser vart misstaget ligger. Och nog har jag själv varit där många gånger med, med problem som bara inte går att lösa ända tills någon, som man bara vet kommer vara dryg om det hela, kommer in i rummet och undrar vad det var man ville.

Själva processen att förklara problemet för någon annan verkar göra att neuroner som tidigare sprungit runt i cirklar helt plötsligt tvingas ställa sig i raka led och reda ut vad tusan det är de pysslar med egentligen. Metoden kallas Rubber Duck method of debugging och beskrivs fantastiskt av min vän JC samt av följande citat

1) Beg, borrow, steal, buy, fabricate or otherwise obtain a rubber duck
(bathtub variety)
2) Place rubber duck on desk and inform it you are just going to go over
some code with it, if that's all right.
3) Explain to the duck what you code is supposed to do, and then go into
detail and explain things line by line
4) At some point you will tell the duck what you are doing next and then
realise that that is not in fact what you are actually doing. The duck
will sit there serenely, happy in the knowledge that it has helped you
on your way.

Works every time. Actually, if you don't have a rubber duck you could at
a pinch ask a fellow programmer or engineer to sit in.


Så nu har ni äntligen ett svar på varför man kommer på vad man gjorde för fel precis lagom för att ge den man bett om hjälp största möjliga tillfredsställelse i att känna sig överlägsen. Och om ni undrar varför den här posten är lite förvirrad, så beror det på att jag varit ute och druckit vin med ett medelålders biologpar, en borgmästare och en biskop. Bland andra. Jag kommer säket inse mitt misstag i skrivandet imorgon, när jag förklarar det för en gummi-anka.

måndag 9 mars 2009

One of those days

Igår kväll var ännu en sådan där kväll när allt bara är skit och tårarna rinner, fastän man inte har den blekaste om varför. Jag avskyr när det händer; känner mig maktlös och tom och vansinnigt utsatt. Jag vill veta varför jag är ledsen, jag vill kunna se kausalsambanden för det gör välden mindre kaotisk. Jag orkar inte med en värld där saker bara händer, for no reason.

Så vad hände igår kväll?

Jag var trött. Det är i och för sig närmast ett normaltillstånd numera, men jag tror det spelade in. Men den viktigaste orsaken tror jag var att jag… hmm, hur beskriver man det? Hade släppt gardet? Jag hade umgåtts med M under helgen, slappat, mått bra och undermedvetet, tror jag, lagt av mig försvaren. Jag har hört att vissa kan börja gråta efter en massage. Jag antar att det här är samma sak. Allting bara rullade ur mig, för det fanns inte tillräckligt mycket som kunde stå emot.

Och det är väl bra att man trots allt kan ventillera då där, men en kväll av random tårar räcker inte. Jag skulle behöva slappna av, bli ledsen, bli arg och sedan dessutom ha tid att göra någonting av det. Vara allt det där klart, så att säga. Nu hinns det inte. En kväll är för kort. Och är jag väl ledig en längre stund har jag som ingen lust att lägga den på soul-searching; då vill jag göra någonting kul. Har inte alls nog med kul saker i mitt liv för att hinna avstå.

Jag jobbar på körkortet, men ska försöka lägga mer fokus på det. Först körkort, sen två resttentor, sen nytt jobb. Men först körkort. Det övriga ska jag tänka mer på sen. Och om en månad är det påsk. Ska gå och be om fyra dagars semester i samband med det, nu. Det kan jag kosta på mig att tänka lite på.