We have just released the first beta of the Drupal OpenLayers module. It's been a pretty crazy adventure as to how we got here, and there are still high hopes for the future. This post is going to be a long one, and should give you the complete introduction to this new mapping module for Drupal, and will also build on and borrow from my previous post on building this module.
OpenLayers is a free, open-source Javascript library that provides an easy interface to bring together any sort of map tiles, markers, features, and other GIS goodness. OpenLayers was initially developed by MetaCarta; it is now a project of the Open Source Geospatial Foundation. Think Google Maps but open-source. The OpenLayers has many examples and a gallery of sites.
Drupal is a great content management system and development framework. OpenLayers fits well into this because it basically is a really great visualization tool for content (the most obvious visualization being maps). Drupal can provide the ability to create and management data/content and OpenLayers can be a fun vehicle to displaying that content and provide a rich interface for your users.
The Drupal OpenLayers module is actually a full suite of modules that provide many integration points with other contributed modules.
[openlayers preset_name] into the body content of a node and it will be rendered as that map.June 2009 is Geo June, which is a campaign to organized by Advantage Labs to make a concentrated effort to stabilize the Geo Module and push towards Drupal as a GeoCMS.
Geo is mainly a storage layer to hold geospatial data. What does that mean? Well, we all know about points such as latitude and longitude, but Geo helps to store other data such as lines and polygons.
Geo standardizes how all this data is stored, which is extremely helpful for modules, such as Location to store data and have the heavy lifting done for it, and makes it easy for modules such as Gmap, NIceMap, and Mapstraction to easily retrieve and display that data in lots of fun ways. Geo also provides a database abstraction layer to work with both PostGIS and MySQL Spatial.
Still not convinced of it's awesomeness, well then think Mashups! Though I am not a fan of the term, Map Mashups are all the rage and for good reason (data visualization is a great way to communicate large sets of data). By standardizing Drupal's GIS storage, it will be exponentially easier to integrate (i.e. mashup) data from your site with all those exciting external sources of data. Don't think you can collect geospatial data? Think again, more interweb explorers are becoming a lot more spatially aware and want their data represented in the context of our world. And even with lots of new open data, there are still lots of reasons to store that spatial data directly on your site.
There are many other use cases at this wiki page (feel free to add).
If you are interested in getting involved, go here. Some of the events going on or ways to participate:
Another goal of Geo June is for the OpenLayers Drupal Module to release a 1.0 (though I would be happy with a beta, personally). We have been really busy developing this module. It's fairly stable at the moment, but needs lots of cleaning up. We welcome testing and reporting bugs.
Drupal has always been good at being current with new technologies and this is an opportunity to continue that tradition. Geo is the building block for realizing Drupal as a GeoCMS, meaning that Drupal can consume, produce, collect, aggregate, display, cuddle, and mash geospatial data in a user-friendly (and developer-friendly) way. I personally don't know of anything that can currently be compared as a GeoCMS, and even with a stable Geo, we still have a long way to go, but I would love to see Drupal be the first GeoCMS.
I was asked to do a presentation on coding in Drupal for our local Drupal user group. "Coding" is a pretty general topic, and the audience at our user group is pretty varied. So, I was not sure what specifically I should present that would encompass "coding". As the time came along and I had to make a decision, I looked to the module that I currently spend most of my free time developing: OpenLayers.
OpenLayers is a free, open-source Javascript library that provides an easy interface to bring together any sort of map tiles, markers, features, and other GIS goodness. OpenLayers was initially developed by MetaCarta, now a project of the Open Source Geospatial Foundation. Think Google Maps but open-source and more accepting of other worldly GID data. The OpenLayers has many examples and gallery of sites.
Drupal is a great content management system and development framework. OpenLayers fits well into this because it basically is a really great visualization tool for content (the most obvious visualization being maps).