Parprogrammering ansikt-til-ansikt

Etter å ha snakket om parprogrammering i flere år i Contiki, men bare gjort det sporadisk og uten særlig hell, har vi endelig funnet en måte som ser ut til å passe for oss. Inspirert av Corey Haines som reiser rundt og parprogrammerer med alle som vil gi ham husly for natten, har vi prøvd ut parprogrammering ansikt-til-ansikt.

Oppsettet er enkelt: To utviklere sitter ovenfor hverandre. De deler én PC med to skjermer, to tastatur og to mus. Begge skjermene må vise det samme.

På denne måten er utviklerne likeverdige – begge har den samme kontrollen. Det vi ofte opplevde når vi jobbet i par tidligere var at den ene på en måte følte at han trengte seg på. Kun en av utviklerne eide arbeidsstasjonen, og den var ikke tilpasset par-arbeid, slik at den andre ble sittende litt ukofortabelt på siden.

I tillegg til den “nøytrale” maskinen man jobber på er det viktig at utviklerne har en egen maskin hvor de kan gjøre “private” ting.

Den store fordelen med dette nye oppsettet er at man sitter og ser på hverandre. Kommunikasjonen blir mye bedre – sammarbeidet blir en naturlig samtale. I dag hadde vi vår første retrospective etter en hel sprint med ansikt-til-ansikt, og tilbakemeldingen var meget bra. Vi kommer til å fortsette med dette oppsettet på alle utviklingsoppgaver en stund til, før vi tar en vurdering av om det er noe vi ikke behøver å bruke parprogrammering på.

Kategorier: Jobb.
RSS feed for kommentarene. Tilbaketråkk.

7 kommentarer til “Parprogrammering ansikt-til-ansikt”

  1. Jonas Follesø Says:

    Har selv hatt god erfaring med dette oppsettet, og blogget om det i Mars 2007. Vi benyttet oss av dette på et prosjekt på HEMIT. Veldig effektivt, samtidig som man slapp å sitte “skulder til skulder” hele dagen.

    http://jonas.follesoe.no/PairProgramming.aspx

  2. badbadboy Says:

    Nice post, Torbjørn!
    I could just comment that during this week I’ve had a couple of days that were my best programming experience ever.

  3. Torbjørn Says:

    I was very exited to hear that, Mr. Bad. It made it all worth it. Let’s try to continue as we did last week. You’re our best pusher of “going slow with high quality” – don’t stop that, even if we give you a hard time some times.

  4. Halvard Says:

    Jeg maa ogsaa si at dette har vaert den beste parprogrammeringsopplevelsen jeg har hatt. Aa sitte overfor hverandre foeltes naturlig. Parprogrammering er mye mer intenst enn aa holde paa for seg selv. Aa ha muligheten til aa sjekke email og ta seg av andre arbeidsoppgaver innimellom paa den andre, “private” maskinen var ogsaa nyttig. Det gav de noedvendige pausene man trengte for ikke aa bli fullstendig utkjoert.

  5. Thomas Says:

    I felt a level of intensity, excitement(?) and an interest about what they were doing that hasn’t been there for a while. What impressed me most of all though, was the communication and discussions – both within the pairs and in the team as a whole. Uncertainties were cleared up as they arose, and decisions were taken there and then. As a result, I believe that the quality and design of what was delivered at the end of the iteration was above and beyond what would have been the case if was developed “normally”.

  6. Johannes Brodwall Says:

    Spennende varianter. Roterte dere par mye, eller endte folk opp med å programmere med de samme?

  7. Torbjørn Says:

    Vi fikk desverre ikke igang noen god rotasjon, så det er noe teamet absolutt bør fokusere på videre. Jeg har stor tro på å bytte partner ofte – til og med midt i en oppgave – selv om jeg aldri har fått prøvd det ut i praksis.

    Nå forlater jeg teamet, har fått meg ny arbeidsgiver, og da er det bare tre rene utviklere igjen, og da tror jeg det blir enda vanskeligere å etablere en god rotasjon. Jeg håper derfor de vil inklidere product owners og testere tettere inn, og la de bli med i parprogrammerins-sesjoner (de er alle ex-programmerere) – det tror jeg også kan gi gode resultater.

Skriv en kommentar

Tillatte tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>


Torbjørn: La oss anta to ulike definisjoner av Template Method pattern - de to ytterpunkte...

Lars-Petter: Hei igjen. Siden du inviterer til å ta diskusjonen i bloggen, og har tatt deg t...

Torbjørn: Lars-Petter: Det er én måte å se det på. Det er absolutt fortsatt Template M...

Lars-Petter: Hei. Har du ikke i prinsippet her gått over fra Template Method (arv) til Strat...

Christian Abildsø: I alle fall i C#, så føles dette som kode som blir mer fleksibel men vanskelig...

Torbjørn: Hei Henrik, og takk for tilbudet. Ble oppmerksom på Rasberry Pi for under en uk...

Henrik Sandaker Palm: Ang. større hobby prosjekt. Du er som er en slik rakker på programmering har j...

Øivind Nilsen: Slutt å bruke mobilnummeret mitt som eksempel !...

Bjørn Einar Bjartnes: Jeg har også latt meg fascinere av Clojure, uten at jeg har kommet så veldig l...

Bjørn Einar Bjartnes: Sweet :) Jeg tror egentlig jeg liker det som det er, med musikk. Litt av utford...

Mulig relaterte linker

 Hold deg oppdatert

Søk i bloggen

Ferske innlegg

  • Template Method del 4: Multippel arv
  • Template Method Intermesso
  • Template Method del 3: Bare funksjoner
  • Template Method del 2: På vei mot funksjonell programmering
  • Kategorier

  • .net ninja (37)
  • Bøker (17)
  • Diverse prosjekter (35)
  • DSL (10)
  • Erlang (10)
  • F# (5)
  • Hardware (1)
  • Jobb (77)
  • Julekalender (51)
  • kjempekjekt.com (23)
  • LISP/Clojure (33)
  • NNUG / community (60)
  • O/RM & databaser (10)
  • Off topic (116)
  • OO-design/clean code (30)
  • Podcasts (14)
  • Polyglot (77)
  • Ruby (27)
  • Silverlight / RIA (3)
  • Software/verktøy (20)
  • Softwareutvikling (20)
  • Testing / TDD (30)
  • the contiki strip (13)
  • User experience (3)
  • WCF (3)
  • Webutvikling (32)
  • WPF (9)
  • WTF (12)
  • Last ned Wallpaper

    Programmeringsbloggens tøffe skrivebordsbakgrunn med snippets fra ulike språk laster du ned her!

    Abonner via epost

    Om du vil kan du få alle nye blogposter tilsendt til din epost. Abonner nå, det er kjempeenkelt!

    Meta