[tpm] Text version of my slides
Mike Stok
mike at stok.ca
Fri Aug 30 19:19:48 PDT 2013
There might be some interesting links in here, we also saw gh-auth https://github.com/chrishunt/github-auth
Mike
Adventures In Pair
Programming
Mike Stok, Toronto Perl Mongers 2013-08-29
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Before I Begin
Thanks Dave, Olaf, Stuart
Thanks ScreenHero, Digital Ocean, 8th Color
This is subjective
Based on many days of experience
That's enough gratuitous e ects
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Before I Begin
We've discussed this at TPM before
I've tried to get it implemented at #{work}, with marginal success
Frustration is the mother of invention
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Intended Structure
In One Slide...
What Is It? (It being pair programming)
Why Do It?
How Can We Do It?
Resources
Demonstrations
Questions
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
In One Slide...
"All code to be sent into production is created by two
people working together at a single computer. Pair
programming increases software quality without
impacting time to deliver. It is counter intuitive, but 2
people working at a single computer will add as much
functionality as two working separately except that it will
be much higher in quality. With increased quality comes
big savings later in the project."
http://www.extremeprogramming.org/rules/pair.html
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
What Is It?
An eXtreme Programming practice
Two people at one computer
Frequent changes of role
Frequent changes of partner
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Why Do It?
For some adventure -- if you're comfortable you're not doing it right!
It's fun
Improved design (TDD) and code
Knowledge and skill transfer
Incidental benefits
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Why Do It?
It doesn't have to suck -- http://www.youtube.com/watch?v=OQXEzwXtzJ8
Focus on the code is essential
It doesn't have to slow you down
It is hard work to learn to collaborate
It is rewarding to collaborate
Knowledge and skill transfer
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
How Can We Do It?
Agree on the"ground rules":
What's the goal? Be realistic
When are we done? Be flexible
What tools do we use? Be open
When can we do it? Be present,engaged
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
How Can We Do It?
Ideally -- in my opinion
Physically co-located
With management support
At a single computer
Ability to walk away from the computer
Pomodoro-ish time management
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
How Can We Do It?
Remotely:
ssh into my machine and use tmux
screen / window sharing ScreenHero
use a VPS and tmux + port forwarding
Problems:
responsiveness, security, disconnections
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Resources (Web)
http://www.pairprogramwith.me
http://securesoftwaredev.com/software-development/pair-programming/
http://www.extremeprogramming.org
http://screenhero.com
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Resources (Books)
Extreme Programming Explained -- Kent Beck
Peopleware -- Tom DeMarco and Timothy Lister
Tmux: Productive Mouse-Free Development -- Brian P. Hogan
Metaphors We Live By -- George Lako and Mark Johnson
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Resources (Tech)
Technologies:
terminal sharing: screen / tmux
window / screen sharing: ScreenHero etc.
VPS: Digital Ocean etc.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Demonstrations
tmuxinator (wrapper around tmux)
ScreenHero
Digital Ocean (if there's interest)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Questions
Was this a good use of your time?
Beer?
Where?
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
The End
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
--
Mike Stok <mike at stok.ca>
http://www.stok.ca/~mike/
The "`Stok' disclaimers" apply.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/toronto-pm/attachments/20130830/8be09c88/attachment-0001.html>
More information about the toronto-pm
mailing list