Upgrade to Pro — share decks privately, control downloads, hide ads and more …

pair_programming_irina_XP2016.pdf

Irina Tsyganok
May 26, 2016
65

 pair_programming_irina_XP2016.pdf

Irina Tsyganok

May 26, 2016
Tweet

Transcript

  1. Pair-Programming From a Beginner’s
    Perspective
    @irinatsyganok

    View Slide

  2. Test Automation
    User Experience
    Java Development
    Web Development

    View Slide

  3. Compatibility
    Emotional
    Cultural
    Psychological

    View Slide

  4. Frustrations
    To pair or not to pair?

    View Slide

  5. Frustrations
    To pair or not to pair?
    Availability

    View Slide

  6. Frustrations
    To pair or not to pair?
    Availability
    Deadlines

    View Slide

  7. Frustrations
    To pair or not to pair?
    Availability
    Deadlines
    Sharing is caring

    View Slide

  8. To pair or not to pair?
    Availability
    Deadlines
    Sharing is caring
    Junior mind readers
    Frustrations

    View Slide

  9. Engagement

    View Slide

  10. Personas
    Junior Developer
    Inexperienced
    Lacking confidence
    Hesitant to make
    suggestions
    Minimal knowledge
    of codebase
    Senior Developer
    Expert
    Confident
    Happily makes
    suggestions
    Expert knowledge
    of codebase
    Focus of learning
    Codebase, terminology,
    architecture, IDE
    shortcuts
    Best practices, trends,
    performance

    View Slide

  11. Junior
    The Needs

    View Slide

  12. Junior
    Permission to make mistakes
    The Needs

    View Slide

  13. Junior
    Permission to make mistakes
    Encouragement to experiment
    The Needs

    View Slide

  14. Junior
    Permission to make mistakes
    Encouragement to experiment
    Constructive feedback
    The Needs

    View Slide

  15. Junior
    Permission to make mistakes
    Encouragement to experiment
    Constructive feedback
    Friendly disposition
    The Needs

    View Slide

  16. Junior
    Permission to make mistakes
    Encouragement to experiment
    Constructive feedback
    Friendly disposition
    Active engagement
    The Needs

    View Slide

  17. Junior Senior
    Permission to make mistakes
    Encouragement to experiment
    Constructive feedback
    Friendly disposition
    Active engagement
    The Needs

    View Slide

  18. Junior Senior
    Permission to make mistakes Permission to make mistakes
    Encouragement to experiment Encouragement to experiment
    Constructive feedback Constructive feedback
    Friendly disposition Friendly disposition
    Active engagement Active engagement
    The Needs

    View Slide

  19. The pain points - Junior
    I am slowing him down
    Sometimes I do not understand what he is saying
    I ask questions all the time

    View Slide

  20. The pain points - Senior
    He is slowing me down
    We discuss a line of code for 10 minutes
    Can I just type in and move on?
    This seems like a one-way conversation
    What kind of pairing is this?

    View Slide

  21. Junior + Senior != pairing?
    “A teacher-student relationship feels very different from two people working
    together as equals even if one has significantly more experience...
    [extremeprogramming.org]

    View Slide

  22. Pairing Patterns
    Leader/Adopter

    View Slide

  23. Social
    Work environment filters social interactions through a
    prism of organisational culture

    View Slide

  24. Can anyone be a leader?
    Acknowledgement

    View Slide

  25. Acknowledgement
    Evaluation
    Can anyone be a leader?

    View Slide

  26. Acknowledgement
    Evaluation
    Consent
    Can anyone be a leader?

    View Slide

  27. No pain no gain?
    + Collaboration at the centre of company culture
    + Knowledge transfer
    + Improved general pairing and people skills

    View Slide

  28. Our strategies
    Swapping pairs
    Agreeing on the WIP
    Comfortable working environment
    Time apart
    Synchronised breaks
    Start to end story ownership
    Small talk

    View Slide

  29. Final Thoughts
    ..Our willingness to
    work together could be the juice that will push technology forward. We will
    all have to master pair-programming (not just mentoring) to make this work.
    It will be awesome.
    Best regards. -- Ward
    [Ward Cunningham on Pair Programming to the pdxruby mailing list. Thu, 29
    Nov 2012]

    View Slide