I say that as someone who lived in the Bay area for almost a year and loved it. I had a great job, generated tons of wealth, got full-time offers with generous signing bonuses that I would have accepted in a heartbeat if it was not for the fact that not having a degree makes it impossible for me to get a visa.
The process would be a lot better for me if the work visa were simply allocated to the top N people in a priority queue where the weight of each entry is the salary.
Zurich, Toronto, and Montreal are my top choices now.