Most of the tech world is 2 though. Our entire category lives because management is too dumb or power hungry to realise that.
Sure, you probably shouldn't outsource to the cheapest places who barely speak English (eg. India, South East Asia, Russia, Eastern Europe), you'll have tons of communication problems.
If you outsource from the States to the UK or Western Europe (and test the language knowledge in advance) you'll save tons of money and get engineers who can communicate with you.
If the language is not a problem (eg. your staff speaks the language of the subcontractor) I've seen amazing deals work out without a hitch; eg. Russian founders hiring engineers for hundreds per month in Russia, Indian founders hiring cheap resources in India.
Outsourcing didn't work out 20 years ago because we didn't have tools to work remotely effectively (zoom scalable video codec and better broadband have been a game changer) and because people went to the cheapest countries.
There is a middle ground of productive engineers living far away, happy to earn less and who don't want to live among the homeless in an expensive SF flat.