<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en-us" xmlns="http://www.w3.org/2005/Atom"><title>Simon Willison's Weblog: google-maps</title><link href="http://simonwillison.net/" rel="alternate"/><link href="http://simonwillison.net/tags/google-maps.atom" rel="self"/><id>http://simonwillison.net/</id><updated>2020-12-29T20:32:08+00:00</updated><author><name>Simon Willison</name></author><entry><title>Quoting Joe Morrison</title><link href="https://simonwillison.net/2020/Dec/29/joe-morrison/#atom-tag" rel="alternate"/><published>2020-12-29T20:32:08+00:00</published><updated>2020-12-29T20:32:08+00:00</updated><id>https://simonwillison.net/2020/Dec/29/joe-morrison/#atom-tag</id><summary type="html">
    &lt;blockquote cite="https://joemorrison.substack.com/p/google-maps-moat-is-evaporating"&gt;&lt;p&gt;You know Google Maps? What I do is, like, build little pieces of Google Maps over and over for people who need them but can’t just use Google Maps because they’re not allowed to for some reason, or another.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p class="cite"&gt;&amp;mdash; &lt;a href="https://joemorrison.substack.com/p/google-maps-moat-is-evaporating"&gt;Joe Morrison&lt;/a&gt;&lt;/p&gt;

    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;&lt;/p&gt;



</summary><category term="google-maps"/></entry><entry><title>Google Maps’s Moat</title><link href="https://simonwillison.net/2017/Dec/23/google-maps-moat/#atom-tag" rel="alternate"/><published>2017-12-23T09:35:25+00:00</published><updated>2017-12-23T09:35:25+00:00</updated><id>https://simonwillison.net/2017/Dec/23/google-maps-moat/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="https://www.justinobeirne.com/google-maps-moat"&gt;Google Maps’s Moat&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Gorgeous essay by digital cartographer Justin O’Beirne, exploring how Google Maps has evolved over time and how the fantastically useful “areas of interest” feature (where commercial corridors and business districts are automatically highlighted) uses data derived from a combination of Street View business data and 3D building outlines derived from aerial imagery.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/cartography"&gt;cartography&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/streetview"&gt;streetview&lt;/a&gt;&lt;/p&gt;



</summary><category term="cartography"/><category term="google-maps"/><category term="streetview"/></entry><entry><title>Is there an open source (or freely accessible) database of geofence coordinates for common places, such as cities or national parks?</title><link href="https://simonwillison.net/2013/Dec/3/is-there-an-open/#atom-tag" rel="alternate"/><published>2013-12-03T12:59:00+00:00</published><updated>2013-12-03T12:59:00+00:00</updated><id>https://simonwillison.net/2013/Dec/3/is-there-an-open/#atom-tag</id><summary type="html">
    &lt;p&gt;&lt;em&gt;My answer to &lt;a href="https://www.quora.com/Is-there-an-open-source-or-freely-accessible-database-of-geofence-coordinates-for-common-places-such-as-cities-or-national-parks/answer/Simon-Willison"&gt;Is there an open source (or freely accessible) database of geofence coordinates for common places, such as cities or national parks?&lt;/a&gt; on Quora&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Take a look at Flickr's openly licensed shapefiles:&lt;/p&gt;

&lt;span&gt;&lt;a href="http://code.flickr.net/2011/01/08/flickr-shapefiles-public-dataset-2-0/"&gt;http://code.flickr.net/2011/01/0...&lt;/a&gt;&lt;/span&gt;

&lt;p&gt;They are derived from the collective opinion of Flickr's community as to what name should apply to different areas around the world.&lt;/p&gt;
    
        &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/databases"&gt;databases&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/geolocation"&gt;geolocation&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/location"&gt;location&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/maps"&gt;maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/open-source"&gt;open-source&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/quora"&gt;quora&lt;/a&gt;&lt;/p&gt;
    

</summary><category term="databases"/><category term="geolocation"/><category term="google-maps"/><category term="location"/><category term="maps"/><category term="open-source"/><category term="quora"/></entry><entry><title>Does the Google Maps API let you remove details of the map such as street names to focus on pins on the map?</title><link href="https://simonwillison.net/2013/Nov/12/does-the-google-maps/#atom-tag" rel="alternate"/><published>2013-11-12T14:33:00+00:00</published><updated>2013-11-12T14:33:00+00:00</updated><id>https://simonwillison.net/2013/Nov/12/does-the-google-maps/#atom-tag</id><summary type="html">
    &lt;p&gt;&lt;em&gt;My answer to &lt;a href="https://www.quora.com/Does-the-Google-Maps-API-let-you-remove-details-of-the-map-such-as-street-names-to-focus-on-pins-on-the-map/answer/Simon-Willison"&gt;Does the Google Maps API let you remove details of the map such as street names to focus on pins on the map?&lt;/a&gt; on Quora&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Yes - you can do this with map styles (which allow you to set the visibility if road labels, among other things): &lt;span&gt;&lt;a href="http://developers.google.com/maps/documentation/javascript/styling"&gt;http://developers.google.com/map...&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
    
        &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/apis"&gt;apis&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/maps"&gt;maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/quora"&gt;quora&lt;/a&gt;&lt;/p&gt;
    

</summary><category term="apis"/><category term="google-maps"/><category term="maps"/><category term="quora"/></entry><entry><title>Web app: what programming knowledge do I need to create a goings on app?</title><link href="https://simonwillison.net/2013/Aug/7/web-app-what-programming/#atom-tag" rel="alternate"/><published>2013-08-07T18:42:00+00:00</published><updated>2013-08-07T18:42:00+00:00</updated><id>https://simonwillison.net/2013/Aug/7/web-app-what-programming/#atom-tag</id><summary type="html">
    &lt;p&gt;&lt;em&gt;My answer to &lt;a href="https://www.quora.com/Web-app-what-programming-knowledge-do-I-need-to-create-a-goings-on-app/answer/Simon-Willison"&gt;Web app: what programming knowledge do I need to create a goings on app?&lt;/a&gt; on Quora&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;For this kind of application a much more important question than "how can I build it? is "where will I get the data from?" - If you don't have a good answer for that building the app is a waste of your time. The world is littered with local events listings apps that no one uses because they don't have good data.&lt;/p&gt;
    
        &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/mobileweb"&gt;mobileweb&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/programming-languages"&gt;programming-languages&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/python"&gt;python&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/quora"&gt;quora&lt;/a&gt;&lt;/p&gt;
    

