As a baseline, I'm in favor of a lot of immigration and think people have way too many hoops to jump through in general, but the H1B crowd in particular is a group that matches even what most of those opposed to mass immigration claim to desire in immigrants.
That said, i've noticed different "worlds" of H1B worlds, with different impacts upon other workers.
I did a govt job on the US East Coast (Richmond, VA) that had a lot of H1B contract workers, likely from one of these body shops. They were good people, and adequate if unimpressive coders. They were earning decent US wages and were painfully aware that losing or leaving a job left them no guarantee there'd be another for them in the US soon. Management abused the heck out of these people, establishing practices, expectations, and treatment of coders that were terrible. They put up with it, but but it lowered the quality of the workplace for everyone, and the employees and US citizens (naturalized or born) working there also suffered, and tended to leave when they could. I was one of them, which put me in Seattle on the West Coast...
...Where I found an entirely different world of H1B workers. These were not contractors, not through a body shop, and were definitely impressive in their fields (devs, architects, and QA/Test eng, along with a handful of PMs and Team Leads). Here there was no reduction of workplace quality - these workers had lots of extra annoyances I didn't have to worry about (example: apparently changing your job title during one period of time when applying for a green card restarts the multi-year process, so I knew of people that declined or postponed promotions!) but they could definitely find work elsewhere easily enough - should workplace be unbearable they'd bounce like the rest of us could.
Whenever the H1-B debate comes up, I reflect on the different impact the workers had on these offices, and the impact the H1-B rules had on those workers. Everytime one of my friends debated if it was worth pursuing a green card or naturalization, I saw the seeming idiotic result of the US chasing away workers that it said it needed, that had proven themselves, and that american companies had spent time and money in training and getting experience to.