Fun With Google Maps
If you have a list of locations, eventually you'll want to see them on a map – count on it.
An organization I work with gathered addresses and other useful information relevant to their mission with a web form and neatly downloaded all the information into a Google Docs spreadsheet. Eventually they decided they wanted to see it on a map. Turns out they can do that rather easily – no programming involved – by using one of the paid versions of Google Earth.
All spreadsheets can save their content as a .csv file (cells in a row are separated by commas). The paid versions of Google Earth have an import function for CSV files, which asks you which columns contain which address elements and then puts a dot on its map for each row. It works whether you have each element of the address in a separate column or have the address elements all run together as you'd enter them into a query for Google Maps. Non-address data from the spreadsheet can be displayed in the balloons for the entries when they're clicked on. Google Earth Plus is $20/year and can import up to 100 addresses at a time; Google Earth Pro is $400/year but will import as much as your machine has stomach for. Once the addresses have been loaded by a paid version of Google Earth, they can be saved as a KML file which even the free version of Google Earth can open.
There are a few drawbacks to this approach:
- If the addresses are entered incorrectly initially in the form that gathered them, they don't get coded so they don't appear on the map. "Incorrect" is whatever the map provider Google is using says it is so some addresses are bound to get rejected no matter what.
- You need to pay for one copy of Google Earth to create the KML files.
- Whoever is going to view the map with the points on it needs to have Google Earth (free version is fine). However, there are web-based viewers for KML available. One is here; only hitch is I haven't gotten it to work and don't have time to debug right now. But, if this works, it gives you an easy way to make your location data available on the web.
- Address-based geocoding is only available for certain countries.
If you can do it, it's better to gather your data on a map so the user has a chance to verify the location and correct any errors or negotiate a compromise with what the map provider expects as far as street names are concerned. That's what we did with Vermont Telecommunications Authority's "who has what broadband where" map. But collecting on a map takes some programming and may not be worth it for your project. With limitations, you can gather data on a form and make it visible on a map – no programming required.