SlideShare une entreprise Scribd logo
1  sur  30
PAIR PROGRAMMING
BY SANDEEP P R
ABOUT ME
 STARTED MY CAREER IN 2003 IN .NET ESPECIALLY ASP.NET
TECHNOLOGIES
 WORKING WITH INDECOMM FOR NEARLY 4 YEARS
 ASP.NET, JAVASCRIPT (OOPS), EXTJS, ASP.NET MVC, ASP.NET
WEBAPI ETC.
 FAN OF DESIGN PATTERNS
 BDD (BEHAVIOR DRIVEN DEVELOPMENT) AND TDD (TEST
DRIVEN DEVELOPMENT)
 AGILE (SRUM AND EXTREME PROGRAMMING [XP])
 OTHER
PAIR PROGRAMMING
AGENDA
 WHAT IS PAIR PROGRAMMING?
 PARTICIPANTS IN PAIR PROGRAMMING
 PAIRING VARIATIONS
 MYTHS
 GUIDELINES
 ADVANTAGES
 PROBLEMS
 TIT BITS
 QUESTIONS
WHO IS A PROGRAMMER?
“LONELY MACHO
WARRIORS, BATTLING
AGAINST A SEA OF BITS
AND BYTES.”Professor Matthias Felleisen
WHEN THINGS GO RIGHT?
WE ARE CHILDISHLY
DELIGHTED WITH WHAT
WE HAVE CREATED
WHEN THINGS GO WRONG?
“BANG-YOUR-HEAD-AGAINST-
THE-WALL”
“A TECHNIQUE THAT CAN RADICALLY
INCREASE THE NUMBER OF TIME THINGS
GO RIGHT AND DECREASE THE NUMBER
OF TIMES THINGS GO WRONG”
THIS IS NOT PAIR PROGRAMMING
PAIR PROGRAMMING
WIKI DEFINITION
PAIR PROGRAMMING IS AN AGILE
SOFTWARE DEVELOPMENT TECHNIQUE
IN WHICH TWO PROGRAMMERS WORK
TOGETHER AT ONE WORKSTATION.
ONE, THE DRIVER, WRITES CODE WHILE
THE OTHER, THE OBSERVER, REVIEWS
EACH LINE OF CODE AS IT IS TYPED IN.
THE TWO PROGRAMMERS SWITCH
ROLES FREQUENTLY.
WHAT PAIR PROGRAMMING MEANS?
 PAIR DESIGN
 PAIR DEBUGGING
 PAIR TESTING
 PAIR CODING
DRIVER
 FOCUSES ON THE CODE
AT HAND
 SYNTAX
 SEMANTICS
 ALGORITHM
OBSERVER
 POINTER OR NAVIGATOR
 KEEPS AN EYE ON TACTICAL AND STRATEGIC ERRORS
 TACTICAL ERROR: TYPOS, SYNTACTICAL ERRORS, CALLING THE
WRONG METHOD ETC
 STRATEGIC ERROR: IMPLEMENTATION IS MEETING THE GOAL OR
NOT
 SANITY TESTING THE CODE
 THINKING THROUGH PROBLEMS
 WHERE TO GO NEXT
 KEEP THE DRIVER ON COURSE
PAIRING VARIATIONS
 EXPERT-EXPERT
 EXPERT-NOVICE
 NOVICE-NOVICE
EXPERT-EXPERT PAIRING
 TO SOLVE COMPLEX PROBLEMS
 CAN GIVE GREAT RESULTS
 LESS TIME SPEND ON EXPLAINING
THINGS
 NO NEW WAYS TO SOLVE THE
PROBLEMS
 UNLIKELY TO QUESTION ESTABLISHED
PRACTICES
 EXPERTS HAVE BIG EGO, “DO IT MY WAY
EXPERT-NOVICE
 FOR MENTORING A NOVICE
 GETTING EASY JOB DONE
 CAN HAVE NEW SOLUTION TO A
PROBLEM
 NEW PEOPLE CAN HELP OUT
ALMOST IMMEDIATELY
 EXPERT HAS TO TAKE OFF “I
KNOW EVERYTHING” MASK
 CREATE CONDUCIVE
ENVIRONMENT
NOVICE-NOVICE
 MOSTLY HAPPENS IN
COLLEGES
 MENTOR HAS BE ASSIGNED
 EASY WAY TO LEARN THINGS
 PAIRS ARE MORE LIKELY TO ASK
