If you employ local people they spend their money in the local economy. If you train and develop local people, you spread more money around the local economy and you help develop your area and your country. Its also a lot easier to do collaborative, agile work when everyone is co-located. Sure you can outsource to a foreign country that bring people into the country, but they rarely stay longer than a couple of years and take your companies IP back home with them along with their accumulated savings.
Outsourcing may seem cheaper - and it is at first - but in practice it works out more expensive for companies. Foreign outsourcing companies slowly ramp up the costs and their workers slowly increase their expectations of what they should earn.
By the time a company wakes up from its outsourcing nightmare and decide they want to do it themselves , their own systems are a stranger to them.