All my life, I have heard people talk about off-shoring in very polarizing terms. Depending on who you ask, the feeling was either that you had to outsource to build things at a low cost, or you were an unamerican traitor if you bought something foreign-made.
I always thought that there had to be a more rational approach than that. And I further assumed that people spending a bunch of money on outsourcing were making a well studied, rational decision. I now suspect that there is a lot of politics, emotion, and short-term thinking attached to most of these decisions - on both sides of the issue.
To me, the off-shore / on-shore decision is just an extension of the build vs. buy decision. If I am building a machine, and need a special clamp, do I make the clamp myself, or do I hire a machine shop to do it for me? Do I use my brother's machine shop next door, or do I use one in the next state, because their larger operation lets them make them cheaper? What about using a factory in Mexico? Holy cow - this Chinese firm says they can do it so inexpensively that it makes up for shipping the parts half-way around the world!
How do you make this decision? Well, of course you consider price. The price of the part becomes part of your Cost of Goods Sold, which directly affects your price, which affects the number of units you can sell, your revenue, and your profit. Price is a big deal. By the way, I think quality goes (almost) without saying. I am just assuming that you would never outsource any part to someone who couldn't produce it to your specifications - even if it was your brother.
The next most obvious thing is administrative costs. These may be harder to quantify, but they are easy to imagine. If the parts suddenly start coming out wrong, somehow, do you walk next door, or fly to China? Do you have a translation problem for documents and specifications? It may be hard to estimate these exactly, but it seems obvious that building something farther away will have higher admin costs than something more local. Still, we can use analytical methods like decision trees and sensitivity analysis to determine when it is worth the hassle.
As we move farther away from the per-part issues like price, it gets harder to estimate the effects. In general, we know that a more specialized shop will be able to produce better quality at a lower price, because that is what they focus on. This s one of the ways that society gains productivity, and therefore economic growth. But there are obvious consequences to outsourcing and off-shoring that must be considered.
When you outsource, you give up the expertise of how to make the part well. You also, inevitably, share that knowledge with others. Remember that hard problems are good in business, because that makes solving them valuable. If you hire someone else to solve your hard problem, they own that value. If you outsource all the hard problems, and save only a simple problem for yourself, like final assembly, or retail sales, you are not entitled to keep much of the total value of the product.
None of this says definitively that outsourcing (or off-shoring) is automatically good or bad, it just says that it is a serious business decision that must be made using the best tools and thought processes available. Seeing masses of businesses polarize into the "all manufacturing must be done in China, because it is low cost" or "I only buy American" camps doesn't make me feel good about the thought processes behind the decision.
This guy, on the other hand, makes me feel good. He tried it in China, and it worked for a while, but found the hassles to be too great, and is moving back to a US manufacturer. Not "great because he has come back to the US", and not "great because the US seems competitive", but great because he is making a rational choice, and the decision could have (and did) go either way.
I am not predisposed toward or away from outsourcing (or off-shoring). But I get very frustrated talking to people who think there is only one right answer. In principle, picking heads for every coin toss lets you win half the time. But in business, guessing and winning half the time is the same as loosing all the time. If you think there is only one right answer to the outsourcing question - you are wrong all the time.