SlideShare a Scribd company logo
pair
programming
twitter : @JonJagger
email : jon@jaggersoft.com
blog : http://jonjagger.blogspot.co.uk/
charity : http://cyber-dojo.org
n
a seldom questioned view of
programming - a view which this
book will spend a great deal of
time questioning. That view is
that programming is an
individual activity...
individual
from... (see slide 4)
if egoless programming is used,
everyone in the group will have the
opportunity to examine the work of
everyone else at some time, thereby
tending to prevent the establishment
of strong hierarchy.
team
from... (see slide 4)
4
Written 1969
Published 1971
Silver Anniversary 1994
Golden Anniversary 2019
longest continuously
in-print book on software
development?
mob
programming
we were doing incremental
development as early as 1957...
where the technique used was,
as far as I can tell,
indistinguishable from XP
http://www.craiglarman.com/wiki/downloads/misc/history-of-iterative-
larman-and-basili-ieee-computer.pdf
Jerry Weinberg
we worked with punch cards
and printouts... with a
turnaround time of a week or so
as we airfreighted decks of
cards from New York to Los
Angeles.
personal email from Jerry
when do
developers
instinctively
pair?
rubber-duck
debugging
https://en.wikipedia.org/wiki/Rubber_duck_debugging
silenttalking
images are representative only
productivity
in my experience,
pair programming is
more productive than dividing the work
between two programmers and then
integrating the results
extreme Programming explained
pairs spent about 15%
more time on the
program than the
individuals*
the resulting code
has about 15%
fewer defects
the pairs consistently
implemented the same
functionality in
fewer lines of code
most of the programmers
enjoyed programming
collaboratively
http://collaboration.csc.ncsu.edu/laurie/Papers/ieeeSoftware.PDF
strengthening
the case for
pair programming
Laurie Williams
Robert Kessler
Ward Cunningham
Ron Jeffries
an experiment by Temple University...
Professor Nosek studied 15 full-time,
experienced programmers working for 45
minutes on a challenging problem, important
to their organization, in their own
environment, and with their own equipment.
Nosek, J. T. (1998). The Case for Collaborative Programming. Communications of the ACM. March 1998: 105-108.
five worked individually, ten worked
collaboratively in five pairs.
Conditions and materials used were
the same for both ... groups.
Nosek, J. T. (1998). The Case for Collaborative Programming. Communications of the ACM. March 1998: 105-108.
all the teams outperformed the
individual programmers, enjoyed the
problem-solving process more, and
had greater confidence in their
solutions... producing better
algorithms and code in less time (40%)
Results statistically significant using two-sided t-test.
if pairing increases
productivity
why is it rare?
pairing is rare
because working
alone is common!
"locking" occurs whenever a
situation creates an
environment favorable for
maintaining that situation...
locking occurs in all sorts of
systems... especially... social
Psychology of Computer Programming
? individual assessments
? different keyboards
? different editors
? table design
? room layout
? number of computers
? tools
...
pair programming works for XP
because it encourages
communication
XP is a communal software
development discipline.
communication
we are all lousy
self evaluators
Switch by Chip and Dan Heath
feedback
programmers admit to
working harder and
smarter on programs
because they do not want
to let their partner down
Pair Programming Illuminated
energy
risk
pairing helps reduce
truck/bus number
(aka the lottery number)
interruptions
pairs are very
resistant to
interruptions
interviewing
teamwork characteristics
cannot be determined
if you interview
one at a time.
The Deming Route to Quality
i felt it was unwise to allow
players to practice by
themselves. Always I wanted
them to be interacting with their
teammates.
Wooden on Leadership
interaction
the pair results were
more consistent...
the individuals varied
more about the mean.
consistency
Pair Programming Illuminated
widespread use of pair
programming involves a
cultural shift in values of the
organization - away from
individual and toward team
recognition and goals.
Pair Programming Illuminated
team
courage
courage is the capacity
to go ahead in spite of
fear, or in spite of pain.
M. Scott Peck
if people program solo they are
more likely to make mistakes,
more likely to overdesign,
more likely to blow off the other
practises, particularly under
pressure
extreme Programming explained
quality
Studies of Independence and
Submission to Group Pressure.
A Minority of One
Against a Unanimous Majority
Solomon Asch
Psychological Monographs, 1956.
7 confederates
1 subject
https://en.wikipedia.org/wiki/Asch_conformity_experiments
18 trials
in trial 1 and trial 2 the
7 confederates and the subject
gave the obviously right answer
in the remaining 16 trials the
7 confederates gave the same
obviously wrong answer 12 times
75% of subjects gave the incorrect
answer in at least 1 trial
the subject conformed to the
incorrect answer in all 12 trials
36% of the time
Studies of Independence and
Submission to Group Pressure.
A Minority of Two
Against a Majority
Solomon Asch
Psychological Monographs, 1956.
presence of 1 true confederate
decreased subjects conformity to the
incorrect answer
by 75%
thanks for listening
twitter : @JonJagger
email : jon@jaggersoft.com
blog : http://jonjagger.blogspot.co.uk/
charity : http://cyber-dojo.org
n
1969 1990 2004
NorDevCon 2016 pair programming

