On-site programmers can be of any nationality and succeed. What I disagree with -- vehemently -- is that off-site (and offshored) programmers can be effective. In my experience, they cannot.
There is also a slight racial difference -- again, in my experience, Americans tend to be more inventive and 'fluid'. This sometimes is a problem as they program something you didn't intend, but more often is a benefit. Indian programmers, as a rule, are more rigid.
And don't even start me on Russian programmers. Boy howdy.
Yes - they are on-site... We also have off-site programmers... they appear to be good as well, but I will agree with you that off-site programmers are nowhere near as effective as on-site programmers...