</summary><category term="google-maps"/><category term="mobileweb"/><category term="programming-languages"/><category term="python"/><category term="quora"/></entry><entry><title>Why is everyone so obsessed with picking faults with Apple's new maps on the iPhone?</title><link href="https://simonwillison.net/2012/Sep/20/why-is-everyone-so/#atom-tag" rel="alternate"/><published>2012-09-20T16:25:00+00:00</published><updated>2012-09-20T16:25:00+00:00</updated><id>https://simonwillison.net/2012/Sep/20/why-is-everyone-so/#atom-tag</id><summary type="html">
    &lt;p&gt;&lt;em&gt;My answer to &lt;a href="https://www.quora.com/Why-is-everyone-so-obsessed-with-picking-faults-with-Apples-new-maps-on-the-iPhone/answer/Simon-Willison"&gt;Why is everyone so obsessed with picking faults with Apple&amp;#39;s new maps on the iPhone?&lt;/a&gt; on Quora&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Because this is actually a really big deal. For a lot of people (especially those who live in a big city like London or New York) the maps app is one of the most-used apps on their phone. The new iOS maps are a huge regression, not just in terms of map quality but also in terms of search results. On iOS 6 (at least here in the UK) you can't even type in a simple address and trust that your phone will show you a pin in the right place.&lt;/p&gt;

&lt;p&gt;It's big news because thousands of people are upgrading their devices and discovering that a feature that used to be excellent and essential on a day-to-day basis is now decidedly sub-par.&lt;/p&gt;
    
        &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/android"&gt;android&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/quora"&gt;quora&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/iphones"&gt;iphones&lt;/a&gt;&lt;/p&gt;
    

</summary><category term="android"/><category term="google-maps"/><category term="quora"/><category term="iphones"/></entry><entry><title>Google Maps and Label Readability</title><link href="https://simonwillison.net/2010/Dec/3/cartography/#atom-tag" rel="alternate"/><published>2010-12-03T17:08:00+00:00</published><updated>2010-12-03T17:08:00+00:00</updated><id>https://simonwillison.net/2010/Dec/3/cartography/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.41latitude.com/post/2072504768/google-maps-label-readability"&gt;Google Maps and Label Readability&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Obsessively detailed analysis of exactly what makes Google Maps so readable when compared to Yahoo! and Bing.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/cartography"&gt;cartography&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/recovered"&gt;recovered&lt;/a&gt;&lt;/p&gt;



</summary><category term="cartography"/><category term="google-maps"/><category term="recovered"/></entry><entry><title>How come Google Maps provides so many more local Wikipedia entries that GeoNames?</title><link href="https://simonwillison.net/2010/Nov/1/how-come-google-maps/#atom-tag" rel="alternate"/><published>2010-11-01T11:47:00+00:00</published><updated>2010-11-01T11:47:00+00:00</updated><id>https://simonwillison.net/2010/Nov/1/how-come-google-maps/#atom-tag</id><summary type="html">
    &lt;p&gt;&lt;em&gt;My answer to &lt;a href="https://www.quora.com/How-come-Google-Maps-provides-so-many-more-local-Wikipedia-entries-that-GeoNames/answer/Simon-Willison"&gt;How come Google Maps provides so many more local Wikipedia entries that GeoNames?&lt;/a&gt; on Quora&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;My guess is that GeoNames just uses the latitude/longitude fields from Wikipedia (you can see them in the top right corner of most pages that describe a place), whereas Google actually do some text analysis and attempt to geocode articles themselves, even if they don't have an exact latitude longitude assigned to them.&lt;/p&gt;
    
        &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/wikipedia"&gt;wikipedia&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/quora"&gt;quora&lt;/a&gt;&lt;/p&gt;
    

</summary><category term="google-maps"/><category term="wikipedia"/><category term="quora"/></entry><entry><title>Diffable: only download the deltas</title><link href="https://simonwillison.net/2010/Jul/11/diffable/#atom-tag" rel="alternate"/><published>2010-07-11T12:19:00+00:00</published><updated>2010-07-11T12:19:00+00:00</updated><id>https://simonwillison.net/2010/Jul/11/diffable/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.stevesouders.com/blog/2010/07/09/diffable-only-download-the-deltas/"&gt;Diffable: only download the deltas&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
JavaScript library for detecting and serving diffs to JavaScript rather than downloading large scripts every time a few lines of code are changed. “Using Diffable has reduced page load times in Google Maps by more than 1200 milliseconds (~25%). Note that this benefit only affects users that have an older version of the script in cache. For Google Maps that’s 20-25% of users.”


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/javascript"&gt;javascript&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/performance"&gt;performance&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/steve-souders"&gt;steve-souders&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/recovered"&gt;recovered&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/diffable"&gt;diffable&lt;/a&gt;&lt;/p&gt;



</summary><category term="google-maps"/><category term="javascript"/><category term="performance"/><category term="steve-souders"/><category term="recovered"/><category term="diffable"/></entry><entry><title>getlatlon.com commit dae961a...</title><link href="https://simonwillison.net/2010/Jul/10/commit/#atom-tag" rel="alternate"/><published>2010-07-10T12:22:00+00:00</published><updated>2010-07-10T12:22:00+00:00</updated><id>https://simonwillison.net/2010/Jul/10/commit/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://github.com/simonw/getlatlon.com/commit/dae961a014979b711bbb36d0c6c129bcc37e7a4a"&gt;getlatlon.com commit dae961a...&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
I’ve finally added an OpenStreetMap tab to getlatlon.com—here’s the diff, it turns out adding a custom OpenStreetMap layer to an existing Google Maps application only takes a few lines of boilerplate code.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/getlatlon"&gt;getlatlon&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/javascript"&gt;javascript&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/openstreetmap"&gt;openstreetmap&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/projects"&gt;projects&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/recovered"&gt;recovered&lt;/a&gt;&lt;/p&gt;



</summary><category term="getlatlon"/><category term="google-maps"/><category term="javascript"/><category term="openstreetmap"/><category term="projects"/><category term="recovered"/></entry><entry><title>Cartographer.js</title><link href="https://simonwillison.net/2009/Nov/1/cartographerjs/#atom-tag" rel="alternate"/><published>2009-11-01T13:20:05+00:00</published><updated>2009-11-01T13:20:05+00:00</updated><id>https://simonwillison.net/2009/Nov/1/cartographerjs/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://cartographer.visualmotive.com/"&gt;Cartographer.js&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
“Thematic mapping for Google Maps”—which means an easy way of adding heat maps (aka chloropleths), pie charts and point clusters as a layer over a Google map.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/catography"&gt;catography&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/chloropleths"&gt;chloropleths&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google"&gt;google&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/graphs"&gt;graphs&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/heatmaps"&gt;heatmaps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/infographics"&gt;infographics&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/mapping"&gt;mapping&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/maps"&gt;maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/piecharts"&gt;piecharts&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/visualisation"&gt;visualisation&lt;/a&gt;&lt;/p&gt;



