I'm an engineer on the east coast and I signed one of these when I got my latest job. It's understandable why companies want them -- to prevent competitors from snatching up talent (and therefore, cutting edge institutional knowledge). Obviously it sucks for us peons because we learn a very specialized skill and then can't apply it.
I wish there was some solution to intellectual property rights that didn't involve armies of lawyers, so that the working man can do an honest job and at the same time, his former employer isn't on the hook...
There is a solution for employers to protect their intellectual property rights while respecting employee mobility: trade secret law and non-disclosure agreements. Both work just fine without a non-compete agreement.
In the states that allow non-competes, often the employer combines a non-disclosure obligation with the non-compete, which can be confusing. A non-disclosure agreement prohibits the departing employee from disclosing trade secrets and other proprietary information learned at the first employer to the subsequent employer, and is enforceable even in states like California, which prohibits non-competes. A non-disclosure agreement coupled with a trade secret protection program, along with patent and copyright law where applicable, are typically sufficient to protect an employer's interests without a non-compete.
In short, you're allowed to bring your skills to a competitor, but you aren't allowed to bring your former employer's trade secrets with you. It's a compromise that seems to work in California.