Tough discussions are sometimes a side-effect of pair programming, but this is not always a bad thing. As discussion about which approach to take means you are thinking about the code before you write it and you have more than one set of eyes on it.
Taken from: http://wundasworld.blogspot.com/2007/11/joy-of-pair-programming.html :
The ideal pairing situation requires
both people to be expert developers.
They need to be open to the other
person's idea. And in this case
(expert developers with good, strong
opinions), its likely to bring pain.
However, "religious wars", if they are going to occur, are going to come up in a code review or elsewhere, if they don't come up pair programming. Avoiding unproductive discussion is something that has to be identified and avoided in any aspect of programming. The main way to avoid it pair programming, is to focus on getting the job completed, learning to choose solutions that meet multiple concerns, and learning when to give in when a choice is not worth the time it takes to argue about it.