More Related Content

PDF
Pair programming
PDF
Software Development Practices Patterns: from Pair to Mob Programming
PDF
Mob Programming: the State of the Art and 3 Case Studies of Open Source Software
PDF
Pair programming demystified
PDF
Pair Programming, TDD and other impractical things
PDF
Introduction to Mob Programming
ODP
Dark Matter, Public Health, and Scientific Computing
ODP
How to Become Rich, Famous, and Popular While Using Your Programming Skills t...
Pair programming
Software Development Practices Patterns: from Pair to Mob Programming
Mob Programming: the State of the Art and 3 Case Studies of Open Source Software
Pair programming demystified
Pair Programming, TDD and other impractical things
Introduction to Mob Programming
Dark Matter, Public Health, and Scientific Computing
How to Become Rich, Famous, and Popular While Using Your Programming Skills t...

What's hot (9)

PPT
What We've Learned From Building Basie
PPTX
10x programmers - What lies beneath
PDF
GeneralAssemb.ly Summer Program: Tech from the Ground Up
PDF
Big guns for small guys (reloaded)
PPTX
Fine tune and deploy Hugging Face NLP models
PDF
HackYale 0-60 in Startup Tech
PPTX
30% faster coder on-boarding when you have a code cookbook
PDF
Pair programming 2 > 1 + 1
PDF
Less Process, more Guidance with a Team Playbook
What We've Learned From Building Basie
10x programmers - What lies beneath
GeneralAssemb.ly Summer Program: Tech from the Ground Up
Big guns for small guys (reloaded)
Fine tune and deploy Hugging Face NLP models
HackYale 0-60 in Startup Tech
30% faster coder on-boarding when you have a code cookbook
Pair programming 2 > 1 + 1
Less Process, more Guidance with a Team Playbook
Ad

Viewers also liked (17)

PPTX
1 tutoria expo tic ple (1)
PDF
Wann soll ich mocken?
PPT
Diapo chap 5 mobilité_sociale_2015
PDF
Dbase (interaktif-command)
PDF
Fiche SCoT 1 - Présentation
PDF
Le numerique comme milieu d'organisation des savoirs et objet d'étude
PDF
Igniting Audience Measurement at Time Warner Cable
PDF
cours
PPTX
Apple - Steve Jobs
PPT
2015: Post Stroke Fatigue - Why Live With It?-Giap
PPT
2016: Geriatric Nephrology - Beben
PPTX
2016: Falls in Older Adults Risk Assessment and Interventions-Shumaker
PPTX
Autism: The Challenges and Opportunities
PPTX
NHS 5YFV Vanguards-Birju Bartoli presentation
PPTX
Claire Taylor & Amardeep Gill- The Future of Local Government
PDF
Presentation seminaire 10:05 ppt au laboratoire I3M
PPTX
Creative, Digital and Design Business Briefing - August 2016
1 tutoria expo tic ple (1)
Wann soll ich mocken?
Diapo chap 5 mobilité_sociale_2015
Dbase (interaktif-command)
Fiche SCoT 1 - Présentation
Le numerique comme milieu d'organisation des savoirs et objet d'étude
Igniting Audience Measurement at Time Warner Cable
cours
Apple - Steve Jobs
2015: Post Stroke Fatigue - Why Live With It?-Giap
2016: Geriatric Nephrology - Beben
2016: Falls in Older Adults Risk Assessment and Interventions-Shumaker
Autism: The Challenges and Opportunities
NHS 5YFV Vanguards-Birju Bartoli presentation
Claire Taylor & Amardeep Gill- The Future of Local Government
Presentation seminaire 10:05 ppt au laboratoire I3M
Creative, Digital and Design Business Briefing - August 2016
Ad

Similar to NorDevCon 2016 pair programming (20)

