Many in the IT industry are fond of outsourcing if not offshoring in today's hypercompetitive, global economy. I say this is well and good so long as it doesn't involve your core competency. However, what is surprising to me is the number of folks I talk to who even advocate outsourcing that. Specifically, I know of a number of software startups that are either using temporary contract workers or who are offshoring. Perhaps it comes down to what exactly is getting outsourced. If these companies have software architects that are developing detailed specifications as to what exactly should be coded and then the outsourcees simply execute that plan, then that is bad but maybe not disastrous. What's the big deal? Knowledge is gained, lessons are learned, and decisions are made during the creative exercise of birthing an application, and whoever is physically doing the work gains significantly more know-how than anyone else. So if these companies are outsourcing the whole kit and caboodle, then I think they are on thin ice because not much intellectual property is retained in-house; of course, whoever did the work makes out pretty well and could even market that domain knowledge to other potential clients... maybe even a given company's competitors!