Pair Programming: Good, Bad and Ugly

Post on 15-Jan-2015

3.781 views 4 download

Tags:

description

Presentation accompanying workshop for OOP Conference 2012

Transcript of Pair Programming: Good, Bad and Ugly

Pair Programming

Ken Fassone @nexusventuri

Pat Kua@patkua

The Good, the Bad and the Ugly

Tageskarte

Introduction to pair programming

Demonstration

Roles we identified

Pairing Workshop

Q&A

Introduction

Roles

Introduction

Roles

BenefitsBenefits

Roles

Introduction

PatternsPatternsBenefits

Roles

Introduction

What is pair programming?

Driver

Driver Navigator

Benefits

Benefits

Continuous feedback

Benefits

Continuous feedback

Merged ideas

Benefits

Continuous feedback

Merged ideas

Knowledge spreading

Benefits

Continuous feedback

Merged ideas

Knowledge spreading

More Focus

Benefits

Continuous feedback

Merged ideas

Knowledge spreading

More Focus

Better code

Benefits

Continuous feedback

Merged ideas

Knowledge spreading

More Focus

Better code

More consistency

Demonstration

Roman numbers kata

Demonstration

Roman numbers kata

Behaviour demonstration

Demonstration

Roman numbers kataBehaviour demonstration

Demonstration

Roman numbers kataBehaviour demonstration(good, bad and ugly...)

Demonstration

Roles

Good

Bad

Ugly

RolesBad

“Characteristics people should do less of (but aren’t so much of a problem)...”

Alpha male

Bunny

Rodolfo Valentino

RolesUgly

“Characteristics people should stop immediately”

Monk

Puppet master

Auditor

RolesGood

“Characteristics people should continue/do more of...”

Mentor

Moleskine

Captain

Pairing Workshop

Pairing Workshop

1. Form groups of 3 (navigator, driver + observer)

Pairing Workshop

1. Form groups of 3 (navigator, driver + observer)2. Navigator and driver (secretly) choose a role

Pairing Workshop

1. Form groups of 3 (navigator, driver + observer)2. Navigator and driver (secretly) choose a role3. Navigator and driver make a story using all the words

Pairing Workshop

1. Form groups of 3 (navigator, driver + observer)2. Navigator and driver (secretly) choose a role3. Navigator and driver make a story using all the words 4. Observer observes (5 minutes) and suggests improvements

Pairing Workshop

1. Form groups of 3 (navigator, driver + observer)2. Navigator and driver (secretly) choose a role3. Navigator and driver make a story using all the words 4. Observer observes (5 minutes) and suggests improvements5. After 10 minutes you switch roles

Write a story that includes these words... Round 1

Write a story that includes these words... Round 1

Airplane

ChemicalMinute

Delay

Protect

Cracker

TeachParrot

Round 2Write a story that includes these words...

Round 2

Pink

RuleWar

Tea

Food

Sea

RunningWolf

Write a story that includes these words...

Round 3Write a story that includes these words...

Round 3

Off

RubbishDesert

Visit

Cousin ChristmasKaraoke Morning

Write a story that includes these words...

How to improve

How to improve

Encourage conversation

How to improve

Encourage conversation

Double everything

How to improve

Encourage conversation

Double everything

Introduce post-its

How to improve

Encourage conversation

Double everything

Introduce post-its

Ping-pong or pomodoro

How to improve

Encourage conversation

Double everything

Introduce post-its

Ping-pong or pomodoro

Standard environment

Pairing (well) is a skillPairing (well) is a skill

Why it matters

Skills take time to developSkills take time to develop

Pairing (well) is a skill

Why it matters

Skills take time to develop

Conscious awareness is the first step to being betterSkills take time to develop

Pairing (well) is a skill

Why it matters

Q&A

http://www.thoughtworks.com/current-opportunities We’re hiring!

Ken Fassone @nexusventuri

Pat Kua@patkua