I spend a lot of my time working with and developing Geographic Information software, especially graphical mapping applications. Recently I have been working a lot with the mapping data and JavaScript API provided by the Google Maps service, and I am very impressed with it. It’s very simple to use, and makes adding mapping capabilities to a website a breeze. I’ve used it extensively to display GPS data I’ve collected whilst hillwalking, an example of which can be seen here. A book I found very useful for helping with this was ‘Google Maps Hacks‘ from O’Reilly (my favourite publisher).
When using the Google Maps Javascript API in a website, the map data is streamed automatically over the internet from the Google servers, to appear dynamically using AJAX, and it’s very fast. You don’t have to worry about storing the map data locally, which means that you don’t have the hassle of updating the data or managing a geospatially-enabled database. It does mean of course, that at some point in the future Google may add advertising to their service, or turn it off altogether, but there’s no sign of that happening in the near future. And the software is open-source and licenced so that non-commercial usage is free for academic usage so I can use it for my work projects too.
The Google Maps JavaScript API is simple to use, but an alternative is the similar OpenLayers API which has a bit more advanced functionality, and which I have recently used to build a web-based mapping service for a scientific research organisation. The beauty of this API is that you can use it to serve map data from any WMS-compliant data service, not just Google Maps.
There are more advanced open-source web mapping applications than these (particularly UMN MapServer), but none can beat the Google Maps and OpenLayers JavaScript APIs for ease of use and simplicity.
Kate
I love Google Maps too, mainly just from a user’s point of view. I used to think Multimap was a decent site but compared to Google Maps it’s like a museum piece.
I do wish they would sort out the site so I could get the same functionality when I access it from my mobile right enough.