Hack 35. Search Local, Find Global
Google and Yahoo! are entering the localized-search field with inherent advantages, but there's plenty of room for smaller, deeper spatial search interfaces.
The big search engines were not slow to realize the great potential in the geospatial web: targeted, localized advertising! Geocoded information and spatial metadata, combined with natural-language inference techniques, can massively enrich the relevance and narrative of the search engine offerings. It's probably better to have information with "local color" covered densely over a small area, rather than broad coverage from afar, so the game changes a bit for the big searches. "Big iron" infrastructure helps a lot with spatial analysis, and the trend towards centralized aggregation of local information is currently strong.
Both the two major search engines, Google and Yahoo!, have local search services in beta, as of this writing. Visit http://local.yahoo.com/ and http://local.google.com/ to compare and contrast. Both sites let you type in a city and state (or U.S. ZIP Code) and a search term or set of terms, find local points of interest, and plot the search results on a map. Figures Figure 4-1 and Figure 4-2 compare the results for the same search"Maps" in "San Francisco, CA"on both Google and Yahoo! Local search sites.
Figure 4-1. Google local search results, mapped
Figure 4-2. Yahoo! local search results, mapped
The search results are backed by business directory services, and it shows. What these pictures show is 10 search results at a time plotted as colored, lettered icons over a MapQuest-style street map. This is arguably the simplest thing that will work, but lacks a real aesthetic. Google adheres to its familiar look and feel, though it has tried hard to make more out of the spatial arrangement of the map on the web page since its late-2004 relaunch. Spatial search and locative services can and should be about so much more than a business directory with a map on it! Local online authors, public services, campaigns, local history and characters, imagery and media annotation are all things that a local search has the potential to reveal and represent.
One noteworthy point about Google's local search service: when searching for "Doctor," the sponsored ads at the top of each page have managed to infer or assume that you're looking for a medical doctor's services. The top place search results, however, feature many other services that have the name "doctor" in their title: Bike Doctor, Tofu Doctor, Doctor Bombay's Bar. It's frustrating to see inference, or keyword-purchase, for advertising being done with better taste and efficiency than inference about actual documents on the Web. Yahoo! Local search currently handles this kind of sense disambiguation much more smartly, inferring the right context for a word with multiple potential meanings
Both Google and Yahoo! Local search use the NavTeq data set for their maps; as of writing, the map display essentially looks identical.
Yahoo! Local search offers its own rating system, available for use by logged-in site members. Integration with the rest of an online profile seems like the big win for its service; the site uses logged-in member status to its advantage, allowing you to store a number of "Saved Locations" of personal interest. Google, a server-side lightweight, allows you to store only one location in a cookie. However, Google scores points for trying to direct you to other sites offering relevant ratings and reviews for the places in your search results, including a list of other sites that refer to the one you're looking at.
Google displays your results as part of a larger category index, showing you what it thinks are subcategories of what you searched for. Yahoo! doesn't display this information, though Google's category system is probably based on Yahoo!'s directory in the first place! Perhaps the existence of long-established categories of similarity underlies Yahoo!'s superficially better presentation of relevant results.
4.2.1. Hacking Local Search URLs
The simplest Google local search URL is as follows:
http://local.google.com/local?q=maps&near=94110&dm=full
The near value is a U.S. ZIP Code. You can also append the start parameter to page through the search results 10 at a time. For example, this URL does the same search but starts at the 20th listing:
http://local.google.com/local?q=maps&near=94110&dm=full&start=20
The simplest equivalent Yahoo! URL is not quite as human-readable:
http://local.yahoo.com/mapview?csz=94110&ip=94110&stx=maps
As always with commercial map sites, remember to check your Terms of Service before trying interesting hacks!
4.2.2. Looking for More
The current mainstream local search interfaces are promising but underwhelming. What stops the big searches from joining the mapping revolution and experimenting with more dynamic, rich GIS-style interfaces to their local search applications? Perhaps it's a fear that, at the lowest common denominator, people won't use them.
Simple extra features like a set of "my saved places," the ability to select individual points (or shapes) to overlay on a map, and the ability to re-set the spatial center of the query by clicking on the map do not raise the bar for web-enabled GIS or involve much skill in implementation.
The picture of local search services changes in a putative near-future world where mobile devices and soft phones are picking up and querying for services in the local area. Collaborative filtering and social history of local information are becoming both practical and necessary.
As of this writing, Google and Yahoo! provide local search and map services for the United States only. There's no European, African or Asian equivalent for the service that we know of; and the pain of making separate licensing negotiations with each different national mapping vendor works against economies of scale.