In one of my previous gigs, the language of the non-compete was so broad that it engulfed in scope the entire industry - being legal language it was borderline ambiguous, one of those things you could argue either way. Anyway, that 'argue either way' piece could encompass what's basically the biggest and highest-paying employing industry in IT here.
One guy I knew there had told me that, after he got an offer from a new employer, sent them the non-compete of this current place - and never heard from them again. It was for a mid-level manager role in a large corporation in a very cautious (in a CYA way) industry. It was even worse because both of us has understood from management that they'll probably not enforce it, unless one of the partners feels resentful and could send the lawyers your way.
It has a chilling effect that's totally beyond the scope of the usefulness of the employer demanding the non-compete, especially when you encompass a whole industry.
I think that the right approach is to legislate to make them illegal (like in California, right?), or enforce some compensatory aspect like in some countries as people in this thread mentioned (eg. I'd love to be paid 70% of my salary during the period of non-compete). The most likely scenario in favor of the employee right now I believe is the courts having the employer show that damage was committed in order for the contract to be valid. I'm pretty sure this employer got around that by tying the non-compete+non-solicitation to stock option grants!
It's nice to say that contracts are freely entered into. They are not freely fought over when things are disputed, however. We're not on an equal playing field if my employer can afford legal representation and I can't, and that's a very real financial threat that is a form of coercion.