| ▲ | jameskilton 9 hours ago |
| Then you've never actually Pair Programmed. It's not "someone looking over your shoulder", it's literally two people writing the code together, one person at the keyboard and the other person saying what's next. Two brains working in tandem on the same problem space. It works really well, but it is exhausting, and difficult to sell. |
|
| ▲ | Arainach 9 hours ago | parent | next [-] |
| Physical placement isn't important. Psychologically, it's the same. What it means is that for the entire duration there is someone paying close attention to (and potentially judging) everything I do. No downtime, no zoning out, focus and performance for an extended period. IM notification from an old teammate pops up complaining about my boss? Seen. Switch to a window with my personal email and they can see that thing I just bought or that recruiter I've been talking to? Seen. I type a stupid thing that will never work? In the 5-30 seconds before I realize it, seen. It doesn't matter if I trust my pair. That's not how the brain works. |
| |
| ▲ | 8 hours ago | parent | next [-] | | [deleted] | |
| ▲ | singpolyma3 9 hours ago | parent | prev | next [-] | | Well you won't have IM or email open while pairing :) you'll be focured on the conversation you're having with your pair. They're not watching you you're collaborating | |
| ▲ | nertzy 8 hours ago | parent | prev | next [-] | | As someone who pair programmed 8 hours a day for 10+ years, it’s important to note that there is an ebb and flow. Sometimes we were collaborating fully. Sometimes one of us got up to make coffee and looked at Instagram on their phone for 20 minutes while the other tried to get tests to pass. Then we reunited and caught each other up. It’s easy to dwell on the intense part of pairing, but it’s just as important to purposefully acknowledge your humanity and expect to take real actual breaks and go sit in a comfy chair and zone out for a short while or go to a doctor appointment or chat up another person at the water cooler for a bit. 8 hours a day pairing means that pairing is the default, but it’s not the only thing that ever happens. also: 8 hours/day pairing meant 16 hours/day not working at all in my case. Really really really not working. Not checking Slack. Not trying out some crazy idea. Not working at all. | |
| ▲ | 9 hours ago | parent | prev [-] | | [deleted] |
|
|
| ▲ | keyle 9 hours ago | parent | prev | next [-] |
| +1 for exhausting. Also my experience. Very valuable when you have to write business logic or a complex feature the business will rely on. Definitely not good for long running work and chasing bugs. |
|
| ▲ | nomel 8 hours ago | parent | prev | next [-] |
| I've never pair programmed. How can one achieve concentration for "deep focus" or "deep thought"? I'm only able to do that alone. Is it a me problem, or are some people able to focus deeply with others talking to them? There have been (extensive) discussions on this topic here [1]. I don't seem to be alone in the inability to think clearly with interruptions. [1] https://news.ycombinator.com/item?id=22059601 |
| |
| ▲ | em-bee 8 hours ago | parent [-] | | you are not being interrupted. your partner is thinking with you and is paying close attention to what you are doing. they will know you well enough to not interrupt you while you are focusing on something specific. they will wait for the right moment to speak up if they have something to add, and even then they will not change the focus to some other part of the task if they know that this would disrupt you. this takes time to learn of course. and individuals handle this differently. i to can't handle interruptions, but when i am focusing a piece of code, and my partner telling me or asking me something about that same piece of code, then for me that's not an interruption. interruptions are notifications and being asked to change the focus on something different. that should not happen when pair programming. another aspect not mentioned yet, when there is an actual interruption from the outside, one of the people in the pair can handle that interruption, while the other continues to focus. the interrupted one can then jump back in much faster than you would if you were interrupted while alone. | | |
| ▲ | nomel 8 hours ago | parent | next [-] | | > you are not being interrupted. your partner is thinking with you As the many examples in that discussion show, this is your subjective experience, with others build different than you. To me, those two sentences side by side are in complete contradiction with how I experience the world, where the knowledge of a persons attention is distracting, like a glaring light. But, for learning a new language/framework/codebase, I think it would work very well. The quickest, and most enjoyable, "ramp ups" I've ever experienced were just sitting next to someone and bouncing questions off of them as I explored. | |
| ▲ | 8 hours ago | parent | prev [-] | | [deleted] |
|
|
|
| ▲ | jashper 9 hours ago | parent | prev | next [-] |
| I’m all for talking through things and getting a second opinion, but when it comes time to actually crafting things, I need my own space, maybe I’m just weird |
|
| ▲ | stephenlf 8 hours ago | parent | prev | next [-] |
| Pair programming worked well for me in college because my peers had about the same level of background knowledge and the goal was well defined. At my day job, pair programming doesn’t work as well, since the knowledge gaps in different parts of the system are too great. We don’t have a cohesive skill set. |
| |
| ▲ | shalmanese 8 hours ago | parent [-] | | But that's the entire point. Pair programming isn't for producing more working code in this session faster. It's that it empirically is the fastest way to erase knowledge gaps because the two of you are working on a shared artifact. |
|
|
| ▲ | bossyTeacher 9 hours ago | parent | prev [-] |
| > one person at the keyboard and the other person saying what's next My understanding is that there is no one person saying what's next but what's next gets decided by both people. Otherwise, the other person is just a typist. |
| |
| ▲ | Conlectus 9 hours ago | parent | next [-] | | That’s the ideal, but if you have the person at the keyboard doing too much of the planning then it’s really easy for the other person to just check out mentally. | |
| ▲ | em-bee 8 hours ago | parent | prev [-] | | the other person is a typist that thinks through the ideas they hear and critiques them while they are typing. |
|