Monday, February 26, 2007

Bill Gates, Immigration, Competitiveness and... Punishment


Bill Gates has again written about the need for better education, better immigration rules and keeping America open to foreign skilled engineers. He basically says that:
  • Innovation is the main source of economic growth
  • Workforce is the most important factor
  • Having good educational system to form future workers is important
  • Must make it easier for foreign-born scientists and engineers to work for U.S. companies
Gates cites demand for computer scientists growing at 100,000/year, with U.S. supply decreasing, and 65,000 annual H1-B visas. H1-B is a "temporary specialty worker" visa that allows a foreign worked -- usually with a Masters degree or above -- to work in the U.S. for 3 years, renewable for 3 more.

Gates has written many times on this issue recently. Although it's pretty hard to disagree with the first three points Bill Gates makes, his position on immigration has been criticized as being simply a thinly-disguised call for cheaper labor for Microsoft.

When I was going through my Computer Science education at Utah State most of my colleagues were foreign, usually Indian or Chinese. This was particularly striking in my Masters, where the vast majority was foreign. The CS curriculum had a few "weed out" classes designed to shake off those supposedly not able to handle the program.

The first one of those was CS 2200 - Data Structures and Algorithms. When I took it, the class was taught by Dr. Vicki Allan, a loving, extremely intelligent and competent teacher.

She was also ruthless.

The class was heavy on theory and programming. The assignments were difficult and long (AVL Trees, anyone?). There seemed to be no end to them. My wife used to say that my assignments had "a life of their own." Worst of all was the day after assignments were due. Vicky would usually ask "So, how did it go? How long did it take you?". Students would often respond between 20 and 40 hours. She would usually say something like "Huh. It would have taken me 15 minutes." I hated when she said that, mostly because I knew it was true.

The class started with 60-70 students, and by the end of the second week was reduced to maybe 20 students. The class forced you to grow. It was one of the best classes I had. Not my favorite (that was Compiler Design and Construction), but it taught me a lot. Dr. Vicki has written her own thoughts on the difficulties of the class. I remember when I first read that. To this day, when I am faced with a particularly difficult problem, I am reminded of what she taught me.

When I talked to American students who dropped out of the CS program and asked them why they were quitting, the usual response was "I don't want to spend the rest of my life in front of a computer." The detractors usually migrated to the Business Information Systems program of the college of Business. "It's business with e-commerce." In reality, that program didn't teach close to nothing useful about computing, or business, being too shallow in both areas, in my opinion.

The students that remained in the CS program were mostly foreign. But why? I don't think they were any smarter than their American colleagues. The biggest reason they stayed, in my opinion, is that they knew their chances of staying in the U.S. after graduating was much higher with a CS or engineering degree. If that didn't work, they could go back to their countries of origin and be much more valuable with a degree from an American university.

The easiest way for foreign engineers to work in the U.S. is through the H1-B program, but it's a punishing and costly process. It costs an employer about $2,000 in immigration fees, plus whatever attorney fees just to submit an application. If the visa gets approved, it costs $1500 for the employee to change jobs, even for the same position. The visa holder has to travel to the U.S. embassy on his country of origin when visiting home to renew the visa stamped on his passport, incurring travel and immigration fees. The costs for a green card application -- which gives the applicant 10 years of permanent residency -- are much higher, and takes several years to be completed. During that time, the employee cannot easily change employers.

Compared to illegal immigration, where there are no papers to file, no limits on visits to home country, no taxes, no minimal education requirements; the H1-B + green card route is punishing. The current immigration system is designed to punish legal immigration, and reward illegal immigration. It should come as no surprise to anyone that illegal immigration is much more prevalent than legal immigration.

-Roberto

P.S.: If you were in the Computer Science bachelors or masters programs at USU between 1999 and 2004, I'd love to get back in touch with my colleagues.

3 comments:

  1. Bill Gates also recently got in trouble when speaking about H1-B Visas:

    http://arstechnica.com/news.ars/post/20070226-8924.html

    ReplyDelete
  2. Robert Oak's argument against raising the H1-B cap would have been a lot more believable to me if he had not focused so much on the "over 100k a year" argument.

    As it is, it just sounds like a strawman rant to me. What I would like to have seen is how well Microsoft pays their H1-Bs, in comparison with their American workers.

    What I can say as someone trying to hie in the software industry, I have a hard time finding good talent in the current tech boom.

    Maybe it's a good thing for the overall global economy if the H1-B cap is not raised, or even reduced. The engineers who are currently coming to the U.S. to study and stay will go back to their countries of origin and work the very American companies they would work for here. Except they will leave those companies and start companies of their own in their countries of origin, instead of starting them in the U.S.

    That will force American companies to improve in order to compete.

    ReplyDelete
  3. Here's a recent article I saw of which I was reminded when I read your post. It makes the claim that the vast majority of applicants for a typical software engineering position can't write code at all:

    http://www.codinghorror.com/blog/archives/000781.html

    My own experience has been similar. I wonder how much better those CS graduate interviewees could have been had they had a "no training wheels" class like the one taught by that Dr. Allan.

    ReplyDelete