I agree thats its a complex issue and I definitely am not for having no foreign-born workers, the outstanding ones contribute a lot and I am definitely in support of H-1B programs (or other programs) for entrepreneurs who come here to start a business.
Regarding the degree question, frankly I think this is ridiculous, so an American developer who proven work experience as a developer, without a Bachelor's degree, is automatically ranked lower than an H-1B worker who has a degree from a foreign institution? American employers aren't necessarily going to be aware of the quality / legitimacy of a degree from a foreign institution, hell, for all they know a degree from a college there could be roughly equivalent to a high school degree here, with a few college-level courses thrown in. I don't think I even know of a single person I work with who has a degree in computer science, plenty have degrees in another subject, but is this really making them better developers?
Overall, its a tough issue, I'm all for having some of the best and brightest from other places come here, those who can come here and be a net-positive, but, in my experience there are some who just come because they know its a ticket to a better way of life and they aren't necessarily passionate about what they do and generally don't have what I observe to be a strong work ethic. On the other hand, some do and I have no problem with them being here. Like any cross-section of people, no matter how "perfect" the system for their admission to the U.S. seems to be, it is going to end up with a wide range in skill-sets and therefore I feel it needs to at least be limited and watched closely as undoubtedly they are going to take away some jobs, from some American developers.