54 karma · joined February 23, 2008
Higher level abstract stuff which involves creativity (design) or strategic decisions won't work because there is no process for these activities. You can't synchronize (communicate) where you are on your way to the "eureka" moment. Discussing with others certainly helps but there nothing pair-programming specific about it.
Also, don't forget that most, if not all, of the assumed benefits of pair-programming can be gained using a more flexible common sense approach:
Reducing defects? Code-reviews.
Over engineering? Design documents.
New hires? People switching projects? Assign a mentor for a week or so and have them pair-program.
Faster debugging? Understand that it is OK to ask a colleague for help.
def condense(s, remove): return "".join([c for c in s if c != remove])
Cheating (2.6+): s.translate(None, remove)
x^2 = x^2
x^2 + (r^2 - r^2) = x^2
(x^2 - r^2) + r^2 = x^2
(x + r)(x - r) + r^2 = x^2If we continue you'll also notice that:
(x + r)(x - r) = x^2 - r^2
Which is useful if you need to calculate the opposite where two numbers are mirrored around a suitable even number, i.e. 28 * 32 -> (30 + 2)(30 - 2) = 30^2 - 2^2http://www.spottedbylocals.com/berlin/area/mitte/bars-mitte/...
http://src.chromium.org/viewvc/chrome/trunk/src/courgette/
BTW, I've read about 40% of the Chrome code and I have to say it is the single best open-source project I've come to study so far. Incredibly clean code, really shows how much code reviews done properly can benefit project in the long run.