</summary><category term="catography"/><category term="chloropleths"/><category term="google"/><category term="google-maps"/><category term="graphs"/><category term="heatmaps"/><category term="infographics"/><category term="mapping"/><category term="maps"/><category term="piecharts"/><category term="visualisation"/></entry><entry><title>Static Maps API v2</title><link href="https://simonwillison.net/2009/Aug/26/google/#atom-tag" rel="alternate"/><published>2009-08-26T09:01:43+00:00</published><updated>2009-08-26T09:01:43+00:00</updated><id>https://simonwillison.net/2009/Aug/26/google/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://googlegeodevelopers.blogspot.com/2009/08/static-maps-api-v2-encoded-paths.html"&gt;Static Maps API v2&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
The new version of the Google Static Maps API (static images generated using arguments in a URL, no JavaScript required) adds support for paths, areas and automatically geocoding addresses to specify locations of markers and the centre of the map.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/google"&gt;google&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/mapping"&gt;mapping&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/staticmapsapi"&gt;staticmapsapi&lt;/a&gt;&lt;/p&gt;



</summary><category term="google"/><category term="google-maps"/><category term="mapping"/><category term="staticmapsapi"/></entry><entry><title>Making Image Overlays Easy with GGroundOverlay and GGeoXML</title><link href="https://simonwillison.net/2009/Jul/30/overlays/#atom-tag" rel="alternate"/><published>2009-07-30T22:58:04+00:00</published><updated>2009-07-30T22:58:04+00:00</updated><id>https://simonwillison.net/2009/Jul/30/overlays/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://googlemapsapi.blogspot.com/2007/05/v280-making-image-overlays-easy-with.html"&gt;Making Image Overlays Easy with GGroundOverlay and GGeoXML&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Surprisingly, there doesn’t appear to be a good online tool for helping align an overlay image with a Google Map and exporting the result as a KML file. This is the best I could find—Yahoo! used to have a tool called MapMixer but it doesn’t seem to exist any more.

    &lt;p&gt;&lt;small&gt;&lt;/small&gt;Via &lt;a href="http://twitter.com/psychemedia/status/2934986818"&gt;Tony Hirst&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/maps"&gt;maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/overlays"&gt;overlays&lt;/a&gt;&lt;/p&gt;



</summary><category term="google-maps"/><category term="maps"/><category term="overlays"/></entry><entry><title>Hack Day tools for non-developers</title><link href="https://simonwillison.net/2009/Jul/28/tools/#atom-tag" rel="alternate"/><published>2009-07-28T14:23:53+00:00</published><updated>2009-07-28T14:23:53+00:00</updated><id>https://simonwillison.net/2009/Jul/28/tools/#atom-tag</id><summary type="html">
    &lt;p&gt;We're about to run our second internal hack day at the Guardian. The first was &lt;a href="http://www.guardian.co.uk/global/insideguardian/2008/nov/18/guardian-hack-day-results" title="Results from Hack Day at the Guardian"&gt;an enormous amount of fun&lt;/a&gt; and the second one looks set to be even more productive.&lt;/p&gt;

&lt;p&gt;There's only one rule at hack day: build something you can demonstrate at the end of the event (Powerpoint slides don't count). Importantly though, our hack days are not restricted to just our development team: anyone from the technology department can get involved, and we extend the invitation to other parts of the organisation as well. At the Guardian, this includes journalists.&lt;/p&gt;

&lt;p&gt;For our first hack day, I put together a list of "tools for non-developers" - sites, services and software that could be used for hacking without programming knowledge as a pre-requisite. I'm now updating that list with recommendations from elsewhere. Here's the list so far:&lt;/p&gt;

&lt;h4&gt;&lt;a href="http://www.freebase.com/"&gt;Freebase&lt;/a&gt;&lt;/h4&gt;

&lt;p&gt;Originally a kind of structured version of Wikipedia, Freebase changed its focus last year towards being a "social database about things you know and love". In other words, it's the most powerful OCD-enabler in the history of the world. Create your own "Base" on any subject you like, set up your own types and start gathering together topics from the millions already available in Freebase - or add your own. Examples include the &lt;a href="http://battlestargalactica.freebase.com/"&gt;Battlestar Galactica base&lt;/a&gt;, the &lt;a href="http://tallships.freebase.com/"&gt;Tall Ships base&lt;/a&gt; and the fabulous &lt;a href="http://database.freebase.com/"&gt;Database base&lt;/a&gt;. If you &lt;em&gt;are&lt;/em&gt; a developer the tools in the &lt;a href="http://www.freebase.com/make"&gt;Make Things with Freebase&lt;/a&gt; section are top notch.&lt;/p&gt;

&lt;h4&gt;&lt;a href="http://www.dabbledb.com/"&gt;Dabble DB&lt;/a&gt;&lt;/h4&gt;

&lt;p&gt;Dabble is a weird combination of a spreadsheet, an online database and a set of visualisation tools. Watch the 8 minute demo to get an idea of how powerful this is - you can start off by loading in an existing spreadsheet and take it from there. You'll need to sign up for the free 30 day trial.&lt;/p&gt;

&lt;h4&gt;&lt;a href="http://docs.google.com/"&gt;Google Docs&lt;/a&gt;&lt;/h4&gt;

&lt;p&gt;You can always build a hack in Excel, but &lt;a href="http://docs.google.com/"&gt;Google Spreadsheets&lt;/a&gt; is surprisingly powerful and means that you can collaborate with others on your hack (including developers, who can use the Google Docs API to get at the data in your spreadsheet). Check out the following tutorials, which describe ways of using Google Spreadsheets to scrape in data from other webpages and output it in interesting formats:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://ouseful.wordpress.com/2008/10/14/data-scraping-wikipedia-with-google-spreadsheets/"&gt;Data Scraping Wikipedia with Google Spreadsheets&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://ouseful.wordpress.com/2008/10/23/calling-amazon-associatesecommerce-web-services-from-a-google-spreadsheet/"&gt;Calling Amazon Associates/Ecommerce Web Services from a Google Spreadsheet&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There's also a simple way to &lt;a href="http://docs.google.com/support/bin/answer.py?hl=en&amp;amp;answer=87809"&gt;create a form&lt;/a&gt; that submits data in to a Google Spreadsheet.&lt;/p&gt;

