Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
W O R K I N G T O G E T H E R
J O S H H I L L
DO NOT DISTURB: MAC & PHONE

SLOW & STEADY

Good evening! It’s a pleasure to...
My first year of
pair programming
full-time
Last summer, I joined a consultancy and started pair programming full-time

No...
😬
When I told people I was going to start pairing full-time they…were bemused

None of my colleagues had ever paired

How ...
"
Has anyone tried pair programming, maybe at a meet up or workshop?

Does anyone pair at work?

Does anyone pair most of ...
O N O U R O W N
PA I R I N G 1 0 1
F L O W
B E N E F I T S
I’d like to talk about:

- working on my own, and the frustrati...
O N O U R O W N
PA I R I N G 1 0 1
F L O W
B E N E F I T S
SLOW & STEADY

Work can be frustrating, and I’ve often wondered...
Old habits
Working on our own is normal

I think it starts at school, where we are taught how to work

School focuses on i...
Meet, separate, review
Until last year, every job I’ve had was the same.

I was given a task, expected to go away and comp...
Marking each other’s work
I think much of the stress I've felt at work has been worrying about how my work will be receive...
Personal gain
We all want to do well

However, our individual goals don't always align

This sets the stage for us to work...
Silos
When we’re working on our own, how much do we collaborate?

It takes effort to share knowledge and skills, so silos e...
Blame 👹
The worst culture of all is the blame game: the terrible politics of hunting down an issue and pointing the finger ...
“Even programmers can be whole
people in the real world. XP is an
opportunity to test yourself, to be
yourself, to realize...
O N O U R O W N
PA I R I N G 1 0 1
F L O W
B E N E F I T S
SLOW & STEADY

Ok, let’s roll back the clock to last summer whe...
Pairing is a different way of working

Pair programming puts you next to someone

Two monitors, two keyboards, two mice—two...
Keystrokes collide
First, there’s the physical challenge

When I jump on the keyboard then our keystrokes collide

When I ...
Methods vary
Second, there's the challenge of variety

Everyone has a their own way

Even a small thing like moving a line...
Ideas contend
Third, there's the challenge of explaining yourself

When it comes to ideas there’s even more scope for cont...
Being kind isn’t easy
Well, it turns out that being kind is really hard work

It may sound obvious, but being kind is cruc...
It’s intense! 😳
This was a new way of working. It was intense.

I’ve been physically exhausted by exercise, but never felt...
When I got home my brain was a white out
O N O U R O W N
PA I R I N G 1 0 1
F L O W
B E N E F I T S
SLOW & STEADY

After a few months pairing started to get easier...
When it’s going well you can achieve a flow state together

Pairing is a skill

Then after pairing for a while it dawned on...
Aikido
I trained in Aikido, a Japanese martial art for six years at school and University

The goal of Aikido is to achiev...
Tori and uke
Like in pair programming we take turns

Tori does the technique; uke receives the technique

Bear in mind mos...
This is me and Tom Tam

We're doing a training exercise

The goal is to hold on

The grip must be soft enough to listen

A...
Make a connection
The aim of pairing is to make a connection

When you lose the connection, then…it’s obvious

You don’t k...
Suspend judgement
Like being uke, I’ve found navigating much harder than driving

But you have to let your pair drive.

Ev...
Appropriate feedback
This connection is at the heart of pairing

When you’re pairing you can get immediate feedback

You c...
Who wins?
I have a confession to make: when I started training, I wanted to win

I wanted to beat people I didn’t like

Ho...
O N O U R O W N
PA I R I N G 1 0 1
F L O W
B E N E F I T S
SLOW & STEADY

Now, you don’t have to achieve flow everyday to b...
Focus
Fewer distractions

Shared mind space

Consistency
Shared context
We rotate pairs regularly so what we learn is shared around the team

Fewer silos of knowledge

Learning an...
Creative variety
We share our skills

More comfortable trying different things

More open to new ideas
Team sport
Pairing aligns individuals towards the team effort

We learn, fail, recover and succeed together

It’s not about...
Not just for work
I’ve been struck by how this has changed my attitude outside the office

When someone is struggling with a...
O N O U R O W N
PA I R I N G 1 0 1
F L O W
B E N E F I T S
Who do you
work with?
Here are some of the great people I’ve worked with this year:

Gagan, Maria, Pavan, Jatin, Alex and Craig

They are kind, ...
🙏
GASHO

Thank you for listening

This is my first talk at LRUG.

LRUG was the first meet up I came to as a new Ruby develop...
J O S H H I L L
@ J A M E S J O S H U A H I L L
Would anyone like to ask a question?

