Download presentation
Presentation is loading. Please wait.
Published byJody Martin Modified over 9 years ago
1
Remote Pair Programming Agile 2013 Johannes Brodwall Exilesoft Chief scientist @jhannes Guest starring: Niruka Ruhunage
2
Can a distributed team still Communicate closely?
3
This talk is for you if you…
4
Want to work with remote colleagues
5
Want to practice pair programming (more)
6
Want to see some TDD coding
7
(And you’re not scared by coding)
8
After this talk Find a remote mentor Pair with your remote team Run a distributed workshop
9
1.Why 2.How 3.Demonstration 4.Discussion: Distributed agile
10
Why global teams
11
There are not enough devs here
12
(for most values of “here”)
13
(There are not enough devs here) But there are more “over there”
14
But
15
Communication cost increases with distance
16
Luckily
17
Communication cost increases with distance
18
Everybody knows that: Communication cost increases with distance
19
Which would you prefer:
20
A.Team sits onsite, but… uses headphones all day speak to customer monthly
21
Which would you prefer: A.Team sits onsite, but… uses headphones all day speak to customer monthly B.Team 1/3 around the world Pair programs with local devs Speak with customer daily
22
Distribution change communication
23
Huge email discussions
24
Large meetings
25
Small group discussions
26
Structured collaboration
27
Practical remote programming
28
Don’t send each keystroke across the world and back
29
We want a solution that is not super-expensive
30
Voice sharing Screen sharing File sharing
31
Voice sharing (Skype) Screen sharing (GoToMeeting) File sharing (Dropbox)
32
Ping pong
33
Ingredient #1: Pair programming
36
Ingredient #2: Test driven development
37
Failing test Write code Failing test Write code Failing test
38
Ingredient #3: Refactoring
39
Failing test Write code Failing test Write code Failing test Refactor code and tests
40
Put together
41
Failing test Write code Failing test Write code Failing test
42
Write code Failing test Write code Failing test Refactor code and tests
43
Failing test Write code Failing test Write code Failing test Refactor code and tests
44
Demonstration
45
What to watch for?
46
Collaboration Problems and approaches
47
Say hello to my team!
48
Remember: Suboptimal network
49
Please: Talk about what you see to the person next to you (whisper) Tweet to @jhannes
50
Demonstration (Guest starring Niruka Ruhunage)
51
Kata: Bank OCR
52
_ _ _ _ _ _ _ _ _ |_||_||_||_||_||_||_||_||_| |_||_||_||_||_||_||_||_||_| => 888888888 AMB [888886888, 888888988, 888888880]
53
Discussion
54
Benefits (Guest starring Niruka Ruhunage)
55
Domain knowledge Also involving the quiet ones Grow technically
56
What did you see?
57
Dealing with time-lag
58
Helping each other
59
Communicating ideas
60
Usage
61
Dev extension Training Job interviews
62
Dev extension
65
Training You just saw it…
66
Interviews Reveals real skills Motivating: fun and educational => Good PR Pre-start training
67
Distributed workshops
68
First week
69
MondayTuesdayWednesdayThursdayFriday Goal, Stakeholders Dev baseline Review usage Define progress, Stories Wrap up docs Dev baseline Lunch Look at what’s going on today Stakeholder, Usage Usage review, Context, Domain, Deployment Refine models Review, Retrospective
73
1.Teams of 3 (distributed) 2.Create goal statements – 10 minutes 3.Consensus goal
74
For some stakeholder Who has a goal The system/activity/increment Is a type of system/activity Which gives a capability/feature. Unlike most relevant alternative This has a distinguishing advantage.
75
For a busy sales officer Who wants to find good prospects to contact when in a city The CRM customer radar Is a mobile map application Which displays nearby customers on a map. Unlike searching for prospects in CRM portal This provides the information at a glance.
76
What do we get from this?
77
Small groups Clear task Cross boundaries
78
Distributed retrospective
79
Example agenda
80
1.Defining word 2.Groups discussion: achievements and challenges 3.Whole team discuss where are we 4.Round the table suggest actions 5.Hopes for the future
81
Lessons
82
Small groups Clear task Eye contact doesn’t work
83
Decreasing the distance
84
How do you decrease the distance in your team?
85
Conclusions
86
More distribution => more structured communication
87
Dropbox, Skype, GoToMeeting
88
It’s a small world, after all
89
Find a remote pair prog partner
90
Have fun
91
Grab hold of me in the hallway for a pair programming session
92
jbr@exilesoft.com nru@exilesoft.com http://johannesbrodwall.com http://exilesoft.com http://twitter.com/jhannes Thank you
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.