It also badly needs proximity based search. People don't find me unless they enter Berkeley in the location field, so I'm stuck between listing San Francisco for more hits or Berkeley for more accuracy.
Its a text based search and I'm working on some simple query expansion to resolve SF / Bay Area / San Francisco type queries as the same. There are still a few open questions for implementing proximity search ...
A simple approach is to just geocode all the locations to a lat/lon and do a proximity search using WGS84. If someone has a location entry in their profile that fails geocoding, put up a warning the next time they login telling them that their location was not resolved and they should update it.
Don't worry about queries like "SF" or "Bay area"... if it's not good enough for the geocoder to resolve the location, just return an error message.