source of a defect. Bad code obscures important details, and duplication scatters them all over the code base. Bad code leaves you scratching your head when your system has crashed and customers (and VPs) are screaming for you to get it back up."
As a new hire in a pairing environment, you don’t spend week one (or month one) sitting and reading out-of-date documentation or fearing a code base that you can barely begin to understand on your own. Instead, you get to jump right in and wet your feet with live production code. • Accomplishment is the ultimate motivator. Working in pairs allows you to participate in successes more often than solo work does. • It's FUN ;)
view of the code • Navigator: looks for logic problems, bugs, and better implementations, acts as a sounding board, and thinks ahead to potential problems; gets the macro view of the code
a reasonably well-defined task before you sit down • Agree on one tiny goal at a time: something you can complete within a few minutes • Rely on your partner, support your partner. • Talk a lot! Say what you are about to do, ask for an implementation idea, ask for a better way to solve the problem at hand, bring up alternative ideas • Sync up frequently • Take a moment to celebrate as you complete tasks and overcome problems • Switch roles often—at least every half hour
partner, explain what you are doing, think ahead and make suggestions, SWITCH ROLES OFTEN • Don'ts : Insult your partner, Be a bossy navigator, Grab your drivers mouse/keyboard