Par­­program­mering: - Funker bedre på hjemmekontor

Hos NAV parprogrammerer de alt. Andre gjør det aldri. - Å tro det får ut det beste i alle, er i beste fall naivt.

Jobber norske utviklere bedre når man setter to på samme kode? Eller er parprogrammering bare til bry? 📸: <a href="https://unsplash.com/@alvarordesign?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Alvaro Reyes</a> / <a href="https://unsplash.com/s/photos/pair-programming?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a>
Jobber norske utviklere bedre når man setter to på samme kode? Eller er parprogrammering bare til bry? 📸: Alvaro Reyes / Unsplash Vis mer

Enkelt forklart betyr parprogrammering at to utviklere skriver kode sammen.

Samtidig som dette rent matematisk sett betyr å bruke dobbelt så mange folk på en oppgave, er tanken at dette skal spares inn gjennom blant annet færre feil i koden, mer effektivt arbeid og kanskje til og med mer fornøyde utviklere.

Men vil egentlig norske utviklere programmere i par? Og hvordan funker det nå som alle sitter på hjemmekontor?

Vi spurte kode24-klubben til ukas episode av kode24-timen. Og selv om de fleste er positive, er åpenbart ikke parprogrammering for alle - alltid.

NAV elsker parprogrammering

- I teamet mitt i NAV driver vi utelukkende med parprogrammering, forteller NAV-utvikleren Oscar Vladau-Husevold.

- Jeg syntes det var ganske slitsomt den første måneden å alltid ha noen som "henger" over meg, men til gjengjeld ble innføringen til en ny stack skrevet i et språk jeg ikke kunne betydelig mye enklere.

Også kollegaen hans Audun Fauchald Strand i NAV sier han har blitt glad i parprogrammeringen den statlige aktøren driver med.

- Personlig synes jeg det var kjempeskummelt i starten. Men innså at det å parre med noen gjør at mine største svakheter som utvikler - at jeg ofte går meg vill - forsvinner. Og at jeg lærer så utrolig mye av å kode sammen med noen som har bedre koll på et spesifikt programmeringsspråk enn meg, skriver Strand på kode24-klubben.

Ifølge han er hemmeligheten bak suksessfull parprogrammering å bytte par ofte, at den med minst erfaring skriver mer enn den med mest erfaring og å bruke mobprogrammering i starten av større prosjekter - altså en slags parprogrammering med flere enn to.

«Her er det for meg en klassisk kost/nytte-avveining.»

Foretrekker av og til

Det virker ikke som det er så mange andre enn NAV-utviklere som utelukkende programmerer i par. De fleste slår et slag for gode, gamle "av og til".

- Ikke 100 prosent av tiden, men er det noe hint av logikk eller avgjørelser som må tas, syns jeg parprogrammering er mer effektivt enn å skrive frem og tilbake på en PR. Pluss deling av kunnskap. Dessuten liker jeg det sosiale aspektet, melder Anders Holmefjord.

- Jeg liker det som et verktøy for gitte omstendigheter, som opplæring, informasjonsdeling, feilsøking og løsningsutforskning, men ikke som modus operandi, skriver Michael Odden.

- Her er det for meg en klassisk kost/nytte-avveining, og denne veier nok tyngre i favør parprogrammering i miljøer der det er mengder av utviklere, større turnover blant medarbeidere eller høyere kritikalitet med tanke på sluttresultatet.

Parprogrammering på hjemmekontor

Man forbinder gjerne parprogrammering som noe man gjør sammen rent fysisk. Men å parprogrammere fra to ulike hjemmekontorer skal visstnok fungere minst like bra.

- Min opplevelse er faktisk at parprogrammering remote fungerer bedre enn på kontoret. På kontoret har jeg alltid følt det har vært litt ukomfortabelt. Har for lyst til å "kapre tastaturet" når det ikke er min tur, og føler den andre fort invaderer intimsonen min når jeg skriver, skriver Vegard Haugstvedt, og fortsetter:

- Over video er ingen av disse problemene tilstede. Eneste er at man blir sliten i lengden, men det synes jeg vi har løst godt med å legge inn pauser med jevne mellomrom.

Mange melder at de bruker Code With Me-pluginen til Jetbrains. Og det å faktisk tilbringe tid med kolleger har blitt enda viktigere for mange under pandemien.

- Det største plusset i min bok er det sosiale aspektet, nå som man har måttet være på hjemmekontor. Det har vært absolutt nøvendig for meg det siste halve året, skriver Vladau-Husevold i NAV.

«Å tro at parprogrammering vil være en silver bullet som vil få ut det beste i alle er i beste fall litt naivt.»

Ikke for alle

Men - det er alltid et men. For ikke alle norske utviklere liker å parprogrammere, selv ikke bare av og til.

- Parprogrammering er ikke for meg. Hvis jeg trenger hjelp med å løse en oppgave, tar jeg heller en pause i programmeringen og spør noen om hjelp, skriver David Oftedal, som ikke takler å både programmere og forholde seg til en annen person samtidig.

- Mareritt. Som en "introvert grubler" får jeg noia bare ved tanken. For å få ordentlig flyt trenger jeg ro, stillhet, og muligheten til å prøve ut ting, uten bedømmelse eller kommentarer fra andre, stemmer Torleif Berger i.

- Til syvende og sist handler det vel om at hver utvikler skal få utnyttet mest mulig av potensialet sitt, og at man skal fungere godt som team. Da tror jeg det er viktig å være bevisst på at vi mennesker er forskjellige, og at det som funker bra for noen ikke passer noe særlig for andre, forteller Tia Helene Firing, som bare liker parprogrammering i små mengder av gangen.

- Å tro at parprogrammering vil være en silver bullet som vil få ut det beste i alle ("Du må bare prøve noen uker til!") er i beste fall litt naivt.