Hacker News new | ask | show | jobs
by ardit33 6438 days ago
"We also followed the XP practice of pair programming, which is why you'll see only two desks for the four programmers."

Pair programming is stupid. It is ok in only two situations:

A senior engineer is teaching around a more junior engineer (or somebody that just started).

There is a modification/urgent patch going on, that is touching very critical point of the application, or that is being done right before the product is shipping.

I just can't imagine good developers like pair programing. It is such a waste of resources.

2 comments

I like pair programming. It's not stupid - it's counterintuitive, and like any counterintuitive idea is vulnerable to snap dismissal, as your comment appears to exemplify.

Anyone who's ever spent hours going down a rabbit hole that in retrospect was an obvious mistake may have a conception of why it's not necessarily a waste of resources. That, and anyone who realizes that programming isn't straightforward and he may not have all the best ideas about how to do something.

It's too bad that the discourse around pair programming is dominated by people who think it should be mandated and people who think it's stupid.

Anyone who's ever spent hours going down a rabbit hole that in retrospect was an obvious mistake may have a conception of why it's not necessarily a waste of resources. That, and anyone who realizes that programming isn't straightforward and he may not have all the best ideas about how to do something.

Sure, but many people know when they are about to go down a rabbit hole, and can just ask a colleague for some advice.

Also, experience is the best teacher. If you rely on the person sitting next to you to prevent you from making mistakes, you don't learn anything.

If you know in advance that it's a rabbit hole, that isn't what I meant by rabbit hole.

But I'm not sure what the point is. Arguments about pair programming in general never go anywhere. What was I thinking? Oh yeah, that it isn't "stupid".

I like making things together with others, and I like doing stuff on my own, and I like not being micromanaged and told how to work, and I think my code gets better when I work on it with somebody smart, and I think I contribute to other people's too. You figure me out.

But I'm not sure what the point is. Arguments about pair programming in general never go anywhere. What was I thinking? Oh yeah, that it isn't "stupid".

You are putting words in my mouth. I didn't say anything about pair programming being stupid.

No, the original comment did.
I like pair programming when another programmer and I are about to start a project using technologies we're not familiar with. But each programmer should have a computer. It works well when one of you is projecting his screen and the other is on a laptop. In this situation both of you are going to have questions constantly and spend a decent amount of time looking up answers. You end up explaining things to each other as you figure them out.