&lt;h4&gt;&lt;a href="http://pipes.yahoo.com/"&gt;Yahoo! Pipes&lt;/a&gt;&lt;/h4&gt;

&lt;p&gt;Visual tools for combining, filtering and modifying RSS feeds. Combine with the large number of &lt;a href="http://www.guardian.co.uk/help/insideguardian/2008/oct/22/full-fat-rss-feed-upgrade" title="Upgrading our RSS feeds"&gt;full-content feeds on guardian.co.uk&lt;/a&gt; for all sorts of interesting possibilities. Here's &lt;a href="http://ouseful.wordpress.com/2008/10/20/mashup-reuse-are-you-lazy-enough/" title="Mashup Reuse – Are You Lazy Enough?"&gt;a tutorial&lt;/a&gt; that incorporates Google Docs as well.&lt;/p&gt;

&lt;h4&gt;&lt;a href="http://maps.google.com/help/maps/mymaps/create.html"&gt;Google My Maps&lt;/a&gt;&lt;/h4&gt;

&lt;p&gt;Google provide a really neat interface for adding your own points, lines and areas to a Google Map. Outputs KML, a handy file format for carting geographic data around between different tools.&lt;/p&gt;

&lt;p&gt;If you already have a KML or GeoRSS feed URL from somewhere (e.g. the output of a Yahoo! Pipe), you can paste it directly in to the Google Maps search box to see the points rendered on a map.&lt;/p&gt;

&lt;h4&gt;&lt;a href="http://sketchup.google.com/"&gt;Google SketchUp&lt;/a&gt;&lt;/h4&gt;

&lt;p&gt;A simple to use 3D drawing package that lets you create 3D models of real-world buildings and then import them in to &lt;a href="http://earth.google.com/"&gt;Google Earth&lt;/a&gt;.&lt;/p&gt;

&lt;h4&gt;&lt;a href="http://www.openstreetmap.org/"&gt;OpenStreetMap&lt;/a&gt;&lt;/h4&gt;

&lt;p&gt;Try your hand at some open source cartography on OpenStreetMap, the geographic world's answer to Wikipedia. If you have the equipment you can contribute GPS traces, otherwise there's a clever online editor that will let you trace out roads from satellite photos - or you could just make sure your favourite pub is included on the map. The export tools can provide vector or static maps, and if you export as SVG you can further edit your map in Illustrator or Inkscape.&lt;/p&gt;

&lt;h4&gt;&lt;a href="http://maps.cloudmade.com/"&gt;CloudMade Maps&lt;/a&gt;&lt;/h4&gt;

&lt;p&gt;Commercial tools built on top of &lt;a href="http://www.openstreetmap.org/"&gt;OpenStreetMap&lt;/a&gt;, the most exciting of which allows you to create your own map theme by setting your preferred colours and line widths for various types of map feature.&lt;/p&gt;

&lt;h4&gt;&lt;a href="http://manyeyes.alphaworks.ibm.com/manyeyes/"&gt;Many Eyes&lt;/a&gt;&lt;/h4&gt;

&lt;p&gt;IBM Research's suite of data visualisation tools, with a wiki-style collaboration platform for publishing data and creating visualisations.&lt;/p&gt;

&lt;h4&gt;&lt;a href="http://www.dapper.net/open/"&gt;Dapper&lt;/a&gt;&lt;/h4&gt;

&lt;p&gt;Dapper provides a powerful tool for screen scraping websites, without needing to write any code. Output formats include RSS, iCalendar and Google Maps.&lt;/p&gt;

&lt;h4&gt;&lt;a href="http://www.tiddlywiki.com/"&gt;TiddlyWiki&lt;/a&gt;&lt;/h4&gt;

&lt;p&gt;TiddlyWiki is a complete wiki in a single HTML file, which you can save locally and use as a notebook, collaboration tool and much more. There's a large ecosystem of plugins and macros which can be used to extend it with new features - see &lt;a href="http://tiddlyvault.tiddlyspot.com/"&gt;TiddlyVault&lt;/a&gt; for an index.&lt;/p&gt;

&lt;h4&gt;&lt;a href="http://www.wolframalpha.com/"&gt;WolframAlpha&lt;/a&gt;&lt;/h4&gt;

&lt;p&gt;The "computational knowledge engine" with the &lt;a href="http://unqualified-reservations.blogspot.com/2009/07/wolfram-alpha-and-hubristic-user.html"&gt;hubristic search-based interface&lt;/a&gt;, potentially useful as a source of data and a tool for processing and visualising that data.&lt;/p&gt;

&lt;h4&gt;&lt;a href="http://www.tumblr.com/"&gt;Tumblr&lt;/a&gt;&lt;/h4&gt;

&lt;p&gt;Useful as both an input and an output for feeds processed using other tools, and with a smart bookmarklet for collecting bits and pieces from around the web.&lt;/p&gt;

&lt;h4&gt;&lt;a href="http://wiki.english.ucsb.edu/index.php/Toy_Chest_(Online_or_Downloadable_Tools_for_Building_Projects)"&gt;The UCSB Toy Chest&lt;/a&gt;&lt;/h4&gt;

&lt;p&gt;An outstanding list of tools that people "without programming skills (but with basic computer and Internet literacy) can use to create interesting projects", compiled by the English department at UC Santa Barbara.&lt;/p&gt;

&lt;h3&gt;Your help needed&lt;/h3&gt;

&lt;p&gt;There must be dozens, if not hundreds of useful tools missing from the above. Tell me in the comments and I'll add them to the list.&lt;/p&gt;
    
        &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/freebase"&gt;freebase&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google"&gt;google&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/guardian"&gt;guardian&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/hackday"&gt;hackday&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/mapping"&gt;mapping&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/nondevelopers"&gt;nondevelopers&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/openstreetmap"&gt;openstreetmap&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/pipes"&gt;pipes&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/sketchup"&gt;sketchup&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/tools"&gt;tools&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/yahoo-pipes"&gt;yahoo-pipes&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/computer-literacy"&gt;computer-literacy&lt;/a&gt;&lt;/p&gt;
    

