With the rise in popularity of agile software methodologies, the practice of formal code reviews has been often put against pair programming.  There are proponents for both and some even recommend practicing both.
As time goes on, I’ve been able to do a little bit of both and I’ve developed a strong preference for pair programming [...]