some others that didn't make the list:
* must know people, i actually didn't know anyone when i moved to atlanta, boston, tokyo, or shanghai, i ended up making a lot of friends in each place, so i don't find this to be a requirement. * family close by, i think this is more important as i get older, i used to want to get as far away from my parents as possible, now, even though i don't live remotely close to my father, i yearn for the days where i could see him regularly. * great weather, meaning warm usually and good air quality. since i'm in the city, the air quality's not that great, so i've come to deal with it, it's important, but i've never prioritized based on this.
i live in shanghai, it fits all of the requirements above, great city, safe, lots of good high tech companies, just that my family is in the states, and the air quality could be better.