</summary><category term="freebase"/><category term="google"/><category term="google-maps"/><category term="guardian"/><category term="hackday"/><category term="mapping"/><category term="nondevelopers"/><category term="openstreetmap"/><category term="pipes"/><category term="sketchup"/><category term="tools"/><category term="yahoo-pipes"/><category term="computer-literacy"/></entry><entry><title>Announcing Google Maps API v3</title><link href="https://simonwillison.net/2009/May/28/googlemaps/#atom-tag" rel="alternate"/><published>2009-05-28T01:22:45+00:00</published><updated>2009-05-28T01:22:45+00:00</updated><id>https://simonwillison.net/2009/May/28/googlemaps/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://googlegeodevelopers.blogspot.com/2009/05/announcing-google-maps-api-v3.html"&gt;Announcing Google Maps API v3&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Sounds like a complete rewrite, with performance as the key goal. Only a developer preview at the moment, but my favourite feature is that API keys are no longer required.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/api-keys"&gt;api-keys&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google"&gt;google&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/googlemaps3"&gt;googlemaps3&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/mapping"&gt;mapping&lt;/a&gt;&lt;/p&gt;



</summary><category term="api-keys"/><category term="google"/><category term="google-maps"/><category term="googlemaps3"/><category term="mapping"/></entry><entry><title>Google Maps Data API</title><link href="https://simonwillison.net/2009/May/20/mapdata/#atom-tag" rel="alternate"/><published>2009-05-20T21:07:10+00:00</published><updated>2009-05-20T21:07:10+00:00</updated><id>https://simonwillison.net/2009/May/20/mapdata/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://code.google.com/apis/maps/documentation/mapsdata/"&gt;Google Maps Data API&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
I’m disappointed by this one—it’s really just a CRUD store for the KML files used in Google MyMaps. It would be a lot more useful if it let you perform geospatial calculations against your stored map data using some kind of query API—a cloud service alternative to tools like PostGIS.

    &lt;p&gt;&lt;small&gt;&lt;/small&gt;Via &lt;a href="http://googlegeodevelopers.blogspot.com/2009/05/introducing-google-maps-data-api-in.html"&gt;Google Geo Developers Blog&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/apis"&gt;apis&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/gdata"&gt;gdata&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/geospatial"&gt;geospatial&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps-api"&gt;google-maps-api&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/googlemapsdataapi"&gt;googlemapsdataapi&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/kml"&gt;kml&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/postgis"&gt;postgis&lt;/a&gt;&lt;/p&gt;



</summary><category term="apis"/><category term="gdata"/><category term="geospatial"/><category term="google-maps"/><category term="google-maps-api"/><category term="googlemapsdataapi"/><category term="kml"/><category term="postgis"/></entry><entry><title>AJAX APIs Playground</title><link href="https://simonwillison.net/2009/Jan/22/ajax/#atom-tag" rel="alternate"/><published>2009-01-22T18:38:56+00:00</published><updated>2009-01-22T18:38:56+00:00</updated><id>https://simonwillison.net/2009/Jan/22/ajax/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://code.google.com/apis/ajax/playground/"&gt;AJAX APIs Playground&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Ferociously useful collection of executable and editable example code for all(?) of Google’s JavaScript APIs, including Google Maps and the increasingly interesting Visualization API.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/ajax"&gt;ajax&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google"&gt;google&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/googlevisualization"&gt;googlevisualization&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/javascript"&gt;javascript&lt;/a&gt;&lt;/p&gt;



</summary><category term="ajax"/><category term="google"/><category term="google-maps"/><category term="googlevisualization"/><category term="javascript"/></entry><entry><title>FOWA London - Beyond GoogleMaps</title><link href="https://simonwillison.net/2008/Oct/17/fowa/#atom-tag" rel="alternate"/><published>2008-10-17T14:01:49+00:00</published><updated>2008-10-17T14:01:49+00:00</updated><id>https://simonwillison.net/2008/Oct/17/fowa/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://highearthorbit.com/fowa-london-beyond-googlemaps/"&gt;FOWA London - Beyond GoogleMaps&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Andrew Turner’s talk at FOWA was the most information dense presentation I’ve ever seen, and discussed a huge number of cool geo projects that I’d never previously heard of. Andrew links to the full slides and video, well worth a watch.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/andrew-turner"&gt;andrew-turner&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/fowa2008"&gt;fowa2008&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/geospatial"&gt;geospatial&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/maps"&gt;maps&lt;/a&gt;&lt;/p&gt;



</summary><category term="andrew-turner"/><category term="fowa2008"/><category term="geospatial"/><category term="google-maps"/><category term="maps"/></entry><entry><title>Google's Wikipedia and Panoramio layers are now available in the API</title><link href="https://simonwillison.net/2008/Oct/2/google/#atom-tag" rel="alternate"/><published>2008-10-02T11:59:29+00:00</published><updated>2008-10-02T11:59:29+00:00</updated><id>https://simonwillison.net/2008/Oct/2/google/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://googlegeodevelopers.blogspot.com/2008/10/2-lines-of-code-make-world-more.html"&gt;Google&amp;#x27;s Wikipedia and Panoramio layers are now available in the API&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
I really like their use of reverse domain style identifiers for the layer IDs: map.addOverlay(new GLayer(“org.wikipedia”));


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/glayer"&gt;glayer&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/javascript"&gt;javascript&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/panoramio"&gt;panoramio&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/wikipedia"&gt;wikipedia&lt;/a&gt;&lt;/p&gt;



</summary><category term="glayer"/><category term="google-maps"/><category term="javascript"/><category term="panoramio"/><category term="wikipedia"/></entry><entry><title>Capital Radio's London Guide</title><link href="https://simonwillison.net/2008/Aug/29/londonguide/#atom-tag" rel="alternate"/><published>2008-08-29T01:48:30+00:00</published><updated>2008-08-29T01:48:30+00:00</updated><id>https://simonwillison.net/2008/Aug/29/londonguide/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.capitalradio.co.uk/london-guide/"&gt;Capital Radio&amp;#x27;s London Guide&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Worth pointing out: the search / map interface on this page is one of the best examples of progressive enhancement I’ve ever seen. Try disabling JavaScript and see what happens. It seems like most developers just can’t be bothered with this kind of attention to detail these days, which disappoints me.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/accessibility"&gt;accessibility&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/capitalradio"&gt;capitalradio&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/javascript"&gt;javascript&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/londonguide"&gt;londonguide&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/progressive-enhancement"&gt;progressive-enhancement&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/unobtrusive-javascript"&gt;unobtrusive-javascript&lt;/a&gt;&lt;/p&gt;



