February, 2007

...now browsing by month

 

OpenStreetMap constructs maps from GPS tracks!

Wednesday, February 21st, 2007

Sources and uses of digital information are in-scope for this blog, and a great example just showed up in my RSS reader today.

OpenStreetMap is a wiki-like project to build a world map using contributed GPS tracks [OpenGeoData pointed me there]. Their map of Baghdad is here.

This project is truly a product of the early 21st century: it requires GPS satellites, cheap but accurate GPS receivers, the World Wide Web, inexpensive computers with fast color graphics, and so forth.

And like all modern geographic applications, it also exploits a special property of GPS’s information domain: everyone agrees on the meaning of geographical location; only dates and times have a similar level of standardization. In relational-database terminology, this means that any table with a date or location column has a meaningful join with any other.

This doesn’t work with most data. I’ve had driver’s licenses in four U.S. states, but you can’t aggregate my driving record from the state records because they all use different ID numbering schemes (nice for my privacy in this case).

Also noteworthy is the fact that GPS information can be used to put a time dimension into maps, since we can tell when the street is used as well as where it is. There are some very pretty examples at Cabspotting.

Information Patterns: series introduction

Friday, February 2nd, 2007

Every time a new data format spec hits my inbox, I get a little twinge of dread.

Such documents are often enormous. They’re written in standardese (often badly). They’re usually written by committees. They go through a maze of twisty little revisions, all different.

But worst of all, they often bury their novelty in a sea of details that resemble those in the last spec I reviewed.

I’d like to do for data formats and other information representations what the Gang of Four book does for programs: call out and label the patterns that come up over and over again so that I can classify details into bigger chunks for mental processing.

You can expect to see several different kinds of post in this series:

  • Case studies. I have to look at lots of actual data formats in order to discern the patterns!
  • Data format patterns. Most posts will be about patterns I find in data formats…
  • Information usage patterns. …but some posts will be about how information is generated, stored, and used.
  • Other. I’ll probably think of some other topics as well.

I expect to look at simple cases, such as comma-separated values, as well as fiendishly complex cases, such as PDF. Programming-language syntaxes are fair game; database index disk structures are right out. In between, I’ll draw the boundary as interest dictates.

This series will be open-ended as long as people keep inventing data formats faster than I can look at them.