+1 for Extreme Programming. I've been a fan from the beginning when Agile was all the rage and my recommendations for XP were met with blank stares.
With the ability to share screens/IDEs remotely the need to be at the same desk may have shifted, but working together is intrinsic to pair programming I believe.
The original text went into some detail about making the desk work for 2 people, and having screwdrivers available to do so, which for some reason always amused me.
This is extended to "mob" programming where you have whole team of "navigators" and one person at keyboard.