</summary><category term="accessibility"/><category term="capitalradio"/><category term="google-maps"/><category term="javascript"/><category term="londonguide"/><category term="progressive-enhancement"/><category term="unobtrusive-javascript"/></entry><entry><title>MapIconMaker</title><link href="https://simonwillison.net/2008/Aug/11/mapiconmaker/#atom-tag" rel="alternate"/><published>2008-08-11T08:48:07+00:00</published><updated>2008-08-11T08:48:07+00:00</updated><id>https://simonwillison.net/2008/Aug/11/mapiconmaker/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://gmaps-utility-library.googlecode.com/svn/trunk/mapiconmaker/1.0/docs/examples.html"&gt;MapIconMaker&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Extension API that lets you programatically construct a Google Maps bubble marker icon with a custom size, gradient and stroke colour. Under the hood it uses the Google Chart API with the (undocumented?) “mm” chart type.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/googlechartapi"&gt;googlechartapi&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/javascript"&gt;javascript&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/mapiconmaker"&gt;mapiconmaker&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/markers"&gt;markers&lt;/a&gt;&lt;/p&gt;



</summary><category term="googlechartapi"/><category term="google-maps"/><category term="javascript"/><category term="mapiconmaker"/><category term="markers"/></entry><entry><title>HeatMapAPI</title><link href="https://simonwillison.net/2008/Jul/19/heatmapapi/#atom-tag" rel="alternate"/><published>2008-07-19T23:46:34+00:00</published><updated>2008-07-19T23:46:34+00:00</updated><id>https://simonwillison.net/2008/Jul/19/heatmapapi/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.heatmapapi.com/"&gt;HeatMapAPI&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Cool (or should that be hot?) API for adding heat maps to any Google Maps application.

    &lt;p&gt;&lt;small&gt;&lt;/small&gt;Via &lt;a href="http://jeffreybarke.net/2008/07/density-map-tutorial/"&gt;Jeffrey Barke&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/heatmaps"&gt;heatmaps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/mapping"&gt;mapping&lt;/a&gt;&lt;/p&gt;



</summary><category term="google-maps"/><category term="heatmaps"/><category term="mapping"/></entry><entry><title>Capital FM London Traffic Map</title><link href="https://simonwillison.net/2008/Jun/27/traffic/#atom-tag" rel="alternate"/><published>2008-06-27T18:22:05+00:00</published><updated>2008-06-27T18:22:05+00:00</updated><id>https://simonwillison.net/2008/Jun/27/traffic/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://travel.capitalradio.co.uk/"&gt;Capital FM London Traffic Map&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
We launched this today at GCap (née Global Radio). I’m particularly impressed with how well the team handled clustering the traffic cameras on the Google map.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/capitalfm"&gt;capitalfm&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/clustering"&gt;clustering&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/gcap"&gt;gcap&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/london"&gt;london&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/traffic"&gt;traffic&lt;/a&gt;&lt;/p&gt;



</summary><category term="capitalfm"/><category term="clustering"/><category term="gcap"/><category term="google-maps"/><category term="london"/><category term="traffic"/></entry><entry><title>Google Maps now shows photos and Wikipedia articles</title><link href="https://simonwillison.net/2008/May/14/google/#atom-tag" rel="alternate"/><published>2008-05-14T19:10:47+00:00</published><updated>2008-05-14T19:10:47+00:00</updated><id>https://simonwillison.net/2008/May/14/google/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://maps.google.com/"&gt;Google Maps now shows photos and Wikipedia articles&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Click the “More...” button. My first thought was “how do they get so many photo markers on the map?”—Firebug shows that they’re generating tiles on the server containing multiple photo markers, then when you click on one an Ajax call checks which photo is in that particular spot.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/ajax"&gt;ajax&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/javascript"&gt;javascript&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/wikipedia"&gt;wikipedia&lt;/a&gt;&lt;/p&gt;



</summary><category term="ajax"/><category term="google-maps"/><category term="javascript"/><category term="wikipedia"/></entry><entry><title>KML: A new standard for sharing maps</title><link href="https://simonwillison.net/2008/Apr/14/kml/#atom-tag" rel="alternate"/><published>2008-04-14T18:36:39+00:00</published><updated>2008-04-14T18:36:39+00:00</updated><id>https://simonwillison.net/2008/Apr/14/kml/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://google-latlong.blogspot.com/2008/04/kml-new-standard-for-sharing-maps.html"&gt;KML: A new standard for sharing maps&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Google’s KML format, which is already supported by both Microsoft and Yahoo!’s map software, has been accepted under the wing of the Open Geospatial Consortium and is now an international standard.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/google"&gt;google&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/kml"&gt;kml&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/mapping"&gt;mapping&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/maps"&gt;maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/ogc"&gt;ogc&lt;/a&gt;&lt;/p&gt;



</summary><category term="google"/><category term="google-maps"/><category term="kml"/><category term="mapping"/><category term="maps"/><category term="ogc"/></entry><entry><title>wikinear.com, OAuth and Fire Eagle</title><link href="https://simonwillison.net/2008/Mar/22/wikinear/#atom-tag" rel="alternate"/><published>2008-03-22T14:34:53+00:00</published><updated>2008-03-22T14:34:53+00:00</updated><id>https://simonwillison.net/2008/Mar/22/wikinear/#atom-tag</id><summary type="html">
    &lt;p&gt;I'm pleased to announce &lt;a href="http://wikinear.com/"&gt;wikinear.com&lt;/a&gt;. It's a simple site that does just one thing: show you a list of the five Wikipedia pages that are geographically closest to your current location. It's designed (or not-designed) to be used mainly from mobile phones.&lt;/p&gt;

&lt;p&gt;You'll need a &lt;a href="http://fireeagle.yahoo.net/"&gt;Fire Eagle&lt;/a&gt; invitation code to use the site. &lt;del&gt;I've got four spare; the first four comments to ask for one can have them&lt;/del&gt; my invites are all accounted for. If you don't have a Fire Eagle account you'll have to make do with this screenshot instead:&lt;/p&gt;

&lt;p&gt;&lt;img src="https://static.simonwillison.net/static/2008/wikinear.png" style="max-width: 100%" alt="Wikipedia pages near you. Your location: Brighton, East Sussex, England. A map shows lettered markers, and text shows a list of five Wikipedia articles - for North Laine, Brighton railway station, Cogapp, Royal Pavilion and St Bartholomew's Church, Brighton" /&gt;&lt;/p&gt;