QUESTION THAN INDIVIDUAL
MYTHS
 IT WILL DOUBLE THE WORKLOAD WITH TWO DOING THE WORK ONE
CAN DO
 I’LL NEVER GET TO WORK ALONE. I COULDN’T STAND THAT!
 IT WILL WORK WELL ONLY WITH THE RIGHT PARTNER
 PAIR PROGRAMMING IS GOOD FOR TRAINING. BUT, ONCE YOU
KNOW WHAT YOU’RE DOING, IT IS A WASTE OF TIME
 I’LL NEVER GET CREDIT FOR DOING ANYTHING. I’LL HAVE TO
SHARE ALL THE RECOGNITION WITH MY PARTNER
 THE ONLY TIME I EVER GET ANY REAL WORK DONE IS WHEN I’M
ALONE. NOW, I’LL NEVER GET ANYTHING
DONE! PAIR PROGRAMMING WOULD DRIVE ME CRAZY
GUIDELINES
 MIN OF 17INCH MONITOR AND
COMFORTABLE SEATING
 TALK A LOT
 NO POINTING ON THE SCREEN WITH
FINGER (NAVIGATOR)
 PAIR ROTATION
 GIVE THE DRIVER NANO SECONDS TO FIND
AND CORRECT HIS/HER OWN MISTAKES
 INTRA AND INTERPAIR COMMUNICATION
 DEVELOPMENT ENVIRONMENT
GUIDELINES CONTD…
 MAKE USE OF TDD
 PRACTICE ACTIVE LISTENING
 NOISE CONSIDERATION
 IF YOU PARTNER IS NOT LISTENING, JUST WALK AWAY
 IF YOU DON’T UNDERSTAND WHAT YOUR PARTNER IS DOING,
THEN STOP AND ASK. STILL YOU DON’T UNDERSTAND , ASK
AGAIN, ASK AGAIN ASK AGAIN….
 TAKE ENOUGH SHOWER; EAT LOTS OF BREATH MINTS
ADVANTAGES
 INSTANT CODE REVIEW
 KNOWLEDGE SHARE
 REDUCES THE TRAINING COST
 EXCELLENT TOOL TO BREAK COMMUNICATION BARRIERS
BETWEEN TEAMMATES
With Pair Programming Without Pair Programming
Assimilation Time (work days) 18 40
Mentoring Time (%) 26 36
Training Effort (work days) 15 37
PROBLEMS, PROBLEMS AND LOT MORE PROBLEMS
 DEPENDENCY
 SCHEDULING
 THE EVER POPULAR EXPERT
 COLOCATION
 NOISE AND FACILITY CONSIDERATION
 CONCENTRATION
 DISAGREEMENT
 OVERCONFIDENCE
 RUSHING
 SKILL IMBALANCE
 SIMPLY NOT FOR EVERYONE
TIT BITS
MICROSOFT RESEARCH BY ANDREW BEGEL & NACHIAPPAN
NAGAPPAN
MICROSOFT RESEARCH BY ANDREW BEGEL & NACHIAPPAN NAGAPPAN
CONT…
ALISTAIR COCKBURN & LAURIE WILLIAMS
THE COSTS AND BENEFITS OF PAIR PROGRAMMING
ALISTAIR COCKBURN & LAURIE WILLIAMS
CONCLUSION
• SUPPORT FROM TEAM/MENTOR/LEADER/COACH AND OF
COURSE FROM THE MANGER
• 20YEARS OF DATA FOR BENEFITS OF REVIEW
• PROGRAMMERS AVOID REVIEW LIKE PLAGUE
• PROGRAMMERS ARE STRONG BELIEVERS THAT THEY CAN
ACHIEVE MORE BY GOING SOLO
• COLLECT AND DISSEMINATE INFORMATION/METRICS TO THE
TEAM
• MANAGEMENT BY WALKING AROUND
RESEARCH LINKS
• HTTP://RESEARCH.MICROSOFT.COM/PUBS/75108/ESEM-BEGEL-
2008.PDF
• HTTP://WWW.CS.POMONA.EDU/CLASSES/CS121/SUPP/WILLIAMS_PR
PGM.PDF
• HTTP://WWW.SOBERIT.HUT.FI/~JVANHANE/PUBS/LICTHESIS_VANHAN
EN.PDF
• HTTP://CITESEERX.IST.PSU.EDU/VIEWDOC/DOWNLOAD?DOI=10.1.1.2
58.7427&REP=REP1&TYPE=PDF
• HTTP://AGILE.VTT.FI/DOCS/PUBLICATIONS/2005/2005_MULTIPLE_CAS
E_STUDY_PAIR_PROGRAMMING.PDF
WAYS TO REACH ME
• SANDEEP.R@ACCELRYS.COM
• SANDEEP.R@INDECOMM.NET
• HTTPS://WWW.LINKEDIN.COM/IN/SANDEEPPR
• HTTPS://TWITTER.COM/SNDPPR
Questions???

