Here in Minnesota, the state legislature just passed a law that outright bans non-compete agreements (sometimes called restrictive covenants, in legalese). My own humble opinion is that this type of ban goes way too far, both as a matter of fairness to employers (whose investments in IP and human capital deserve protection) and because of the unintended negative effects this legislation will likely have on economic activity and innovation. One of my law partners who has lots of experience litigating these cases recently made a similar case in an op-ed published in our local paper, the Star Tribune:

Obviously the law around non-competes will be different in every state. But no matter where you're doing business, remember that state laws can change, and contracts / principles that we long assumed were enforceable may not be as ironclad as we think.