This got me thinking. If you keep running into people "bad" at a job, there's usually something else in the play. If you found a restaurant has very rude waiters, but manage to keep open for quite a while, it usually means it have really good food or really cheap price. Same goes here. The "badness" of the "Indian programmers" is only a indication of their other "goodness", including cheap, responsive and maybe on schedule.