Contenu connexe

Similaire à Pair programming

Prototyping approach and platforms
Prototyping approach and platforms Prototyping approach and platforms
Prototyping approach and platforms Filippo Scorza
 
Strategies for Complex Skill Development
Strategies for Complex Skill DevelopmentStrategies for Complex Skill Development
Strategies for Complex Skill DevelopmentJulie Dirksen
 
Next Level Collaboration: The Future of Content and Design by Rebekah Cancino...
Next Level Collaboration: The Future of Content and Design by Rebekah Cancino...Next Level Collaboration: The Future of Content and Design by Rebekah Cancino...
Next Level Collaboration: The Future of Content and Design by Rebekah Cancino...Blend Interactive
 
Design Thinking - NYU Ambition Conference
Design Thinking - NYU Ambition ConferenceDesign Thinking - NYU Ambition Conference
Design Thinking - NYU Ambition ConferenceJeff Wenzinger
 
Copy of CRISPR_TEMPLATE, ahkhfakjfkahrabaf.pptx
Copy of CRISPR_TEMPLATE, ahkhfakjfkahrabaf.pptxCopy of CRISPR_TEMPLATE, ahkhfakjfkahrabaf.pptx
Copy of CRISPR_TEMPLATE, ahkhfakjfkahrabaf.pptxHarshVardhan588
 
Ready to be a Design Thinking Supa' Star?!
Ready to be a Design Thinking Supa' Star?!Ready to be a Design Thinking Supa' Star?!
Ready to be a Design Thinking Supa' Star?!Dr. Melissa Sassi
 
Instructional Design Today: What We Really Need to Know as Practitioners, Res...
Instructional Design Today: What We Really Need to Know as Practitioners, Res...Instructional Design Today: What We Really Need to Know as Practitioners, Res...
Instructional Design Today: What We Really Need to Know as Practitioners, Res...Karl Kapp
 
About Analysis and Design
About Analysis and DesignAbout Analysis and Design
About Analysis and DesignAlison Pope
 
Pausefest: Solve your own damn problem
Pausefest: Solve your own damn problemPausefest: Solve your own damn problem
Pausefest: Solve your own damn problemMike Ojo
 
Session 2 into to qualitative research intro
Session 2   into to qualitative research introSession 2   into to qualitative research intro
Session 2 into to qualitative research introAngela Ferrara
 
Emerging Skills for L&D to Enable the Future of Work
Emerging Skills for L&D to Enable the Future of WorkEmerging Skills for L&D to Enable the Future of Work
Emerging Skills for L&D to Enable the Future of Workarun pradhan
 
Blind faith and best practices mike behnke @localpcguy
Blind faith and best practices   mike behnke   @localpcguyBlind faith and best practices   mike behnke   @localpcguy
Blind faith and best practices mike behnke @localpcguyMike Behnke
 
Why Methods Trump Methodology
Why Methods Trump MethodologyWhy Methods Trump Methodology
Why Methods Trump MethodologyJess McMullin
 
How to focus - design your new app in 60 minutes!
How to focus - design your new app in 60 minutes!How to focus - design your new app in 60 minutes!
How to focus - design your new app in 60 minutes!Zach Pousman
 
Vt Overview Iab Cpres 92011
Vt Overview Iab Cpres 92011Vt Overview Iab Cpres 92011
Vt Overview Iab Cpres 92011mark_allen
 
YOUNG 2016 Professione startupper: come fare del digitale la tua impresa
YOUNG 2016 Professione startupper: come fare del digitale la tua impresa YOUNG 2016 Professione startupper: come fare del digitale la tua impresa
YOUNG 2016 Professione startupper: come fare del digitale la tua impresa Andrea Vaccarella
 
Design Thinking Your Life
Design Thinking Your LifeDesign Thinking Your Life
Design Thinking Your LifeJochen Guertler
 

