Screen pairing
Corey Haines is making a tour of the US Midwest, pairing with people. I was happy to host him for the past two days. He introduced me to a style of pairing I’d never done before. What you see on the right is how we worked the whole time, each with our laptop, sharing the screen (via iChat).
I found myself preferring this style to pairing side-by-side in front of a screen. I even prefer it to sitting in front of two side-by-side screens with two keyboards. The work is more free-flowing and conversational. It’s easier to note the other person’s body language. It’s easier to stop coding, look up, and talk to each other. I found the switching between people more fluid, with fewer episodes where we were both going for the cursor at the same time.
On the downside: it may be a little harder to make sure that one one of you is filling the “navigator” role—stepping back and keeping track of the big picture. But I find that’s hard to ensure in any case.
I recommend you give it a try.
(The chair on the left, by the way, is where I do most all of my work. I recommend big bay windows with smallish panes for all kinds of hands-at-keyboard work, especially if you live on a nice old brick street with big trees.)
December 10th, 2008 at 10:09 am
That definitely was both a great spot to pair; I’m glad I got to introduce you to my preferred way to pair. I especially liked the rocking chairs. I’ve usually had to do this sort of pairing at a table, sitting across from each other, but it was much more fun on comfortable chairs. :)
I especially like the first picture with a screen full of green! Time to refactor!
thanks again for hosting me!
December 10th, 2008 at 11:21 am
Hay Corey,
What are the 8 squares on the cover of your MacBook?
December 10th, 2008 at 11:27 am
Agreed - I like this style of working as well. I have used this for a couple of years, starting with Jeremy Miller and Jeff Palermo at DataCert. We used VNC for the screen sharing. I’ve also done the same thing with a remote pair, using skype or yahoo voice for the voice channel. Not quite as fluid as in-person, but better than not pairing at all.
December 10th, 2008 at 12:02 pm
A picture window with a view of the Front Range works well too, even so, I haven’t lured anyone to my house to pair with me…
December 10th, 2008 at 1:53 pm
Chet and I have been pairing that way for quite some time, using VNC. This is primarily because I feel uncomfortable sitting cheek by jowl with him. We already finish each others’ sentences. My hitherto robust heterosexuality feels threatened sitting right together yammering on the way we do.
Not that there’s anything wrong with the other way. It’s just that I’m saving myself for Hill.
December 10th, 2008 at 3:52 pm
So, when you switch roles, do you commit and switch which computer you’re sharing, or are you typically sharing a single computer for the actual work for a session (albeit experiencing that work through two different “thin clients”)?
December 11th, 2008 at 12:45 am
The 8 squares are velcro. They are there to hold external hard drives, such as my itunes library. I got tired of them dangling on usb cables, so they now sit snuggly on the back.
December 11th, 2008 at 12:46 am
Geoffrey,
Usually use the same computer. We paired on Brian’s machine the whole time.
December 11th, 2008 at 1:05 am
Be careful what you wish for, Lisa! :)
December 11th, 2008 at 10:38 am
One other thing I forgot to mention. This setup also makes it easy to split up to do research - the person with the window to the other computer just minimizes it, then you go your separate ways.
Geoffrey: We could have switched machines because all the bits required to work on the example were either in the repository or are standard across Macs. Since Corey has TextMate bundles I don’t have and his view of my screen got a little laggy when we went to a coffee shop, that might have been more fair.
December 17th, 2008 at 6:13 am
[…] example, I recently came across the idea of screen pairing from Brian Marick’s blog - an idea that he learnt when pairing with Corey Haine’s on Corey’s pair […]
December 18th, 2008 at 4:40 pm
Good to see advances in the state of pair programming - it needs it. Any idea how vile it is having to pair with an unwashed, arrogant, and incompetent peanut for 100% of your day? Its painful. Pair programming, a little gem introduced by the Agile zealots, is actually punishment if you work in the teams I have. Sitting there being bored senseless while said peanut exhorts the virtues of Ruby (or the next language de jour) is just painful. Did I have anything meaningful to add? Only that its good to see the need for being able to split off to do research, two keyboards (!), personal space etc etc being mentioned. They’re pretty much mandatory for having a decent experience. Otherwise I’ve found PP to be a large, large waste of money and time.
January 29th, 2009 at 12:47 pm
[…] Brian Marick sobre os problemas e alternativas para desenvolvimento orientado a testes de aceitação, também leva suas "duas telas em par". […]
February 27th, 2009 at 5:35 pm
Seems amazing to me that so many people think this is amazing. I heard about this for the first time on .net rocks and could not believe it, at first I thought it was a joke.
Good luck.
March 9th, 2009 at 6:57 pm
I think Corey Haines has hit the nail on the head:
1) Pick a line of work
2) Wake up one morning and call yourself a crasftman in that line of work
3) Don’t proceed quietly, honing your craft every day to the satisfaction of what you claim to truly be interested in, rather (see #3)
3) Begin travelling around and meeting with others who want to hear you pontificate. Once they have been in your presence, call them crafstmen too. (It gets better, see #4)
4) Pontificate to everyone by blogging about the pontificating you’ve done with the person you just crowned as craftsman.
Brilliant!
The best thing is this… let’s start doing this in other areas of science/business/arts/technology.
Maybe for Doctors? Carpenters? Architects? Firemen? Astronauts?
Maybe people in all of these fields do not really need to contribute other than by travelling to other people’s houses, pontificating, then granting them the title of crafstman as well.
Awesome… I am healed and enlightened by Corey Haines.
March 9th, 2009 at 7:17 pm
Fraud: Corey came and helped me. This post may help other people. Nothing Corey does will (most likely) affect you in the slightest, so why not ease up on the spite?
September 4th, 2009 at 1:31 pm
How did you find the latency with using iChat? I’ve heard of some teams having issues when they attempt this technique with That One Remote Guy
January 24th, 2010 at 10:50 am
Social comments and analytics for this post…
This post was mentioned on Twitter by utahkay: Hey @marick @coreyhaines: “Screen programming” pic of you two, from @marick’s blog, I want to use it on a slide. May I? http://tr.im/x0UO…
February 28th, 2010 at 4:29 pm
[…] about this problem I remembered reading an article about face to face or screen pairing. Screen sharing software is available for most operating systems these days and for OS X users the […]
December 12th, 2011 at 7:43 am
[…] e Corey experimentaram este modelo e o acharam bastante efetivo. De acordo com Brian, ele acabou preferindo esta forma de parear ao modelo […]