The IT salary in Canada/US is anywhere from $30 000 and up and in India, it's around $20 000 and that's a lot in India which means that it also encourages more people to choose that field.
It doesn't make any financial sense for a company to hire someone that charges twice as much for the same work than someone else can do.
"According to Forrester Research, "at least 3.3 million white collar jobs and $136 billion in wages will shift from the U.S. to low-cost countries like India, China, and Russia" by 2015. [...] Much of the anxiety over this issue outstrips the reality. We are not all going to lose our jobs tomorrow. Outsourcing is over hyped in the short term. But it's under hyped in the long term"
-Page 39 of "A Whole New Mind" book by Daniel H. Pink
The biggest complains currently when working with someone overseas is either the language barrier or the hours but both are slowly getting fixed by both parties working together to resolve it.
Changes are going to happen... prepare for it!
For more blogs on Technology, visit the Geekarium