Non-competes are tricky: they essentially try to extend trade secret protections to information that people know (which is hard to track), instead of information that's written down (which is easy to track, see Waymo). It seems most people on HN are fine with protecting the latter, but not the former.
In my opinion, a non-compete is something that needs to be separately negotiated and compensated, rather than lumping it into "employment." If you agree to a non-compete, you are paid $X in exchange. If you violate the non-compete, you must pay $X back (and there could be a negotiated multiplier, e.g. $3X). In the absence of agreement, the legal default should be 1:1. If you are paid nothing for a non-compete, it is unenforceable. If you are paid $1, you must pay $1, and so on.
This gives each side an opportunity to value and agree upon the non-compete apart from the job itself. Eventually, most industries would settle on standards.
In many countries (e.g. Poland) non-competes are only legal if you pay X% (e.g. in Poland it is 25%) of salary for as long as you signed non-compete after your employment ends.
This is still not ideal. The best is to ban non-competes or make them even more expensive.
From economical perspective for ecosystem, non-competes are bad. They reduce the competition and may force some talented person to be underutilized below potential. Plus open whole class of abuse. "Our flipping burger strategy is so unique that you couldn't do it elsewhere"
In some states, non-competes are only enforceable if there is a payment made after the employee's separation. It would appear Washington doesn't have that provision.
In my opinion, a non-compete is something that needs to be separately negotiated and compensated, rather than lumping it into "employment." If you agree to a non-compete, you are paid $X in exchange. If you violate the non-compete, you must pay $X back (and there could be a negotiated multiplier, e.g. $3X). In the absence of agreement, the legal default should be 1:1. If you are paid nothing for a non-compete, it is unenforceable. If you are paid $1, you must pay $1, and so on.
This gives each side an opportunity to value and agree upon the non-compete apart from the job itself. Eventually, most industries would settle on standards.