Google Maps and Grand Rapids WiFi

For the past few weeks I’ve been meaning to play with myGmaps, and last night I finally got the opportunity. I’d introduced a map view to Grand Rapids WiFi a few months ago, but I’ve never been entirely satisfied with the map in use or the flexibility of the zoom, so I decided to explore what it would take to move that data onto a google map.

Generating the required XML was very straightforward. Between this piece at Engadget and the tools at myGmaps it was very simple to add a new Smarty template to the site and get everything up and running. It’s a shame google didn’t go with some more standardised vocabularies (it would be wonderful to be able to pipe the existing RDF version of the site straight in), but at least the format is simple.

What I did find, however, was that my browsers quickly became unstable. I’d never seen Firefox‘s “A script is making Firefox become very slow, should I terminate it?” warning before last night, but plotting around 40 points on such a map triggered it. Reducing that to five points with an SQL LIMIT helped considerably, but at the cost of much of the map’s utility. The full maps is nice, but nowhere near stable enough to make a regular part of the site (I may put a link to it, but it will be with provisos).

I hope there’s a way to reduce the weight of this toolkit, as it’s definitely a far better map. If google were to launch a public API, perhaps we could start building more advanced applications which integrate directions and other tools. For now, it’s back to the drawing board for me, to try and work out a UI that lets me reduce the number of points plotted while still being useful for the user.

For those with plenty of RAM, you can find the full map at grwifi.net/gmaps/.

Tags: , , , ,

2 comments

  1. Coincidentally, I only stopped by your blog to suggest such an idea. As it turns out, you’re already working on it… so kudos. It looks great… I’m not exactly familiar with the specifics of myGmaps, but it might be nice if there was a way to allow a user to put in their location as well, and regenerate the map with that data.

  2. Thanks Michael. The easiest way to allow a user to input their location would probably be to generate the map only after they’d entered it. The map is generated dynamically from an XML file, so that wouldn’t be too hard to set up.

    What I’m wondering about setting up would be an interface that allows the user to enter an address and then choose whether to display the nearest 5/10/15 locations to that address. I might also try and set up some grouping (“show locations in Kentwood”, “show locations in Eastown”, “show locations downtown”) but will have to think a while longer about how best to define those groupings.