Mailing List Archive
tlug.jp Mailing List tlug archive tlug Mailing List Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]Re: Pair programming [ was: Re: [tlug] [OT] Good IT Resume
- Date: Sun, 29 Jul 2007 23:07:04 +0900 (JST)
- From: Curt Sampson <cjs@example.com>
- Subject: Re: Pair programming [ was: Re: [tlug] [OT] Good IT Resume
- References: <8572e260707182339i5ca059c4l1be1f51559c16f54@mail.gmail.com> <d8fcc0800707230647j31bc776dje3e18d57b04352e7@mail.gmail.com> <Pine.NEB.4.64.0707241211330.8162@homeric.cynic.net> <d8fcc0800707240550o691c99f9n4524a2fe71c847e8@mail.gmail.com> <Pine.NEB.4.64.0707251409590.8162@homeric.cynic.net> <20070725072147.GD23731@soto.kasei.com> <46A7DBB4.9080000@dcook.org> <46A803E3.7010503@cnt.mxt.nes.nec.co.jp> <d8fcc0800707260101y5ca1b5ccg695cdf0fa35265e8@mail.gmail.com> <Pine.NEB.4.64.0707261939490.26874@homeric.cynic.net> <d8fcc0800707280048g1f290774pe6807aced56d7bfd@mail.gmail.com>
On Sat, 28 Jul 2007, Josh Glover wrote:
If you can catch someone taking a sub-optimal approach when they start to veer off the rails rather than after they've spent hours coding something the wrong way, you can save yourself the trouble of rewriting the code.
But I thought late changes were cheap in your projects?
They are as cheap as early changes. But it's better not to have to do the rewrite at all.
You win on turn-around time with pair programming (can we abbreviate it as PP? what does the XP literature use?)...
"Pairing," often.
...but I win with many eyes making all bad designs obvious, to mis-quote Linus. ;)
Actually, most all eyes eventually fall on most all bits of the code in XP, too, since everybody works (or should work) on pretty much everything at some point.
Not at Amazon. Code is not allowed to be deployed to production without the sign off of at least one reviewer.
So you're saying that when you identify a design or some code that's not as good as it could be, you always rewrite it, even if it works? Even if you could instead spend the time writing another piece of code that will make you money in the short term?
But what happens more often in my work is that I coordinate with an engineer on the other side of the Pacific, meaning that we have a hour-long window once a day for communication....
Ouch. That puts you at such a tremendous disadvantage already that I'm not surprised you're not too worried about pairing versus code reviews.
I actually find this better than PP for most problems, as it allows us to coordinate the design which each focusing on specific areas of the coding.
Coding is design, at least for me. I often change the design as I code something and realize better ways to do things.
Well, I value my flow, and this is why I don't consider PP a very good use of my time. I am much less efficient when I am not in the zone, and I find it harder to get two people in the zone at the same time.
Both people in the zone is certainly the best. But having one in the zone is still far better than none, and having one in the zone means that you can bring the other half of the pair back into much more quickly. Let me try to restate my argument again.
There are two ways to attack the problem of interruptions making people lose the flow. One is to try and minimize the interruptions, which can work well, but has a pretty bad effect on communication. And that in turn can make people lose the flow as well, since when they need information or feedback, if they can't get it quickly, they may have to stop what they're doing and thus fall out of the flow.
The other way of attacking the problem is to find a way to get people back into the flow much faster. That's what pairing can do.
So:
Whereas if I can grab Joe right that instant, get the one-minute analysis I need from him, and go on, I stay in flow.
But what have you done to Joe's flow?
I may have broken Joe's flow, but he can get back into it quite quickly by sitting down with his pairing partner, who is still in it.
Are you so arrogant that you think his time is worth less than yours?
No. I'm merely trying to optimize the entire team, as opposed to one person.
cjs -- Curt Sampson <cjs@example.com> +81 90 7737 2974 Mobile sites and software consulting: http://www.starling-software.com
- References:
- [tlug] [OT] Good IT Resume
- From: Pietro Zuco
- Re: [tlug] [OT] Good IT Resume
- From: Josh Glover
- Re: [tlug] [OT] Good IT Resume
- From: Curt Sampson
- Re: [tlug] [OT] Good IT Resume
- From: Josh Glover
- Re: [tlug] [OT] Good IT Resume
- From: Curt Sampson
- Re: [tlug] [OT] Good IT Resume
- From: Karen Pauley
- Re: [tlug] [OT] Good IT Resume
- From: Darren Cook
- Pair programming [ was: Re: [tlug] [OT] Good IT Resume
- From: Nguyen Vu Hung
- Re: Pair programming [ was: Re: [tlug] [OT] Good IT Resume
- From: Josh Glover
- Re: Pair programming [ was: Re: [tlug] [OT] Good IT Resume
- From: Curt Sampson
- Re: Pair programming [ was: Re: [tlug] [OT] Good IT Resume
- From: Josh Glover
Home | Main Index | Thread Index
- Prev by Date: Re: Pair programming [ was: Re: [tlug] [OT] Good IT Resume
- Next by Date: Re: [tlug] Post my article on tlug.jp?: Who's view does it represent?
- Previous by thread: Re: Pair programming [ was: Re: [tlug] [OT] Good IT Resume
- Next by thread: Re: [tlug] [OT] Good IT Resume
- Index(es):
Home Page Mailing List Linux and Japan TLUG Members Links