Softwareudvikling, aber og kokosnødder

abefældeI Robert M. Pirsigs syrede roman, Zen And The Art Of Motorcycle Maintenance, beskriver hovedpersonen Phaedrus en række “mods-fælder” (“gumption traps”), hvoraf den farligste efter hans udsagn er “value rigidity” – altså værdi-rigiditet.

Værdi-rigiditet er, kort beskrevet, manglende evne til at reevaluere sine opfattelse af en situation, forårsaget af en binding til tidligere værdier.

Et eksempel på dette er den sydindiske abefælde, som er en anordning bestående af en kokosnød med et hul i. Hullet er lige præcis stort nok til at aben kan få sin hånd ind efter den risbolle, der ligger derinde, og det er lige præcis for snævert til at aben kan få sin knyttede næve ud igen. Dette fører, pga. abens værdi-rigiditet og manglende evne til at reevaluere sine værdier, til den sikre død – for aben vil ikke slippe risen, selvom den ser en flok vrede mennesker bevæbnet med køller komme løbende hen i mod den!

Inden for softwareudvikling er det efter min mening meget ofte praktisk at man tvinger sig selv til at reevaluere. En typisk situation er at man sidder og leder efter en fejl og “stirrer sig blind” på et problem i timevis, og man evner ikke at bryde ud af den initielle opfattelse af situationen, fordi man hele tiden ender i den samme kæde af tanker… man har simpelthen fokuseret så lang tid at man så at sige er endt med skyklapper på. Værdi-rigiditeten retter sig her mod ens forhastede diagnose af problemet, som naturligvis ikke altid holder stik.

Hvis jeg selv oplever at jeg ikke kommer nogen vegne med et bestemt problem, så benytter jeg mig ofte af en særlig teknik til at bryde værdi-rigiditeten: Jeg rejser mig abrupt fra min plads, går ud og brygger en kop kaffe, snakker med pigerne i salgsafdelingen, spiser en pære og nogle cashew-nødder, tager et spil bordtennis osv.

Hvis jeg arbejder hjemme, så løber jeg en tur, går i Rema eller skræller kartofler til aftensmaden – jeg kan sågar finde på at sætte en kogevask over!

Hovedsagen er at jeg er bevidst om min egen værdi-rigiditet, og at jeg kan genkende mine skyklapper når jeg ser dem, hvorefter jeg kan gøre en indsats for at flushe hjernen – det er i hvert fald første skridt på vejen til at bryde ud af det kedelige mønster og reevaluere situationen.

Værdi-rigiditet er iøvrigt et tilbagevendende tema inden for mange andre discipliner end debugging… f.eks. teknologivalg – men det er vist en længere diskussion.

Hvor er du stødt på værdi-rigiditet?

(tak til cheerfulmonk for lån af billedet)

10 comments for “Softwareudvikling, aber og kokosnødder

  1. Gode pointer, det fik mig til at tænke på om jeg måske har nogle kodeskikke som er skadende, altså en slags cargo-cult over for mig selv.

    Når det kommer til fejl har jeg så en mere doven tilgang; hvis jeg ikke kan finde en fejl så tager jeg en lur. Jeg ved ikke hvad det er men det er som om at underbevistheden får frit løb, så kommer det hele let.

    Så jeg er altid bedst om morgenen og lige efter min middagslur 🙂

  2. Glimrende pointe der minder mig om path dependence der er den effekt der forklarer hvordan de valg og beslutninger vi står overfor i dag er et resultat af de vi har taget tidligere. Det forudsager at vi har svært ved at få nye out-of-the-box ideer. Ligesom regndråber over tusinder af år danner fjeldkløfter, så former de ting vi lærer, hvem vi er og for at udforske andre kløfter, er vi nødt til at gøre en eksplicit indsats. Efterhånden som vore videns-kløfter bliver dybere bliver det svære og svære at udforske nye kløfter. Det gælder derfor om at stige af path dependence og skære nye riller.

  3. Glimrende artikel, det fænomen du beskriver er faktisk velkendt inden for physkologien og hjerne forskning, og siden jeg første gang læste om det har det også ændret den måde jeg arbejder på.

    Det hænger faktisk sammen med det, som sikkert mange har oplevet: nemlig at man står under bruseren eller lige ved at falde i søvn, og pludselig ved man hvorfor noget ikke virker og hvordan det burde løses.

    Teorien er at når man er i problem løsnings mode, så tænker man meget fokuseret, og med sky klapper på, men man har en anden del af hjernen der tænker i bredere termer, som får input mens du er i problem mode, men ikke får processor tid, når man så slapper af, fx sætte koge vask over el. Så skifter man mode, og kan bedre tænke ud af boksen, lave nye mønstre.

    Der hvor det bliver super interesant er, at man overordnet kan sidde fast i et problem på to måder, et man har stirret sig blind på det, eller to det ER et træls problem men kræver man er stædig og knokler på, er man bevidst om det og har lidt øvelse kan man blive bedre til at opdage om det er den ene eller anden type problem, og fx, springe op fra sit tastatur, fordi man ved man sidder fast.

    Hvis man vil vide mere om den slags, vil jeg anbefale

    Andy Hunt:

    http://pragprog.com/book/ahptl/pragmatic-thinking-and-learning

    Cordelia Fine, A mind of its own: (fik den anbefalet af Michal Nygaard, som havde fået den anbefalet af Linda Rising 😉

    http://www.amazon.com/Mind-Its-Own-Distorts-Deceives/dp/0393331636

    Og den her artikel google lige fandt (titlen alene er jo genial)

    http://www.psychologicalscience.org/index.php/news/releases/to-think-outside-the-box-think-outside-the-box.html

    Eller hvis man er type der hellere vil se filmen, frem for at læse bogen er denne RSA –animated super.
    http://www.youtube.com/watch?v=dFs9WO2B8uI

  4. Jeg har altid anvendt noget tilsvarende. Tilbage i skole/handelsskole/universitetet brugte jeg min sport som afbræk i kontinuert arbejde. I den tid jeg har været programmør i den virkelige verden har jeg altid brugt kaffepauser, snak med kolleger, “tænke højt” samt generel surfing på internettet som afbræk.

    For mig er det tit et spørgsmål om at skabe distance til problemstillingen. Det er tit at man får en “åbenbaring” når man er aktiv i det fri, men lige så tit man får det på vej ud for at hente kaffe. Det vigtige er egentlig at indstille sig selv på at “give op” i stedet for at “arbejde igennem” når der opstår problemer, dead locks eller andet.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *