A week doesn’t go by where someone doesn’t IM or email me with that question. So many people want to create mashups that they put the cart in front of the horse and don’t have any idea what to create. For every great mashup I see on Google Maps Mania there are probably 15 that come up in my RSS aggregator that I just wonder why did that person bother. I joke many times on this blog about “push pin mapping”, but used correctly it is a very powerful tool. The problem with many of these mashups in Google Maps (and others) is that they are stuck in your web browser. I can’t integrate them into other software packages. Simple is good, but there comes a time where you need to break out of this simple mindset and gain a larger audience.

When Google announced that Google Maps would now support KML/KMZ a light bulb appeared over my head. Why not mash the power of KML and Google Earth with Google Maps. Rather than using the Google Maps API to create your mashup, use KML so that you can allow people to view your data in Google Earth, ArcGIS and other platforms. But you can still offer that Google Maps front end for those who don’t want or have those software packages on their computer.

OK, but what about ideas? Well if you can’t find any good mashup ideas then I’d say don’t bother. Still you can find tons of websites that scream create me. One that I’ve used over the past few years is the City of Chandler Zoning Cases website. Chandler has been one of the fastest growing cities in the United States over the past 15 years (25% growth in the last 4 years) so there are tons of zoning cases going on. Chandler smartly put a url on their zoning signs so you can check out details of the zoning case without having to visit the city or any zoning meetings. Anyway you visit the Chandler Zoning Cases website and you are presented with a classic 1998 website with a scroll box listing of the current zoning cases and a map that you can’t click on. I won’t criticize the website as I’m sure it is done this way to make it easier to update (for the sake of all I hope that is the case), but it is screaming for so much more. When ArcWeb Explorer Javascript API came out, I created a small mashup, but never took it any farther.

Well putting these zoning cases into KML is just as easy as updating that webpage, probably much easier. I even created small little zoning signs to replace the default placemarks (you really get to know those orange zoning signs in Chandler). Then I created a network link so that the KML could be updated on the server and people wouldn’t have to re-download the KML (yea this is all old stuff for most of you). Anyway, here is the KML gelogoicon.gif of that old fashioned Zoning Cases website. One could easily add more information to the info balloons about the zoning cases beyond the URL link to the PDF on Chandler’s website that I added. Now users of the data can interact with it, rather than just download the PDF and scroll to the vicinity map. Add polygons to show the parcels that are affected and you’ll have as good a tool as the GIS tech that created the vicinity map.

Chandler's Zoning Cases

Also, as I said earlier, you can now use Google Maps to view the KML so users of the website can still take advantage of the data. In time Google plans to better support KML with Google Maps so I can envision a website that loads Google Maps, but has a link to the KML file for those who want to view in Google Earth.

Is this a mashup? Who the heck knows anymore what that definition is. Is has almost lost its meaning, but anytime you can take data and make it much easier to for your users to interact with, you can see the power in these tools. Data isn’t meant to be guarded by some Oracle Database Administrator (thats something in my past I still need to let go of), but given out to everyone to use.

Update - oh one more thought. If you use XML to store your markers in Google Maps, why not just create a KML and serve that up instead? KML is so much more valuable to the average user than strait XML is. Actually it wouldn’t be very hard to do this right now, maybe something for my next vacation.