The alternative is an innovation shortage which will destroy your lively hoods in the long term. We are in many ways loosing this battle in manufacturing, I do not want it to happen to software.
We talked about this in one of my university classes recently. There's a difference between engineering a solution, and coding a spec. If you only need someone to implement your spec, then why not save money and outsource? Turns out, this has been happening a lot recently. In 2013 36% of CFOs (globally) said, "their firm was currently offshore outsourcing" [1]. I think we're losing that battle because nobody wants those jobs. So, I don't think there will necessarily be an innovation shortage, but there might be a hired hand shortage. I think the point being made though, was that shortages aren't bad if you're part of that limited supply.
To be frank, I tried this for C++, and found that 'engineers' in India sucked and the competent ones cost almost the same as in the USA (70k/80k).
On the flip side I was able to find a really cheap graphics/publishing workflow (they clean MS word documents) but with 5x margins on our product, I didn't care nearly as much if we/I was paying people in India half the wages.
In truth, I think there are highly skilled jobs that can't be outsourced or rather have an even playing field.
There is no innovation shortage necessarily. There is a shortage in the ability to capture market value from new innovations, typically due to undercapitalization.
[1] http://www.statisticbrain.com/outsourcing-statistics-by-coun...