Warning - this is a really long post. There is a summary at the bottom in the Too Long; Didn't Read (TL;DR) section
It all starts with a tweeted idea
We both agreed that this would be a developer show – you had to already know spatial and you had to know how to write code. We also thought it would be great to:
- Leave it somewhat unstructured to see what emerges
- Do it cheap and with little hassle
So we basically charged $10 for admission (just to make sure you had some skin in the game) and $300 to sponsor (which would be easy for companies to swallow).
OpenShift quickly jumped in as a sponsor for several reasons:
- We like to foster good things on the web
- Much of the technology discussed there could be used on OpenShift
- We also realized that doing a workshop would give a chance for developers to play with Node.JS and MongoDB for spatial work with little risk to them.
In the end we were lucky to get Brian Timoney help to drive the event forward since his pragmatism helped finish up all the ideas Chris and I had.
We sold out in a little over a month with 80 attendees from 25 U.S. States. We had the first day of talks at UC Denver in an auditorium. The second day of workshops and hacking was held at Galvanize, an awesome co-working space in Denver. First day was bagels for breakfast, pizza for lunch, and a meetup later at the 1up bar where we all got to play arcade games, drink beer, and eat fried macaroni and cheese – YUM!
JS Geo Itself
Given the twitter and blogging reaction I would say it was a great success. My favorite quote was “like Google i/o but better. another one next year”. I quickly realized at the show that there was no place to bring all the talks together so I:
- Spun up a PHP app on OpenShift
- Bought jsgeo.org and jsgeo.com
- Pointed the www CNAMES to my OpenShift URL
Please go here to download the slides or the workshop material
For the talks we got a full spectrum:
- OpenLayers showed us some of the short term improvements they had made and their long term plans for their API
- Leaflet showed some incredible visualizations that could be done with all sorts of Geo Data – my favorite was walksheds
- ESRI showed off some incredible forward thinking ideas about how to integrate D3 and other technology to create meaningful and compelling spatial visualizations. We also got to see how easy it was to take GeoJSON and turn it into a dynamic map in the browser
- MapBox gave an intro to Node.JS and then showed some of the ways they are using it to do super-duper fast tile serving.
- DTS Agile rounded up the half hour talks with a discussion on the challenges of doing cutting edge stuff when you consult for late adopters. They then went on to show how helpful Backbone.js has been for them making dynamic web pages that still link together maps, tables, and detailed information (even a download in Excel feature) all with different libraries for each part.
After these talks we did a lightning round of 5 minute talks. I am not even going to try and summarize how much goodness (™) we got to see. They ranged from “look at this cool thing I am working on”, to “here is how I used this library to solve a problem”, to “here is a project I am starting come help me hack on it”.
On the second day I taught about 3 hours of workshop on using OpenShift to create a MongoDB and Node.JS REST web service. As opposed to my usual MongoDB or OpenShift shows, there were a lot of questions on NoSQL and PaaS, but I could breeze right through the spatial parts. I will be giving a shorter version of this workshop and a talk at MongoDB Boulder next week.
There was also a MapBox and CartoDB workshop which I really wanted to attend but since I was teaching I missed out :(.
Chris Helm then did an afternoon workshop on D3. It is amazing how easy it is to make great, compelling, and focused applications using D3. Three cheers for Mike Bostock.
It was a great show. If you want to see some of the great things we saw and heard check out the js.geo page.
My take aways are:
- D3 is amazing. For simple interactive maps, we can now just load up a GeoJSON or TopoJSON file, and then proceed to do all sorts of cool map things. Check out what Mike Bostock has put together as a gallery of D3 demos. Make sure you have no liquids in your mouth when you go to that link otherwise you may spray it all over your computer in shock.
- A couple of us have created a github repo to store all sorts of geospatial data in text format (GeoJson, topoJSON, and SQL files). We would love if people would start contributing files with a source and date information. Let me know and I will fork your data into the repo.
- OpenShift is a great way for people new to either geospatial or Node.js to get started. In the workshop, within 5 minutes one of the Denver IT guys had loaded in 50k crime locations and was serving them up through the same REST service in the workshop. Check out what Curtis Allen built in a couple hours on OpenShift, with Leaflet, MongoDB, Node.JS, and AngularJS – really fun visualization of the park data I usually use in the workshop. Click on the map and watch the parks show up.
Final take away:
"Never underestimate the power of a small group of committed people to change the world. In fact, it is the only thing that ever has." (Margaret Mead)
It is possible in this age of the intertubes and social media to gather a great group of people to talk about interesting technology for very little cost or effort! Thanks Monktoberfest for being an inspiration for tweet -> awesome show.