Pair programming is an Extreme Programming practice used in Agile software development. In pair programming, two programmers work together on the same code at one workstation. One types in code (“the driver”) while the other reviews each line of code as it is typed in (“the navigator”). The two programmers switch roles frequently. Pair programming is one of the 12 original XP practices invented by Ken Beck. Counter-intuitively, pair programming is often more productive than two individuals working independently on separate tasks.