While looking at how to connect Excel to Google Maps, I implemented a capability in vba for each of the main Apis for geoCoding capability through a simple http: request. You can read more about this comparison on the Excel Ramblings Site. I’ve also now implemented the same thing to plot Excel Data directly to Google Maps, Ovi Maps, Bing Maps and Yahoo! Maps (although Yahoo maps is about to close down I understand).
Comparing Mapping capabilities
I have already covered geoMapping, where the winners were Google (despite its complex response format) and Yahoo PlaceMaker. Scores for geoCoding Google 7/10, Yahoo 7/10, Ovi 0/10 (I couldn’t find its REST interface URL anywhere) and Bing a pathetic 2/10. Bing also sends back a bunch of junk in its REST response in addition to the data you’ve asked for.
Ease of implementation
The easiest to implement was Google Maps. The code is clean and basic things you might want to do like pop up an info window onClick and show a pushpin label when mouseOver (and get rid of it again on mouseLeave) were all built in. In fact there was basically no code to write – just get the data in the right format and go.
Yahoo Maps! was almost as simple, very much mirroring the Google approach.Yahoo! – 8/10
Ovi Maps was more of a chore with more coding needed for infoWindow and pushPin event handling, but it does have a very rich API and the capability to do many cool things. The documentation for the API (yes I needed to look it up for Ovi Maps) seems to have been written by an alien for aliens and is somehow boring and esoteric at the same time. They do provide a playground which is a strange hybrid of menu driven and code based as if they haven’t really decided who their audience is. Nevertheless, it was pretty easy to figure out once you got past the weirdness.Ovi – 6/10
Bing is of course different, like all things Microsoft. It expects you to be very hands on in a number of ways such as dealing with infoBox and pushPin events, and if you want to use html to layout the interior of an infoBox (as opposed to using the preset title, description etc), then things like a pointer on the box and other various other properties dont seem to work. Their playground is pretty good though, and their documentation is patchy – for example they have decided to call their mouseLeave event mouseOut and but strangely it is referred to as mouseLeave in the documentation – so you can imagine how much time wasting that caused.Bing – 5/10
Richness of capability
For the purposes of this article I only tested a specific number of capabilities, and as a constraint i wanted to keep the input items to be plotted in exactly the same format – so this is a pretty unscientific score based only on what I noticed while implementing this test.
Google – 9/10, Yahoo – 6/10 , Ovi – 9/10 , Bing 7/10
This is subjective of course, but just considering the standard views then both Ovi and Bing have beautiful rendering, followed by Yahoo and Google which is looking a bit jaded now. Bing is let down by the quality of its pushpins and info boxes, but the map quality is excellent.
Google – 5/10, Yahoo – 5/10 , Ovi – 9/10 , Bing 8/10
All of these have terms and conditions of course, and some of them need a key. Ovi said it needed a key but worked without one anyway, Yahoo needs a key that was easy to get, and Bing needs a Key that was 64 characters long and has an 11 page PowerPoint and a video to tell you how simple it is to get one. Got it in the end I guess. Google doesn’t need a key, but cuts you off after you exceed a rather small daily number of geoCode requests.
- Google Maps – 35/50
- Ovi Maps – 33/50 (May have won if it had a REST geocode capability)
- Yahoo! Placemaker + Yahoo! Maps – 32/50 (but remember it’s closing down)
- Bing Maps – 27/50
So Google wins through simplicity, Microsoft Fails by trying too hard and by giving something a stupid name, Yahoo gives up and Ovi (or is Nokia again) has a great solution but loses it’s way through branding and communication. Sound familiar?