From ExtremeProgrammingExplained (second ed, 42)
Rotate pairs frequently. Some teams report good results obeying a timer that tells them to shift partner every sixty minutes (every thirty minutes when solving difficult problems). I don't think I'd like this but haven't tried it. I like to program with someone new every couple of hours, switching at natural breaks in the development
What are the pros and cons of frequent and infrequent rotation? In what contexts is hourly/daily/weekly rotation advised?
I'm about to use XP on a project developing numerical analysis software. Some of the algorithms are quite involved. The programmers generally understand the algorithms/mathematics but some aren't very experienced programmers. What frequency of rotation is advised? I was thinking of daily.