Earlier quoted context omitted.
Yes, in practice, everybody pair programs, on an as-needed basis. When it's not needed...well, you shouldn't be doing it. I seriously think that non-stop pair programming is just a way to keep people from goldbricking (as the article hinted at the end). And really, 90 percent of programming is more "typing" than programming because the work is straightforward.
That's an exceedingly ignorant statement.
90 percent of programming is more "typing" than programming because the work is straightforward.
This may be exaggerated, but it has more than a grain of truth. If you take it to mean 90% of programming as actually practiced, as opposed to 90% intrinsically, it's not even that much of an exaggeration.
Working on harder problems in higher-level languages than I used to, I felt less productive for a very long time. In some ways I still do. I eventually figured out that this was because I was spending much more time thinking and much less time typing. Typing feels like good-old-fashioned-work in a way that thinking doesn't. That's why people feel satisfied after cranking out thousands of lines of code, when in reality they may well have made an unmaintainable mess (and thus destroyed value rather than created it).