PDF
All I Really Need To Know About Pair Programming I Learned In Kindergarten
PDF
Journal Article Critique “From Common To Uncommon...
PDF
Pair Programming in Theory and Practice By Garrick West
PPTX
Gadgets, Games and Gizmos for Learning: Teach on the Beach
PPT
Presentation Learning Tree
PPTX
Presentation11 091715
PPTX
August 18, 2015 Presentation
PPTX
Cets 2015 glenn path to mastery serious games
PDF
Inclusive Toolkit Activities By Microsoft
PPTX
Instructional Gaming
PDF
The below test includes 10 questions, randomly selected from a large.pdf
PPTX
The 4th New Science
PPT
Liberating Structures for Knowledge Sharing
PDF
The And The Crimes
PDF
Supporting Developers’ Coordination in The IDE #cscw2015
PDF
Busting Learning Myths: Fact of Fishy
PPT
Skip Cole, USIP, techatstate
PDF
The Business Case for Game Based Learning
PPT
NursingInnovations in Learning Technology and What it Means to Nursing Education
PDF
Cognitive Computing for Tacit Knowledge1
All I Really Need To Know About Pair Programming I Learned In Kindergarten
Journal Article Critique “From Common To Uncommon...
Pair Programming in Theory and Practice By Garrick West
Gadgets, Games and Gizmos for Learning: Teach on the Beach
Presentation Learning Tree
Presentation11 091715
August 18, 2015 Presentation
Cets 2015 glenn path to mastery serious games
Inclusive Toolkit Activities By Microsoft
Instructional Gaming
The below test includes 10 questions, randomly selected from a large.pdf
The 4th New Science
Liberating Structures for Knowledge Sharing
The And The Crimes
Supporting Developers’ Coordination in The IDE #cscw2015
Busting Learning Myths: Fact of Fishy
Skip Cole, USIP, techatstate
The Business Case for Game Based Learning
NursingInnovations in Learning Technology and What it Means to Nursing Education
Cognitive Computing for Tacit Knowledge1

More from Jon Jagger (12)

PDF
Design and Evolution of cyber-dojo
PDF
Oslo Day of Docker Opening Keynote
PDF
Cyber-dojo: How to perform deliberate practice
PDF
Atlantec - tdd lessons
PDF
lessons from testing
PDF
Lessons from Testing
PDF
Systems thinking
PDF
Kanban Push-me Pull-you
PDF
Larry and Jen do Roman Numerals in C++
PDF
Some stuff about C++ and development
PDF
Systems Thinking
KEY
An Agile A to Z
Design and Evolution of cyber-dojo
Oslo Day of Docker Opening Keynote
Cyber-dojo: How to perform deliberate practice
Atlantec - tdd lessons
lessons from testing
Lessons from Testing
Systems thinking
Kanban Push-me Pull-you
Larry and Jen do Roman Numerals in C++
Some stuff about C++ and development
Systems Thinking
An Agile A to Z

Recently uploaded (20)

PDF
EaseUS PDF Editor Pro 6.2.0.2 Crack with License Key 2025
PDF
Types of Token_ From Utility to Security.pdf
PDF
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
PPTX
GSA Content Generator Crack (2025 Latest)
PPTX
"Secure File Sharing Solutions on AWS".pptx
PPTX
Patient Appointment Booking in Odoo with online payment
PDF
Multiverse AI Review 2025: Access All TOP AI Model-Versions!
PPTX
Weekly report ppt - harsh dattuprasad patel.pptx
PDF
AI Guide for Business Growth - Arna Softech
PPTX
Computer Software and OS of computer science of grade 11.pptx
PDF
Salesforce Agentforce AI Implementation.pdf
PPTX
assetexplorer- product-overview - presentation
PPTX
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
PPTX
Introduction to Windows Operating System
DOCX
Modern SharePoint Intranet Templates That Boost Employee Engagement in 2025.docx
PDF
DuckDuckGo Private Browser Premium APK for Android Crack Latest 2025
PPTX
Tech Workshop Escape Room Tech Workshop
PPTX
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
PDF
Autodesk AutoCAD Crack Free Download 2025
PDF
Cost to Outsource Software Development in 2025
EaseUS PDF Editor Pro 6.2.0.2 Crack with License Key 2025
Types of Token_ From Utility to Security.pdf
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
GSA Content Generator Crack (2025 Latest)
"Secure File Sharing Solutions on AWS".pptx
Patient Appointment Booking in Odoo with online payment
Multiverse AI Review 2025: Access All TOP AI Model-Versions!
Weekly report ppt - harsh dattuprasad patel.pptx
AI Guide for Business Growth - Arna Softech
Computer Software and OS of computer science of grade 11.pptx
Salesforce Agentforce AI Implementation.pdf
assetexplorer- product-overview - presentation
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
Introduction to Windows Operating System
Modern SharePoint Intranet Templates That Boost Employee Engagement in 2025.docx
DuckDuckGo Private Browser Premium APK for Android Crack Latest 2025
Tech Workshop Escape Room Tech Workshop
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
Autodesk AutoCAD Crack Free Download 2025
Cost to Outsource Software Development in 2025

