A thought leader in geolocation from the company that created Loki gave a talk about geolocation on the web. His first recommendation was to build your applications to adopt latitude and longitude as the basic unit of location. He then went on to talk about all the other ways location can be represented. For example, the names of business, location descriptions, planar areas (rather than points) on a map, etc. These are generally much more welcome in the UX than map coordinates.
Some ways of getting local businesses are:
- Yahoo! Local Search API
One interesting stat is the precision one can expect from the various means of geolocation.
- GPS can be accurate to within 10m for commercial applications
- Wifi (database lookup and triangulation from SSIDs and signal strength) can be as good as 20m up to 80m
- Cell towers are up around 1000m
- IP address based schemes are wildly inaccurate and limited to city/region precision
Loki.com/how and Google Gears utilize hybrid approaches to do geolocation, obviously, to balance speed of acquisition, device capability, desire precision, etc.