Getting Down To Earth: Geospatial Analysis With Rails (RailsConf 2012)

In this post is a collection of useful material related to my RailsConf 2012 talk, entitled Getting Down To Earth: Geospatial Analysis With Rails. You can download the slides for the talk, and I've provided links to all the software mentioned (as well as some that wasn't mentioned but that I think is useful or at least interesting). Finally, I've curated links to a bunch of articles, reference material, and other information for those interested in digging deeper into geospatial features.

This is by no means a complete list, and I'll be adding more links over the next few days so check back often. And please leave me a note if you have any suggestions!

Update: thanks to Confreaks, the video is now up as well.

A few notes post-talk...

Thank you to those of you who attended my talk this morning! A few quick notes before getting into the links and downloads.

  • One thing I should have made more clear is that your choice of coordinate system is not limited to just lat/long or Mercator. Those two will be useful for many cases, but there are a plethora of other coordinate systems, any one or more of which may be appropriate for your application.
  • We covered PostGIS in this talk because it's currently probably the best and most feature complete open source spatial database, and because it's the best supported from our stack. But there are alternatives that may be more or less useful. MongoDB does have limited spatial capabilities, as does MySQL. Oracle and MS SQL Server are supposedly pretty full-featured in their spatial capability. There's even a plugin for Sqlite that works quite well.
  • I'm serious about Squeel. Use it. It's awesome. Last year I was working on coming up with a solution for writing these complex spatial queries by extending Arel. But then I found Squeel, which does it a dozen times better than I could have come up with. Thank you Ernie Miller for this tool!

Now on to the links...

Talk-Related Material

Software --- Databases

Software --- Ruby

Software --- Client Side

  • heatmap.js --- A heatmap implementation for Javascript
  • thermo.js --- Another heatmap implementation for Javascript
  • heatcanvas.js --- Yet another heatmap implementation for Javascript
  • OpenLayers --- An open-source map/visualization tool; an alternative to Google Maps

Software --- Other Libraries

  • libgeos --- C library for geometric analysis
  • libproj --- C library for coordinate transforms
  • libgdal --- C library for rasters

Articles/Blogs/Resources Online

Books and Other Reading

  • GIS: A Computing Perspective by Michael Worboys and Matt Duckham --- Very useful overview of the major computing challenges involving geometry, rasters, databases, and so forth, including discussions on modeling uncertainty and architectural considerations. Highly recommended.
  • Geographic Information Analysis by David O'Sullivan and David J. Unwin --- Good source for methods of statistical analysis and visualization of geo-data.
  • GIS For Web Developers by Scott Davis (published by Pragmatic Programmers) --- Somewhat dated, and based on Java. But still a lot of useful conceptual material. Paper book is out of print, but eBook is available.

Data Sources

Mailing Lists

  • rgeo-users mailing list --- Help and discussion group for RGeo users
  • georails mailing list --- Discussion for Rails and geospatial dev (not very active)
  • georuby mailing list --- Discussion for Ruby and geospatial dev (not very active)

Organizations and Conferences