&lt;p&gt;The idea for the site came from living in Oxford for a year. The city is full of beautiful old historic buildings (many of them colleges), but very few of them are labelled or signposted. With wikinear.com and a GPS hooked up to Fire Eagle, I can pull out my phone and see a list of the closest points of interest, plotted on a handy map.&lt;/p&gt;

&lt;p&gt;Under the hood the site combines a number of interesting technologies: &lt;a href="http://oauth.net/"&gt;OAuth&lt;/a&gt;, &lt;a href="http://fireeagle.yahoo.net/"&gt;Fire Eagle&lt;/a&gt;, &lt;a href="http://www.geonames.org/"&gt;GeoNames&lt;/a&gt; and the new &lt;a href="http://code.google.com/apis/maps/documentation/staticmaps/"&gt;Google Static Maps API&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;OAuth&lt;/h3&gt;

&lt;p&gt;&lt;a href="http://oauth.net/"&gt;OAuth&lt;/a&gt; was originally designed to solve a problem with OpenID: in an authentication protocol based on browser redirects, how do you authenticate a desktop or command-line application? As it turned out, the solution to that problem solved a bunch of other problems that are unrelated to OpenID, so OAuth now exists as very much its own thing. In essence, it lets users delegate permission to perform actions on their behalf, without having to hand their regular authentication credentials (e.g. username and password) over to a third-party piece of software.&lt;/p&gt;

&lt;p&gt;If you've ever used a Flickr application that sends you back to Flickr to ask permission to view your private photos you'll understand what OAuth does straight away. Before OAuth, sites had to invent their own solutions to this problem - complete with smart security measures, their own UI flow and libraries for developers wishing to access their protected APIs. OAuth provides a ready-made solution, complete with &lt;a href="http://oauth.net/code/"&gt;tested libraries in a bunch of languages&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;If you want to securely expose your user's private data via an API, OAuth is a no-brainer. I expect to see a lot more of it over the next year.&lt;/p&gt;

&lt;h3&gt;Fire Eagle&lt;/h3&gt;

&lt;p&gt;Launched at ETech a few weeks ago, &lt;a href="http://fireeagle.yahoo.net/"&gt;Fire Eagle&lt;/a&gt; is a service with enormous potential. You can watch Tom Coates explain it in ten minutes in &lt;a href="http://developer.yahoo.net/blogs/theater/archives/2008/03/fire_eagle_launches.html" title="Fire Eagle Launches"&gt;this video from the conference&lt;/a&gt;, but the short version is that Fire Eagle acts as a &lt;em&gt;location broker&lt;/em&gt;. It consists of two key OAuth-protected APIs: one for setting the geographical location of a user, and another for retrieving that location.&lt;/p&gt;

&lt;p&gt;This leads to a neat separation of concerns. On the one hand are the applications that attempt to figure out your location - GPS receivers, WiFi maps, mobile phones that triangulate nearby cell towers, or even sites that know where you are because you told them (Dopplr and Upcoming, for example, or the Fire Eagle site itself). On the other hand are the applications that do something useful with your location - from restaurant review sites, traffic alert services, friend finders and &lt;a href="http://en.wikipedia.org/wiki/Alternate_reality_game"&gt;ARGs&lt;/a&gt; down to trivial applications like wikinear.com.&lt;/p&gt;

&lt;p&gt;As a developer, this is really exciting. I can build location-based services without having to solve the much bigger problem of figuring out where my users are. Even better, wikinear.com becomes incrementally more useful every time someone builds a new tool for passing location information to Fire Eagle, without me having to do anything at all.&lt;/p&gt;

&lt;p&gt;Obviously privacy is a huge concern when dealing with this kind of data. That's where the Fire Eagle application itself comes in: it provides a simple suite of tools for users to manage the applications that can access their location. Applications can be permitted to access different levels of accuracy or disabled entirely, and there's a "Hide" button for disabling all applications at once.&lt;/p&gt;

&lt;p&gt;Disclaimer: I worked on an early prototype of Fire Eagle as my last project at Yahoo! before leaving in January 2007, but the product that has launched has changed enormously and is entirely the work of the current Fire Eagle team. wikinear.com is inspired by part of that early prototype.&lt;/p&gt;

&lt;h3&gt;Wikipedia and GeoNames&lt;/h3&gt;

&lt;p&gt;Wikipedia has a thriving community of geo-hackers, mainly focused around the &lt;a href="http://en.wikipedia.org/wiki/Wikipedia:WikiProject_Maps"&gt;Maps&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Wikipedia:WikiProject_Geographical_coordinates"&gt;Geographical coordinates&lt;/a&gt; and &lt;a href="http://de.wikipedia.org/wiki/Wikipedia:WikiProjekt_Georeferenzierung/Wikipedia-World/en"&gt;Wikipedia-World&lt;/a&gt; wiki projects. Many Wikipedia pages (&lt;a href="http://en.wikipedia.org/wiki/Brighton"&gt;Brighton&lt;/a&gt;, for example) have their co-ordinates in the top-right, added using a bewildering array of macros and markup extensions. You can browse through the huge collection of geotagged pages using &lt;a href="http://maps.google.com/maps?q=http:%2F%2Ftools.wikimedia.de%2F~kolossos%2Fgeoworld%2FWP-world-maps.php%3Flang%3Den&amp;amp;ie=UTF8&amp;amp;om=1"&gt;this KML-powered Google Maps tool&lt;/a&gt; - zoom in and wait a few seconds to load in more markers.&lt;/p&gt;

&lt;p&gt;The wonderful &lt;a href="http://www.geonames.org/"&gt;GeoNames&lt;/a&gt; (also used on &lt;a href="http://djangopeople.net/"&gt;djangopeople.net&lt;/a&gt;) includes &lt;a href="http://www.geonames.org/wikipedia.html"&gt;an API for querying Wikipedia by location&lt;/a&gt;, based on 610,000 articles extracted from a Wikipedia data dump. This was a huge relief when I found it, as "order by distance from X" is actually pretty tricky to do efficiently; I've used expanding bounding box searches in the past but I'd love to hear about more effective solutions.&lt;/p&gt;

&lt;h3&gt;Google Static Maps&lt;/h3&gt;