NorDevCon 2016 pair programming

  • 1. pair programming twitter : @JonJagger email : jon@jaggersoft.com blog : http://jonjagger.blogspot.co.uk/ charity : http://cyber-dojo.org n
  • 2. a seldom questioned view of programming - a view which this book will spend a great deal of time questioning. That view is that programming is an individual activity... individual from... (see slide 4)
  • 3. if egoless programming is used, everyone in the group will have the opportunity to examine the work of everyone else at some time, thereby tending to prevent the establishment of strong hierarchy. team from... (see slide 4)
  • 4. 4 Written 1969 Published 1971 Silver Anniversary 1994 Golden Anniversary 2019 longest continuously in-print book on software development?
  • 6. we were doing incremental development as early as 1957... where the technique used was, as far as I can tell, indistinguishable from XP http://www.craiglarman.com/wiki/downloads/misc/history-of-iterative- larman-and-basili-ieee-computer.pdf Jerry Weinberg
  • 7. we worked with punch cards and printouts... with a turnaround time of a week or so as we airfreighted decks of cards from New York to Los Angeles. personal email from Jerry
  • 11. productivity in my experience, pair programming is more productive than dividing the work between two programmers and then integrating the results extreme Programming explained
  • 12. pairs spent about 15% more time on the program than the individuals* the resulting code has about 15% fewer defects the pairs consistently implemented the same functionality in fewer lines of code most of the programmers enjoyed programming collaboratively http://collaboration.csc.ncsu.edu/laurie/Papers/ieeeSoftware.PDF strengthening the case for pair programming Laurie Williams Robert Kessler Ward Cunningham Ron Jeffries
  • 13. an experiment by Temple University... Professor Nosek studied 15 full-time, experienced programmers working for 45 minutes on a challenging problem, important to their organization, in their own environment, and with their own equipment. Nosek, J. T. (1998). The Case for Collaborative Programming. Communications of the ACM. March 1998: 105-108.
  • 14. five worked individually, ten worked collaboratively in five pairs. Conditions and materials used were the same for both ... groups. Nosek, J. T. (1998). The Case for Collaborative Programming. Communications of the ACM. March 1998: 105-108.
  • 15. all the teams outperformed the individual programmers, enjoyed the problem-solving process more, and had greater confidence in their solutions... producing better algorithms and code in less time (40%) Results statistically significant using two-sided t-test.
  • 17. pairing is rare because working alone is common!
  • 18. "locking" occurs whenever a situation creates an environment favorable for maintaining that situation... locking occurs in all sorts of systems... especially... social Psychology of Computer Programming
  • 19. ? individual assessments ? different keyboards ? different editors ? table design ? room layout ? number of computers ? tools ...
  • 20. pair programming works for XP because it encourages communication XP is a communal software development discipline. communication
  • 21. we are all lousy self evaluators Switch by Chip and Dan Heath feedback
  • 22. programmers admit to working harder and smarter on programs because they do not want to let their partner down Pair Programming Illuminated energy
  • 23. risk pairing helps reduce truck/bus number (aka the lottery number)
  • 25. interviewing teamwork characteristics cannot be determined if you interview one at a time. The Deming Route to Quality
  • 26. i felt it was unwise to allow players to practice by themselves. Always I wanted them to be interacting with their teammates. Wooden on Leadership interaction
  • 27. the pair results were more consistent... the individuals varied more about the mean. consistency Pair Programming Illuminated
  • 28. widespread use of pair programming involves a cultural shift in values of the organization - away from individual and toward team recognition and goals. Pair Programming Illuminated team
  • 29. courage courage is the capacity to go ahead in spite of fear, or in spite of pain. M. Scott Peck
  • 30. if people program solo they are more likely to make mistakes, more likely to overdesign, more likely to blow off the other practises, particularly under pressure extreme Programming explained quality
  • 31. Studies of Independence and Submission to Group Pressure. A Minority of One Against a Unanimous Majority Solomon Asch Psychological Monographs, 1956.
  • 33. 18 trials in trial 1 and trial 2 the 7 confederates and the subject gave the obviously right answer in the remaining 16 trials the 7 confederates gave the same obviously wrong answer 12 times
  • 34. 75% of subjects gave the incorrect answer in at least 1 trial the subject conformed to the incorrect answer in all 12 trials 36% of the time
  • 35. Studies of Independence and Submission to Group Pressure. A Minority of Two Against a Majority Solomon Asch Psychological Monographs, 1956.
  • 36. presence of 1 true confederate decreased subjects conformity to the incorrect answer by 75%
  • 37. thanks for listening twitter : @JonJagger email : jon@jaggersoft.com blog : http://jonjagger.blogspot.co.uk/ charity : http://cyber-dojo.org n