I think it's also because we tend to see outsourcing as management-sees-devs-as-interchangeable-workers. If good devs in Bangalore/Beijing were given ownership of products and allowed influence over direction of things I'm sure they'd do great. But outsourcing seems to go hand-in-hand with a business creates requirements, devs follow orders attitude.