How many great software products have you seen being invented and created in India ? Is the number around null ? Or is it a large NULL ?
There are many reasons why Indians are not really a threat, and it is not only the language problem. It is their culture. Been in a startup in Bangledesh for 3 months, most employees from Indian universities. They work very hierachical, and not independent. It is almost impossible to make an employee choose between a blue and a red ball, we want hios managers approval first. I could not get my employees to to code things using stuff not part of their curriculum. I had to train them in those chapters in their book from university that was not part of their university education. Their attitude is, that it is better do make nothing than to make a mistake. They don't know the word no. They can't say they can't do it, but would rather delay forever.
Now I am in a large company, and the code quality we get out of India, no matter what huge front company we use, is nowhere as good as an average local person with a bachelor in CS can deliver. Their missing ability to think and read documentation, and explore is a killer.
The big threat comes from christian countries, countries with our culture. The threat comes from eastern europe and south america. They think more or less the same way. They can work independent. If they don't get an answer, they will decide on a direction to go. Even if they go the wrong direction, it is stillbetter than looking out the windows until the boss comes around.
And one important fact that you forget is, that brain workers, including IT developers, has a salary way above average salary in whatever country they are from. Personally, I would say it takes 3-5 average indians to be as efficient as an average westerner. that is $10.000-$15.000/month. So there is not good economi in using indian developers if they are available locally.
Outsourcing of jobs is mostly operations, where it is accepted that the level will be much worse at half the cost. And partly development because you can't get the skills locally. Operations today is waiting for the server to burn and then piss on it. Nothing proactively, except from scheduled reboots. So whatever is outsourced to india is not the same thing as the comanies used to get. They get less $ for $. They could save more money by deciding on the same service level with inhouse staff, and fire 90% of IT operations staff, and use external consultant when things are bad. They would even get a better service from that solution. Outsourcing to india is the new black. Everybody does it, nobody is happy, but because everybody does it, it must be the best.