MLNN, if you think about it, a non-compete is a good idea, IF you happen to be in a sensitive position. If you worked for Google for a number of years and had an intimate knowledge of how their searching algorithm worked, would the brass really want you going to Yahoo with that knowledge being current? It would reduce Google's effectiveness as a company, and what's more, that's their proprietary data, which you might then pass on to another company.
A good idea for who? If I worked for Google and acquired knowledge of how their search engine works, that's my knowledge, it leaves with me. If they don't want me to acquire that knowledge they should do the work themselves. NDA's are complete crap, they are protectionism at it's best, and completely against the principles of a free market.
Nothing is more admirable than the fortitude with which millionaires tolerate the disadvantages of their wealth. -- Nero Wolfe