Your SlideShare is downloading. ×
Pair programming: Good, bad and ugly
Pair programming: Good, bad and ugly
Pair programming: Good, bad and ugly
Pair programming: Good, bad and ugly
Pair programming: Good, bad and ugly
Pair programming: Good, bad and ugly
Pair programming: Good, bad and ugly
Pair programming: Good, bad and ugly
Pair programming: Good, bad and ugly
Pair programming: Good, bad and ugly
Pair programming: Good, bad and ugly
Pair programming: Good, bad and ugly
Pair programming: Good, bad and ugly
Pair programming: Good, bad and ugly
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Pair programming: Good, bad and ugly

1,282

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,282
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
15
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • One workstation
    Driver –
    Concentrates on just coding
    Navigator –
    Reviews code
    Checks for errors
    Considers overall design
  • simpler design, reduce bugs, more maintainable
    – code base and coding, removes knowledge silo’slogin
  • Think about:
    Possible bugs
    Larger issues
    Ways to simplify the code
    Alternatives
    Are we doing the right thing?
    Wait until the driver has finished the piece of code to bring issues and design up
    Jot down any tasks to discuss when driver has finished typing
  • Studies have shown you can’t navigate (think about larger issues) whilst driving. Two roles exist so it isn’t about one getting a break while the other codes!
  • Pairing is hard!
  • If you are doing pairing right you will be very tired at the end of the day as you will have been very focused all day
  • Transcript

    • 1. Pairing
    • 2. Why Pair? Better code Knowledge transfer / sharing Better morale – fun! Higher productivity Improve communication, learning and cooperation
    • 3. The Good
    • 4. What is good pairing? Drawing out a solution to focus the mind Communicating – talk a lot Being patient and courteous Encouraging and mentoring
    • 5. Good Driving Focus on the task Complete the code Syntax Trust the navigator
    • 6. Good Navigating Review the code Pay total attention Talk not show Think about the bigger picture Think about alternatives Are we doing the right thing?
    • 7. The Bad
    • 8. What is bad pairing? Anti - patterns Navigator dictating – backseat driving! Keyboard hog and keyboard snatching Mentally checking out No collaboration You can’t do both roles It’s not fun!
    • 9. The Ugly
    • 10. Clever code != clean code Complex code is not always clean code It can confuse your pair Steam training Belittling your pair – “Don’t you know that” Arrogant and egotistical
    • 11. Dreyfus Model Novice Advanced Beginner Competent Proficient Expert
    • 12. How to be good…  Define your task and agree on a solution  Rely on each other  Sync up frequently  Celebrate your success – High 5!  Switch roles regularly  Be courteous, respectful and understanding  Talk and listen  Don’t check your email/twitter/facebook etc  Have short regular 5 minute breaks
    • 13. Remember… Pairing is sharing 
    • 14. Questions? Sara Email: sara@sarastephens.com Blog: www.developerdame.com Twitter: @developerdame Rachel Email: rlaycock@thoughtworks.com Blog: www.rachellaycock.com Twitter: @rachellaycock

    ×