REPEAT QUESTION BEFORE ANSWERING

PL...
Upcoming SlideShare
Loading in …5
×

Working together v2.1 with speaker notes

63 views

Published on

Josh heard about pair programming a few years ago and tried it a few times. Last year, he jumped in and started pairing full-time. Working so closely with clients, colleagues, juniors and seniors was challenging. Now he enjoys pairing more than flying solo and has seen the benefits for himself and his teammates. This talk is about the challenges and benefits of working more closely with one another.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Working together v2.1 with speaker notes

  1. 1. W O R K I N G T O G E T H E R J O S H H I L L DO NOT DISTURB: MAC & PHONE SLOW & STEADY Good evening! It’s a pleasure to be here. And I’d like to talk about pair programming.
  2. 2. My first year of pair programming full-time Last summer, I joined a consultancy and started pair programming full-time Now, it's been a year, and I prefer pairing to flying solo But learning to pair has been a big change for me and it hasn't been easy, so I’d like to talk about some of the ups and downs
  3. 3. 😬 When I told people I was going to start pairing full-time they…were bemused None of my colleagues had ever paired How about you?
  4. 4. " Has anyone tried pair programming, maybe at a meet up or workshop? Does anyone pair at work? Does anyone pair most of the time?
  5. 5. O N O U R O W N PA I R I N G 1 0 1 F L O W B E N E F I T S I’d like to talk about: - working on my own, and the frustrations that encouraged me to find another way of working - learning to pair, and the challenges I faced when I started - making a connection with another person, and that illusive state called flow - and I’ll finish with the benefits of pair programming that I value most
  6. 6. O N O U R O W N PA I R I N G 1 0 1 F L O W B E N E F I T S SLOW & STEADY Work can be frustrating, and I’ve often wondered ‘does it have to be?’ Maybe part of the problem is that we work on our own
  7. 7. Old habits Working on our own is normal I think it starts at school, where we are taught how to work School focuses on individual effort, you have to do your homework alone And if two students collaborate? Well, that's cheating!
  8. 8. Meet, separate, review Until last year, every job I’ve had was the same. I was given a task, expected to go away and complete it on my own Then we submit our finished work for review And in every job, I’ve found the review process troublesome
  9. 9. Marking each other’s work I think much of the stress I've felt at work has been worrying about how my work will be received: —did I do it right? —is it good enough? —will my boss like it? Then, in many reviews the feedback has been superficial. Often the reviewer picks out minor corrections. So it was very hard to get in depth feedback.
  10. 10. Personal gain We all want to do well However, our individual goals don't always align This sets the stage for us to work against each other for personal gain And I’ve seen competition between people send teams off course
  11. 11. Silos When we’re working on our own, how much do we collaborate? It takes effort to share knowledge and skills, so silos emerge naturally And those silos can become points of failure e.g. “Josh is away, so we'll have to wait until he get’s back” Also, it's easy to laugh and belittle each other when we don't understand what's involved
  12. 12. Blame 👹 The worst culture of all is the blame game: the terrible politics of hunting down an issue and pointing the finger at someone I expect we have all been victims at some point When something really urgent comes up everyone knows the stakes are high And you have to decide: step up and be a hero, or duck for cover?
  13. 13. “Even programmers can be whole people in the real world. XP is an opportunity to test yourself, to be yourself, to realize that maybe you've been fine all along and just hanging with the wrong crowd.” – K E N T B E C K Last summer I was looking for my next job. And I read this quote by Kent Beck about eXtreme Programming. So I decided to look for the right crowd. And with some luck I found a great team of people where I learnt to pair.
  14. 14. O N O U R O W N PA I R I N G 1 0 1 F L O W B E N E F I T S SLOW & STEADY Ok, let’s roll back the clock to last summer when I started pairing If you've heard anything about eXtreme programming, then you might have heard people say it's awesome. I confess, that I have drunk some of the Kool-Aid, but I want to be honest about the challenges…
  15. 15. Pairing is a different way of working Pair programming puts you next to someone Two monitors, two keyboards, two mice—two minds You're in close quarters, it's intimate
  16. 16. Keystrokes collide First, there’s the physical challenge When I jump on the keyboard then our keystrokes collide When I switch windows and miss a few times, my pair sees a kaleidoscope of prompts, code and browsers flash before them > You have to take turns and be considerate to your pair
  17. 17. Methods vary Second, there's the challenge of variety Everyone has a their own way Even a small thing like moving a line of code When I was soloing I used one method in my favourite editor My pairs have use different ways and different editors and that’s fine > You have to let each other be different and become familiar with more ways of doing things
  18. 18. Ideas contend Third, there's the challenge of explaining yourself When it comes to ideas there’s even more scope for contention We’re all full of opinions And we’re conflicted about them There is so much to learn; and it pulls us in so many directions > You have to be honest about what you know. And when you don't know, look it up and learn together
  19. 19. Being kind isn’t easy Well, it turns out that being kind is really hard work It may sound obvious, but being kind is crucial to work with someone all day Nevertheless there is conflict > You have to work hard to let go of my old habits, and I’m still unkind more often that I’d like
  20. 20. It’s intense! 😳 This was a new way of working. It was intense. I’ve been physically exhausted by exercise, but never felt mental exhaustion like this before I was lucky that my team encouraged regular breaks I soon realised how important they are > You must take regular breaks. And don't be tempted to work late or you’ll burn out
  21. 21. When I got home my brain was a white out
  22. 22. O N O U R O W N PA I R I N G 1 0 1 F L O W B E N E F I T S SLOW & STEADY After a few months pairing started to get easier... and I began to feel comfortable working with my pairs
  23. 23. When it’s going well you can achieve a flow state together Pairing is a skill Then after pairing for a while it dawned on me that I have paired before
  24. 24. Aikido I trained in Aikido, a Japanese martial art for six years at school and University The goal of Aikido is to achieve harmony In Aikido we train in pairs, and I think there are many similarities with pair programming
  25. 25. Tori and uke Like in pair programming we take turns Tori does the technique; uke receives the technique Bear in mind most techniques end with uke pinned, or thrown to the floor So you quickly find out what it's like to be on the receiving end
  26. 26. This is me and Tom Tam We're doing a training exercise The goal is to hold on The grip must be soft enough to listen And strong enough to keep hold
  27. 27. Make a connection The aim of pairing is to make a connection When you lose the connection, then…it’s obvious You don’t know what your pair is thinking, you interrupt one another and you lose the flow It's dynamic
  28. 28. Suspend judgement Like being uke, I’ve found navigating much harder than driving But you have to let your pair drive. Even when you don't like their driving. I’ve learnt to suspend judgement and let them complete their thought…and then, quite often, they surprise me!
  29. 29. Appropriate feedback This connection is at the heart of pairing When you’re pairing you can get immediate feedback You can discuss and combine your ideas As you get to know your pair you can tailor your feedback So it is appropriate, and doesn’t disrupt the flow
  30. 30. Who wins? I have a confession to make: when I started training, I wanted to win I wanted to beat people I didn’t like However, in Aikido there is no competition. So at some point I realised that winning wasn’t why I went anymore And in pairing teams it’s the same: we commit code together, we come up with ideas together What I enjoy most is working closely with my pair and putting my all into it
  31. 31. O N O U R O W N PA I R I N G 1 0 1 F L O W B E N E F I T S SLOW & STEADY Now, you don’t have to achieve flow everyday to benefit from pairing Some of the benefits come quickly, but it does take time for the benefits to develop in any team Even when the team is experienced with pairing
  32. 32. Focus Fewer distractions Shared mind space Consistency
  33. 33. Shared context We rotate pairs regularly so what we learn is shared around the team Fewer silos of knowledge Learning and sharing is an everyday activity Guilt-free holidays
  34. 34. Creative variety We share our skills More comfortable trying different things More open to new ideas
  35. 35. Team sport Pairing aligns individuals towards the team effort We learn, fail, recover and succeed together It’s not about me anymore So I want to see my teammates succeed and even exceed me
  36. 36. Not just for work I’ve been struck by how this has changed my attitude outside the office When someone is struggling with a till, my instinct is to pair with them When my little girl grabs my hand and says ‘c’mon’, I’m ready to pair
  37. 37. O N O U R O W N PA I R I N G 1 0 1 F L O W B E N E F I T S
  38. 38. Who do you work with?
  39. 39. Here are some of the great people I’ve worked with this year: Gagan, Maria, Pavan, Jatin, Alex and Craig They are kind, honest, intelligent, and enthusiastic people I feel very lucky to work with them It’s worth the effort
  40. 40. 🙏 GASHO Thank you for listening This is my first talk at LRUG. LRUG was the first meet up I came to as a new Ruby developer. That was three years ago at the Skills Matter eXchange on Goswell Road. And I would like to thank everyone who supports this community for creating a welcoming event.
  41. 41. J O S H H I L L @ J A M E S J O S H U A H I L L Would anyone like to ask a question? REPEAT QUESTION BEFORE ANSWERING PLEASE COME AND SAY HI AFTERWARDS

×