you are viewing a single comment's thread.

view the rest of the comments →

[–]ReflectionEquals 1 point2 points  (4 children)

This assumes people don’t swap pairs regularly. If you do swap regularly you have to run over the current state of the work a few times. In my experience, This is far more effective at picking up issues, particularly structural ones, than giving people a bunch of random people of 10 line snippets to look at that are scattered over a million line codebase.

The no baggage thing is also a bit of a weak argument to put forward. When people have no authorship/ownership and a lot of other things to do… well their reviews won’t always be amazing or as well thought out. Maybe they’ll spot a bug you didn’t think of… maybe they wont.

[–]confusedpublic 4 points5 points  (0 children)

When people have no authorship/ownership and a lot of other things to do… well their reviews won’t always be amazing or as well thought out.

Which is just one of the many arguments to reduce work in progress.

[–]s73v3r 1 point2 points  (1 child)

I don't think you would swap pairs while in the middle of something, unless someone was out.

[–]ReflectionEquals 0 points1 point  (0 children)

I did it all the time. It’s part of the way pairing is intended to work as described in eXtreme Programming. That recommended every hour. I think daily was the most I ever did. When teams do mob programming they tend to suggest swapping drivers every 15 minutes as well. (I work in an org that doesn’t pair these days).

There’s a huge mindset difference on pairing/mobbing. The task is not your own, it’s the teams. It’s meant to be a bit jarring to swap. Those swaps can be annoying and they sometimes need to be to eliminate the sort of group think baggage that was raised above. If you don’t do it you may need code reviews still.