JS.Geo 2013 Recap–JavaScript and Geospatial Make Awesome Sauce

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

As I started to dig into Node.JS and MongoDB, I was talking with my friend James Fee and he said I should reach out to my other friend Chis Helm. Chris had just tweeted about wanting to do a JavaScript and spatial meeting in the Front Range of Colorado. Having just got finished speaking at Monktoberfest, which also started with a tweet, I told him I was in and we made an eventbrite page and a lanyard page (kudos to both of those companies).

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:

  • Try to bring all the client side JavaScript libraries developers into one location to try and get some cross-fertilization going: OpenLayers, Leaflet, CartoDB, Google Maps, ESRI Maps, and MapBox
  • See some of the latest things happening in Geo and JavaScript like D3, Backbone.JS, WebGL, and AngularJS
  • 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:

  1. We like to foster good things on the web
  2. Much of the technology discussed there could be used on OpenShift
  3. 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:

  1. Spun up a PHP app on OpenShift
  2. Bought jsgeo.org and jsgeo.com
  3. Pointed the www CNAMES to my OpenShift URL

and VOILA

www.jsgeo.org

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
  • Ubisense showed some amazing uses of Google Street view and JavaScript (didn’t know you could do that) to help utility companies provide meaningful view of everything from outages to where lines are buried to regulation compliance, all in a web browser
  • Vizzuality wowed us with incredible dynamic visualizations using JavaScript and a SQL like syntax – amazing ways to quickly update your visualization on the fly
  • 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
  • Google knocked my socks off with WebGL demos. For me the future is getting WebGL supported in as many places as possible. Hundreds of thousands of points in the browser with no slow down, dynamic modeling of DEMs in the browser instantaneously. Seriously, I have seen the future and it is WebGL – though to be really accessible to more programmers it needs to have some nice JavaScript wrappers built on top of it. If you have a WebGL capable browser, check out some of the things that are being done already with SceneJS
  • 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”.

Workshops

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.

TL;DR

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:

  1. 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.
  2. There are really bright and interesting people pushing the boundary of what can be done with JavaScript and geospatial data, both in the client and on the server. I like living in the future!
  3. 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.
  4. 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.

Categories
MongoDB, Node.js
Tags
, ,
Comments are closed.