Because there's a difference between a geek and an employable geek.<p>There, I said it, it's not going to be a popular opinion, especially since I'm a Canadian expat in the USA "stealing your jerbs". I know <i>many</i> others like me, who are being well above average rates to work in this country, whose very employment carries steep legal and bureaucratic overhead for our employers. Yet Canadians, Indians, Europeans, etc etc, are still being imported by the planeloads. I know for a fact that our HR department scours American schools for qualified graduates constantly, yet we can't fill spaces quick enough.<p>I've thought about this some, and my conclusion is that a lot of American geeks just don't work very hard - you have the people who hang out on Digg/Reddit all day. Yeah, they're geeks, but how many languages do they know? Can they build a site from back to front? Do they know their algorithms? People on HN need to realize that they're a vanishingly small minority of the set of all geeks, and that as a crew are in general much more ambitious and capable than most. There's a long way between "I like computers" and "I'm willing to pour ungodly amounts of time into learning computers". For every geek who takes the time to learn all the toolkits and languages to get employed, there are 500 others who couldn't be bothered, and will complain endlessly about undeserving foreigners stealing jobs rightfully theirs.<p>In other words, for every geek who knows Python inside and out, is up to date on all the latest web technologies, has experience building large scalable systems, etc etc... there are 500 others who can only write VB, and will endlessly complain that they're not employed, or that they're not being paid enough. Unfortunately no "geek employment" number will ever be able to separate the two.