With all that complaining about signing away your right to sue and work, why do you think it's OK to sign away your right to speak? Serious question.
NDAs are also bs mostly but they cover company specific confidential information and possibly information on clients, contractors, employees etc. All of that is fair to not speak about as that is their property and what they are doing.
Non-competes want you to usually stop using your skills that you brought to the company, with other companies. It is really absurd when a company that wants a 6-month contract wants a non-compete for 2 years, laughable.
Not discussing confidential material shared with you on condition of your employer with an NDA is quite similar IMO to not sharing material information about a company's health days before their public earnings call. 1st amendment rights are not absolute. I'm not allowed to engage in libel, yell "Fire!" in a crowded theater, etc. I think abiding by NDA's about internal, confidential information is analagous and helps promote real, fair competition.
Every time you say, "yell 'Fire!' in a crowded theater," a civil rights lawyer is forced to kick a puppy.
Imagine a physician signing a non-compete. What's he supposed to do then? Not practice medicine and go be a consultant or something?
My nephew was asked to sign a non-compete in a sandwich shoppe, to protects the trade secrets of making a ham sandwich!
This is not related to 1st amendment; this is no law being passed by congress or any government body. Nothing prevents a person from speaking after an NDA is signed - they won't get tossed in jail, because no law was broken. However, after doing so, they will be responsible for any civil penalties they agreed to when they signed the contract.