Question: This term seems to be quite in use in English-speaking communities. I'm curious what it is? Is it like two students code together on a single PC or what? Is this organization (whatever it is) is only used in US?

Answer: 
<http://en.wikipedia.org/wiki/Pair_programming>

> 
> Pair programming is a software development technique in which two programmers work together at one keyboard. One types in code while the other reviews each line of code as it's typed in. The person typing is called the driver. The person reviewing the code is called the observer[1](http://en.wikipedia.org/wiki/Pair_programming) or navigator. The two programmers switch roles frequently (possibly every 30 minutes).
> 
> 
> While reviewing, the observer also considers the strategic direction of the work, coming up with ideas for improvements and likely future problems to address. This frees the driver to focus all of his or her attention on the "tactical" aspects of completing the current task, using the observer as a safety net and guide.
> 
> 
>
An extension of Pair Programming sometimes used by practitioners of [Test Driven Development](http://en.wikipedia.org/wiki/Test-driven_development) is [Ping Pong Pairing](http://c2.com/cgi/wiki?PairProgrammingPingPongPattern).

Ping Pong Pairing works something like:  

* Write a failing test (developer A)
* Implement code that makes the test pass then (optionally) [Refactor](http://en.wikipedia.org/wiki/Refactoring) (developer B)
* Write a failing test (developer B)
* Implement code that makes the test pass then (optionally) Refactor (developer A)
* and so on...

One of the benefits of Ping Pong Pairing is that it's tough for either developer to sleep very long ;-)