Extreme Pair Programming - Guy Steele and Richard Stallman
cycle-gap.blogspot.com
cycle-gap.blogspot.com
Well, of course not. This was the 70s, and we are talking about Guy Steele here; so they were probably far too busy scheming to make smalltalk.
The most notable interruption: while stretching, Phil accidently hit the rocker switch on the power strip with his foot. I'll never forget the look on his face when everything shut down. We only lost a couple minutes worth of edits, 'tho. I am a habitual save guy in emacs, whenever I switch buffers or pause to think.
I don't think the uncomfortable aspects of pairing are unique to pairing as much as they are compressed in a much shorter space. No snarky emails during code reviews or awkward hallway conversations. It's all right there, in real time.
I _really_ love hacking on code alone, but every pairing session I've had has been memorable and the code has most certainly been superior to what I would have done solo.
Like I said, some people might be wired differently. Although in this case, it's hard to imagine getting a > 200% productivity increase out of two people to make it worth it in the long run.
For short code golfing sessions, sure. That's been called "could you help me with this code?" for a long time, before that nice alliteration was invented.
It depends on how you measure productivity. If it's measured in LOC/hour or something, then pair programming will definitely seem like a huge productivity hit.
If you measure productivity more like "features delivered per month" (and negatively adjust for bugs that make it to production) I contend that pair programming will probably yield more favorable numbers.
If you've got a high fault rate, two people working things out might improve things enough to be worth the while. Especially in a case were uncaught bugs are really band and/or your daily coding is an exercise in tedious input checking, c.f. some web sites and conventional GUIs.
And even then I'd say that the occasional meeting plus a decent code review process would probably be as effective, without the hit in performance. Never mind the sheer annoyance a lot of people would feel having to "couple" all the time.
There's no credible evidence to support that claim.
On the other hand, pair programming generates a lot of churn (discussions about details between the pair programmers, the outcome of which bears little consequence on the solution of the problem) and that alone is guaranteed to negate whatever gain you could expect from pair programming.
In my experience, asynchronous code reviews work a lot better.
My experience supports it. Can you point to credible evidence to support your claim?
So I'd say, no, the newer programmer will not hold back the more experienced, more likely the newer programmer will just learn a lot.
(This assumes the newbie has previous experience with IDE/typing, is not actually 'worse' in the 'stupid' sense, but just less experienced).
Sure, write your YAGNI version in five minutes, but don't expect anyone to help you. When you put effort into your public code, others will too.
After a while they probably understood their domain. The number of lines just shows this understanding.
Being a lurker by nature, I don't possess the power of the down arrow or the flag, so let me just say that now is not a good time to let these tools lay idle.
I will argue both sides. For:
"It's a good point; at some point biology has to take over and break your concentration. Did they have bathroom breaks and not mention it? Were they so focused that they couldn't hear their body telling them to let it out? Did they just go in a bottle right there?"
Intersting point, jrockway!
Against:
"I think the point of this story was not to literally describe the exact events that took place over the 10 hours they were working together. They took breaks. They got some lunch and made some coffee. But that part isn't very interesting to talk about, and neither of them remember it because it was so meaningless in the context of what they were doing.
But yes, they used the bathroom. Glad that that's all you could think about."
See how I could argue either side and I didn't have to mention HN at all? If I disagreed, other people would see that and upmod me and realize that the OP's comment didn't have much relevance. If I agreed, other people might think, "hey, this OP guy is insightful".
You can control how comments are moderated and how the conversation flows. But you have to put more effort into it than just saying "HN is dying, OH NOES".
If all a person has to say about an article is about how badly HN sucks, then I wish that person would resist the urge to post his thoughts.
As GlaDOS says: "We both know that isn't going to happen."
As for the bladder comment, yes, that's the first thing came to my mind when I read it. Guy Steele stressed strongly about they didn't take a break during the entire time of the 10 hours. I thought, not even a bathroom break? these guys must have strong bladders, or the story was embellished to make it superhuman interesting.
Note that I have enormous respect for both GS and RMS. Sure I could have said how awesome their hacking session was, but that's just being part of the echo chamber. I rather posted my honest reaction. You can read it as an admiration for their superhuman effort or as a questioning of the absurdity of a folklore.