My views
Why does most of the outsourcing go to India?
a) Indians are hardworking. Not to say others are not, but Indians have an extra good reason to be (c'mon you know how things are back there if you don't get a good education).
b) Indians are cheap and dollars are expensive and sought after.
c) Indians have a natural aptitude towards mathematical analytical stuff. Chess/Computers/GRE/GMAT scores. Aryabhatta, zero .. look at our math books and then look at math books from anywhere else. One exception Russia, their physics courses are pretty advanced (Anyone remember IR IRODOV - Basic physics?)
d) We speak english. Good english, better than most english speakers here. (Though read point a) below).
e) We have our priorities correct and set right (for the most part).
What we do lack ..
a) Personalities.
b) Zest and firepower like the pakistani cricket team.
c) Leadership. (Mahatma Gandhi was 60 years back).
d) Adaptability to change.
e) Acceptance of other ideas contradicting to ours.
f) Nosiness in other's business.
g) Still servile attitude towards white skin.
h) Education/Health/Basic amenities for the masses.
i) A good atmosphere to work back in India (Politics, power outages, mosquitoes etc.)