I previously blogged about the nature of expertise, and resulting questions about the efficiency of expert-expert pairings.  Here I’d like to tidy up some loose ends with regard to the relationship between expertise and pair programming. How does expertise develop? Kahneman’s book points out that expertise develops, virtually inevitably, when a practitioner has long experience… Read More

Let’s start this post with a thought experiment.  Not in software development, but in playing chess. Imagine two novice chess players, working as a team. (We’ll assume their opponent is a computer, so it can’t overhear them talk.)  Our two novices will benefit greatly from their collaboration.  They’ll discuss all their thinking – everything from… Read More

Imagine looking at a dog.  You instantly know that it is, indeed, a dog.  That’s an incredible feat of pattern recognition, performed almost instantly and without any conscious effort. Is it really incredible?  Yes.  It just seems easy because you’ve been doing it effortlessly since about age three.  To remind yourself how difficult it actually… Read More