Similaire à Pair programming (20)

Prototyping approach and platforms
Prototyping approach and platforms Prototyping approach and platforms
Prototyping approach and platforms
 
Strategies for Complex Skill Development
Strategies for Complex Skill DevelopmentStrategies for Complex Skill Development
Strategies for Complex Skill Development
 
Next Level Collaboration: The Future of Content and Design by Rebekah Cancino...
Next Level Collaboration: The Future of Content and Design by Rebekah Cancino...Next Level Collaboration: The Future of Content and Design by Rebekah Cancino...
Next Level Collaboration: The Future of Content and Design by Rebekah Cancino...
 
Design Thinking - NYU Ambition Conference
Design Thinking - NYU Ambition ConferenceDesign Thinking - NYU Ambition Conference
Design Thinking - NYU Ambition Conference
 
B D D Intro
B D D  IntroB D D  Intro
B D D Intro
 
Copy of CRISPR_TEMPLATE, ahkhfakjfkahrabaf.pptx
Copy of CRISPR_TEMPLATE, ahkhfakjfkahrabaf.pptxCopy of CRISPR_TEMPLATE, ahkhfakjfkahrabaf.pptx
Copy of CRISPR_TEMPLATE, ahkhfakjfkahrabaf.pptx
 
Design Sprints at Scale
Design Sprints at ScaleDesign Sprints at Scale
Design Sprints at Scale
 
Ready to be a Design Thinking Supa' Star?!
Ready to be a Design Thinking Supa' Star?!Ready to be a Design Thinking Supa' Star?!
Ready to be a Design Thinking Supa' Star?!
 
Instructional Design Today: What We Really Need to Know as Practitioners, Res...
Instructional Design Today: What We Really Need to Know as Practitioners, Res...Instructional Design Today: What We Really Need to Know as Practitioners, Res...
Instructional Design Today: What We Really Need to Know as Practitioners, Res...
 
About Analysis and Design
About Analysis and DesignAbout Analysis and Design
About Analysis and Design
 
Pausefest: Solve your own damn problem
Pausefest: Solve your own damn problemPausefest: Solve your own damn problem
Pausefest: Solve your own damn problem
 
Session 2 into to qualitative research intro
Session 2   into to qualitative research introSession 2   into to qualitative research intro
Session 2 into to qualitative research intro
 
Emerging Skills for L&D to Enable the Future of Work
Emerging Skills for L&D to Enable the Future of WorkEmerging Skills for L&D to Enable the Future of Work
Emerging Skills for L&D to Enable the Future of Work
 
Blind faith and best practices mike behnke @localpcguy
Blind faith and best practices   mike behnke   @localpcguyBlind faith and best practices   mike behnke   @localpcguy
Blind faith and best practices mike behnke @localpcguy
 
Why Methods Trump Methodology
Why Methods Trump MethodologyWhy Methods Trump Methodology
Why Methods Trump Methodology
 
How to focus - design your new app in 60 minutes!
How to focus - design your new app in 60 minutes!How to focus - design your new app in 60 minutes!
How to focus - design your new app in 60 minutes!
 
Vt Overview Iab Cpres 92011
Vt Overview Iab Cpres 92011Vt Overview Iab Cpres 92011
Vt Overview Iab Cpres 92011
 
What is DevOps?
What is DevOps?What is DevOps?
What is DevOps?
 
YOUNG 2016 Professione startupper: come fare del digitale la tua impresa
YOUNG 2016 Professione startupper: come fare del digitale la tua impresa YOUNG 2016 Professione startupper: come fare del digitale la tua impresa
YOUNG 2016 Professione startupper: come fare del digitale la tua impresa
 
Design Thinking Your Life
Design Thinking Your LifeDesign Thinking Your Life
Design Thinking Your Life
 

Dernier

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 