&lt;p&gt;A long-term criticism of the Google Maps API is that it requires JavaScript to display anything at all - once you've committed to using it, you're going to have trouble implementing unobtrusive scripting (although you can &lt;a href="http://24ways.org/2007/unobtrusively-mapping-microformats-with-jquery" title="Unobtrusively Mapping Microformats with jQuery"&gt;work around the problem&lt;/a&gt; to some extent). Yahoo! Maps has long been better in this regard, but their &lt;a href="http://developer.yahoo.com/maps/rest/V1/mapImage.html"&gt;map image API&lt;/a&gt; is a bit of a pain to use - you have to do an initial call to get back the URL to an image embedded in an XML file, then extract that URL and send it to the browser.&lt;/p&gt;

&lt;p&gt;Launched &lt;a href="http://googlemapsapi.blogspot.com/2008/02/google-maps-without-scripting.html" title="Google Maps Without the Scripting"&gt;last month&lt;/a&gt;, Google's &lt;a href="http://code.google.com/apis/maps/documentation/staticmaps/"&gt;Static Maps API&lt;/a&gt; is a big improvement. As with &lt;a href="http://code.google.com/apis/chart/"&gt;Google Charts&lt;/a&gt;, you need only construct a URL to the image to have it dynamically generated on the fly. You can also specify markers, and optionally omit the initial latitude/longitude/zoom to indicate that you want a best fit for the markers you are displaying. There's even a flag for a "mobile optimised" image which I'm using for wikinear.com.&lt;/p&gt;

&lt;h3&gt;Mixing it all together&lt;/h3&gt;

&lt;p&gt;Excluding templates, the entire application comes in at less than 200 lines of code and took around two hours to build. The only persistence is a couple of cookies for storing Fire Eagle tokens; Django's database layer isn't even configured (and user locations aren't logged anywhere, which is great from a privacy point of view). I suppose it's a classic mashup - Fire Eagle + OAuth + Wikipedia + GeoNames + Google Static Maps = wikinear.com. Despite its simplicity (or maybe because if it), I think it's a neat demonstration of the kind of applications Fire Eagle enables.&lt;/p&gt;
    
        &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/django"&gt;django&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/fireeagle"&gt;fireeagle&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/geonames"&gt;geonames&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/oauth"&gt;oauth&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/wikinear"&gt;wikinear&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/wikipedia"&gt;wikipedia&lt;/a&gt;&lt;/p&gt;
    

</summary><category term="django"/><category term="fireeagle"/><category term="geonames"/><category term="google-maps"/><category term="oauth"/><category term="wikinear"/><category term="wikipedia"/></entry><entry><title>Google Maps Without the Scripting</title><link href="https://simonwillison.net/2008/Mar/4/official/#atom-tag" rel="alternate"/><published>2008-03-04T23:54:04+00:00</published><updated>2008-03-04T23:54:04+00:00</updated><id>https://simonwillison.net/2008/Mar/4/official/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://googlemapsapi.blogspot.com/2008/02/google-maps-without-scripting.html"&gt;Google Maps Without the Scripting&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Google Maps has finally added a simple API for retrieving static map images.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/mapping"&gt;mapping&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/staticmaps"&gt;staticmaps&lt;/a&gt;&lt;/p&gt;



</summary><category term="google-maps"/><category term="mapping"/><category term="staticmaps"/></entry><entry><title>Google Maps Clusterer</title><link href="https://simonwillison.net/2008/Jan/28/javascript/#atom-tag" rel="alternate"/><published>2008-01-28T15:07:31+00:00</published><updated>2008-01-28T15:07:31+00:00</updated><id>https://simonwillison.net/2008/Jan/28/javascript/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.acme.com/javascript/#Clusterer"&gt;Google Maps Clusterer&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
I’ve looked at a few clustering libraries for Google Maps, but this one seems to have the nicest API.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/clustering"&gt;clustering&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/maps"&gt;maps&lt;/a&gt;&lt;/p&gt;



</summary><category term="clustering"/><category term="google-maps"/><category term="maps"/></entry><entry><title>The Art &amp; Science of JavaScript</title><link href="https://simonwillison.net/2008/Jan/12/artscience/#atom-tag" rel="alternate"/><published>2008-01-12T19:05:27+00:00</published><updated>2008-01-12T19:05:27+00:00</updated><id>https://simonwillison.net/2008/Jan/12/artscience/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.amazon.com/exec/obidos/ASIN/0980285844/swillison-20"&gt;The Art &amp;amp; Science of JavaScript&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
The JavaScript book I contributed to is now shipping! My chapter describes how to build a Flickr / Google Maps mashup entirely using client-side code (via JSON-P).


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/books"&gt;books&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/flickr"&gt;flickr&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/javascript"&gt;javascript&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/json"&gt;json&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/jsonp"&gt;jsonp&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/sitepoint"&gt;sitepoint&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/theartandscienceofjavascript"&gt;theartandscienceofjavascript&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/writing"&gt;writing&lt;/a&gt;&lt;/p&gt;



</summary><category term="books"/><category term="flickr"/><category term="google-maps"/><category term="javascript"/><category term="json"/><category term="jsonp"/><category term="sitepoint"/><category term="theartandscienceofjavascript"/><category term="writing"/></entry><entry><title>Google apps for your newsroom</title><link href="https://simonwillison.net/2008/Jan/7/newsroom/#atom-tag" rel="alternate"/><published>2008-01-07T21:24:05+00:00</published><updated>2008-01-07T21:24:05+00:00</updated><id>https://simonwillison.net/2008/Jan/7/newsroom/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.postneo.com/2008/01/07/google-apps-for-your-newsroom"&gt;Google apps for your newsroom&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
How the LJ World team use online tools like Google Spreadsheet, Swivel, ManyEyes and Google MyMaps to collaborate with the newsroom and build data-heavy applications even faster.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/collaboration"&gt;collaboration&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/data-journalism"&gt;data-journalism&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/django"&gt;django&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google"&gt;google&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-calendar"&gt;google-calendar&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-docs"&gt;google-docs&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/google-maps"&gt;google-maps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/journalism"&gt;journalism&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/ljworld"&gt;ljworld&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/manyeyes"&gt;manyeyes&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/matt-croydon"&gt;matt-croydon&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/mymaps"&gt;mymaps&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/news"&gt;news&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/newsroom"&gt;newsroom&lt;/a&gt;&lt;/p&gt;



</summary><category term="collaboration"/><category term="data-journalism"/><category term="django"/><category term="google"/><category term="google-calendar"/><category term="google-docs"/><category term="google-maps"/><category term="journalism"/><category term="ljworld"/><category term="manyeyes"/><category term="matt-croydon"/><category term="mymaps"/><category term="news"/><category term="newsroom"/></entry></feed>