Ok so basically I am talking with someone about building a way for users to post locations to a map and have a pin over the location.
I know Google Maps can do this and probably has the best documentation/support. I was just wondering if/what other options there are. I have found Pushpin and Mappy but I really don't know much about either of them.
So what maps do you all work with/why?
So to answer your question. I use the Google Maps API.
Why?
I think there are a whole lot of good reasons that make Google Maps an extremely valuable mapping solution for web developers. I realise I will probably sound like a hand waving evangelist, but here goes:
- Very well documented API
- Access to a range of excellent tile sets for your maps (topographic, satellite, road maps, terrain).
- Access to the Google Earth 3D plugin with very few changes to a standard Google Maps site.
- Constant upgrades and improvements to the API and it's features. I started working on my Google Maps project a few years ago and in that time I have seen new tilesets, the upgraded GUI controls, mousewheel zoom, Google Earth plugin ... I am sure this list will get longer.
- StreetView. I don't actually use this myself, but Streetview is a fantastic feature that isn't duplicated in the other mapping solutions.
- Extensive set of very useful tools in the API. GLog, distance calculations, GLatLngRegion etc ...
- GeoCoding. I recently dabbled with the GeoCoding API that Google provides and found it was very easy to use and extremely powerful.
- The Google Maps Group - I have asked these guys for a help a number of times and found prompt and accurate responses that rival StackOverflow.
- Ability to overlay tiles over the Google map tiles (GOverlay).
- Ability to implement entirely custom tilsets that leverage the Google Maps scaling/panning framework.
- Custom map themes allows you to integrate the map look and feel with your page color scheme.
Have a look at OpenStreeMaps. No licencing issues.
If you want to use a framework for building applications around maps in Java, you should have a look at http://www.geomajas.org/ which is an open source web mapping framework. This gives you both a mapping front end (using GWT), and powerful integration of different data sources. Amongst other options, you could use OpenStreetMaps for base data and integrate that with many other layers. And it is all pure java.