Dernier (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

Pair programming

  • 2. ABOUT ME  STARTED MY CAREER IN 2003 IN .NET ESPECIALLY ASP.NET TECHNOLOGIES  WORKING WITH INDECOMM FOR NEARLY 4 YEARS  ASP.NET, JAVASCRIPT (OOPS), EXTJS, ASP.NET MVC, ASP.NET WEBAPI ETC.  FAN OF DESIGN PATTERNS  BDD (BEHAVIOR DRIVEN DEVELOPMENT) AND TDD (TEST DRIVEN DEVELOPMENT)  AGILE (SRUM AND EXTREME PROGRAMMING [XP])  OTHER
  • 4. AGENDA  WHAT IS PAIR PROGRAMMING?  PARTICIPANTS IN PAIR PROGRAMMING  PAIRING VARIATIONS  MYTHS  GUIDELINES  ADVANTAGES  PROBLEMS  TIT BITS  QUESTIONS
  • 5. WHO IS A PROGRAMMER? “LONELY MACHO WARRIORS, BATTLING AGAINST A SEA OF BITS AND BYTES.”Professor Matthias Felleisen
  • 6. WHEN THINGS GO RIGHT? WE ARE CHILDISHLY DELIGHTED WITH WHAT WE HAVE CREATED
  • 7. WHEN THINGS GO WRONG? “BANG-YOUR-HEAD-AGAINST- THE-WALL”
  • 8. “A TECHNIQUE THAT CAN RADICALLY INCREASE THE NUMBER OF TIME THINGS GO RIGHT AND DECREASE THE NUMBER OF TIMES THINGS GO WRONG”
  • 9. THIS IS NOT PAIR PROGRAMMING
  • 10. PAIR PROGRAMMING WIKI DEFINITION PAIR PROGRAMMING IS AN AGILE SOFTWARE DEVELOPMENT TECHNIQUE IN WHICH TWO PROGRAMMERS WORK TOGETHER AT ONE WORKSTATION. ONE, THE DRIVER, WRITES CODE WHILE THE OTHER, THE OBSERVER, REVIEWS EACH LINE OF CODE AS IT IS TYPED IN. THE TWO PROGRAMMERS SWITCH ROLES FREQUENTLY.
  • 11. WHAT PAIR PROGRAMMING MEANS?  PAIR DESIGN  PAIR DEBUGGING  PAIR TESTING  PAIR CODING
  • 12. DRIVER  FOCUSES ON THE CODE AT HAND  SYNTAX  SEMANTICS  ALGORITHM
  • 13. OBSERVER  POINTER OR NAVIGATOR  KEEPS AN EYE ON TACTICAL AND STRATEGIC ERRORS  TACTICAL ERROR: TYPOS, SYNTACTICAL ERRORS, CALLING THE WRONG METHOD ETC  STRATEGIC ERROR: IMPLEMENTATION IS MEETING THE GOAL OR NOT  SANITY TESTING THE CODE  THINKING THROUGH PROBLEMS  WHERE TO GO NEXT  KEEP THE DRIVER ON COURSE
  • 14. PAIRING VARIATIONS  EXPERT-EXPERT  EXPERT-NOVICE  NOVICE-NOVICE
  • 15. EXPERT-EXPERT PAIRING  TO SOLVE COMPLEX PROBLEMS  CAN GIVE GREAT RESULTS  LESS TIME SPEND ON EXPLAINING THINGS  NO NEW WAYS TO SOLVE THE PROBLEMS  UNLIKELY TO QUESTION ESTABLISHED PRACTICES  EXPERTS HAVE BIG EGO, “DO IT MY WAY
  • 16. EXPERT-NOVICE  FOR MENTORING A NOVICE  GETTING EASY JOB DONE  CAN HAVE NEW SOLUTION TO A PROBLEM  NEW PEOPLE CAN HELP OUT ALMOST IMMEDIATELY  EXPERT HAS TO TAKE OFF “I KNOW EVERYTHING” MASK  CREATE CONDUCIVE ENVIRONMENT
  • 17. NOVICE-NOVICE  MOSTLY HAPPENS IN COLLEGES  MENTOR HAS BE ASSIGNED  EASY WAY TO LEARN THINGS  PAIRS ARE MORE LIKELY TO ASK QUESTION THAN INDIVIDUAL
  • 18. MYTHS  IT WILL DOUBLE THE WORKLOAD WITH TWO DOING THE WORK ONE CAN DO  I’LL NEVER GET TO WORK ALONE. I COULDN’T STAND THAT!  IT WILL WORK WELL ONLY WITH THE RIGHT PARTNER  PAIR PROGRAMMING IS GOOD FOR TRAINING. BUT, ONCE YOU KNOW WHAT YOU’RE DOING, IT IS A WASTE OF TIME  I’LL NEVER GET CREDIT FOR DOING ANYTHING. I’LL HAVE TO SHARE ALL THE RECOGNITION WITH MY PARTNER  THE ONLY TIME I EVER GET ANY REAL WORK DONE IS WHEN I’M ALONE. NOW, I’LL NEVER GET ANYTHING DONE! PAIR PROGRAMMING WOULD DRIVE ME CRAZY
  • 19. GUIDELINES  MIN OF 17INCH MONITOR AND COMFORTABLE SEATING  TALK A LOT  NO POINTING ON THE SCREEN WITH FINGER (NAVIGATOR)  PAIR ROTATION  GIVE THE DRIVER NANO SECONDS TO FIND AND CORRECT HIS/HER OWN MISTAKES  INTRA AND INTERPAIR COMMUNICATION  DEVELOPMENT ENVIRONMENT
  • 20. GUIDELINES CONTD…  MAKE USE OF TDD  PRACTICE ACTIVE LISTENING  NOISE CONSIDERATION  IF YOU PARTNER IS NOT LISTENING, JUST WALK AWAY  IF YOU DON’T UNDERSTAND WHAT YOUR PARTNER IS DOING, THEN STOP AND ASK. STILL YOU DON’T UNDERSTAND , ASK AGAIN, ASK AGAIN ASK AGAIN….  TAKE ENOUGH SHOWER; EAT LOTS OF BREATH MINTS
  • 21. ADVANTAGES  INSTANT CODE REVIEW  KNOWLEDGE SHARE  REDUCES THE TRAINING COST  EXCELLENT TOOL TO BREAK COMMUNICATION BARRIERS BETWEEN TEAMMATES With Pair Programming Without Pair Programming Assimilation Time (work days) 18 40 Mentoring Time (%) 26 36 Training Effort (work days) 15 37
  • 22. PROBLEMS, PROBLEMS AND LOT MORE PROBLEMS  DEPENDENCY  SCHEDULING  THE EVER POPULAR EXPERT  COLOCATION  NOISE AND FACILITY CONSIDERATION  CONCENTRATION  DISAGREEMENT  OVERCONFIDENCE  RUSHING  SKILL IMBALANCE  SIMPLY NOT FOR EVERYONE
  • 23. TIT BITS MICROSOFT RESEARCH BY ANDREW BEGEL & NACHIAPPAN NAGAPPAN
  • 24. MICROSOFT RESEARCH BY ANDREW BEGEL & NACHIAPPAN NAGAPPAN CONT…
  • 25. ALISTAIR COCKBURN & LAURIE WILLIAMS THE COSTS AND BENEFITS OF PAIR PROGRAMMING
  • 26. ALISTAIR COCKBURN & LAURIE WILLIAMS
  • 27. CONCLUSION • SUPPORT FROM TEAM/MENTOR/LEADER/COACH AND OF COURSE FROM THE MANGER • 20YEARS OF DATA FOR BENEFITS OF REVIEW • PROGRAMMERS AVOID REVIEW LIKE PLAGUE • PROGRAMMERS ARE STRONG BELIEVERS THAT THEY CAN ACHIEVE MORE BY GOING SOLO • COLLECT AND DISSEMINATE INFORMATION/METRICS TO THE TEAM • MANAGEMENT BY WALKING AROUND
  • 28. RESEARCH LINKS • HTTP://RESEARCH.MICROSOFT.COM/PUBS/75108/ESEM-BEGEL- 2008.PDF • HTTP://WWW.CS.POMONA.EDU/CLASSES/CS121/SUPP/WILLIAMS_PR PGM.PDF • HTTP://WWW.SOBERIT.HUT.FI/~JVANHANE/PUBS/LICTHESIS_VANHAN EN.PDF • HTTP://CITESEERX.IST.PSU.EDU/VIEWDOC/DOWNLOAD?DOI=10.1.1.2 58.7427&REP=REP1&TYPE=PDF • HTTP://AGILE.VTT.FI/DOCS/PUBLICATIONS/2005/2005_MULTIPLE_CAS E_STUDY_PAIR_PROGRAMMING.PDF
  • 29. WAYS TO REACH ME • SANDEEP.R@ACCELRYS.COM • SANDEEP.R@INDECOMM.NET • HTTPS://WWW.LINKEDIN.COM/IN/SANDEEPPR • HTTPS://TWITTER.COM/SNDPPR

Notes de l'éditeur

  1. Get intro from everyoneName, team, technology.
  2. Alistair Cockburn (Humans and Technology, Dell RD)Laurie Williams (University of Utah Computer Science)