Location-based web services are all the rage right now, but for most of us the actual geographic location isn't very interesting – do you know where "40.737813,-73.997887" is off the top of your head? No? How about "West 14th Street bet. 6th Ave. and 7th Ave?"
For the geographic web to become useful geodata has to be converted into something humans actually understand. Enter OpenStreetBlock.
OpenStreetBlock is a new web service that takes geographic coordinates (latitude/longitude pairs) and turns them into an actual city block description. The result is textual information which, in many cases, will be even more meaningful to your users than the ubiquitous pin on a map.
If you'd like to play around with a sampling of data from New York, head over to OpenStreetBlock and try out the New York demos.
If you've ever wanted to build your own version of EveryBlock – which pinpoints events, news stories and public data at the city-block level – OpenStreetBlock will go a long way toward getting you there. So long as you can pull geo coordinates out of your source data, OpenStreetBlock can turn that into more meaningful information.
Under the hood OpenStreetBlock relies on OpenStreetMap data and uses PHP in conjunction with a geographic database to turn your coordinates into block descriptions.
As cool as OpenStreetBlock is, getting it up and running on your own site will require a bit of work. Luckily, there are some good tutorials available that will walk you through the process of installing and setting up many of the prerequisites like PostgreSQL and PostGIS (I'll assume you already have an Apache server with PHP installed).
To get started with OpenStreetBlock, grab the code from GitHub. The next thing you'll need is a PostgreSQL database with all the PostGIS tools installed. Luckily those are also prerequisites for GeoDjango, so head over to the GeoDjango installation page, skip the Django-specific parts and just follow the Postgres and PostGIS installation instructions.
Next you'll need to download Osmosis and Osm2pgsql to convert OpenStreetMap data into something Postgres can handle. Head over to OpenStreetMap, zoom into an area you'd like to query with OpenStreetBlock and then choose "export." Select the OpenStreetMap XML Data option and save the file.
From there you can check out the guide to importing the OpenStreetMap XML Data in the OpenStreetBlock read me.
See Also: