What do you get when you put together a University of Alberta student, a leading Open Gov activist, an OSS/Open Data junkie from MS Canada, a top-notch developer & his team, and a PHP / Open Data hacker??
|You get EMITTER.CA|
Today we’re announcing the Beta of what our team set out to build 2+ months ago: an open data application showing environmental pollution across Canada. We wanted it to be simple to use, easy to understand and intuitive for an average user to visualize polluting facilities near where they live, work & play. We also wanted to enable citizens to do something about the pollution data, so we decided it would be great to mash-up Federal Electoral Riding & Member of Parliament (MP) information. Our Open Lab at Microsoft Canada hosted this project & we got some expert developer help from RedBit Dev’s Mark Arteaga, Barranger Ridler and Aaron McGowan.
We started out with an existing set of data from Environment Canada, specifically their National Pollution Release Inventory Database (NPRI). Full credit goes to Environment Canada for providing this data in the first place as a publically available downloads. However, we wanted to improve how useful this data was for an average citizen, by making it easier to access, interpret & visualize, and to improve how easily developers too could consume the NPRI data via open APIs in their own apps. More on the methodology here.
The simplest way for us to accomplish these objectives was to leverage the open source solution for Open Data catalogues Open Government Data Initiative (OGDI) and Windows Azure. We worked through the datasets from NPRI’s site (available as Microsoft Access downloads), exported and analyzed the data sets and made them available on DataDOTgc via an OGDI / Drupal module (more on it here). The data now is accessible via APIs returning XML, so it can easily queried and parsed on the fly, so all we had to do is built a simple front-end UI. Because of the variety of developer skill-sets on our team, we chose to use a mix of Open Source and commercial technologies to build the infrastructure & the app, here’s what we used:
- PHP on Windows with BING Maps (AJAX) and JQuery for data visualization & presentation
- Windows Azure-based (OGDI) for storing & providing APIs to NPRI data
- IIS7.5 on Windows Server 2008 with SQL Server for the back-end application infrastructure
- APIs to vote.ca and howdtheyvote.ca for Federal Riding and MP information
I was privileged to be one of “THE unUSUAL SUSPECTS” who in just a couple of months pulled this project together – from a “back of the napkin” concept to a full-blown web app. Considering the crazy mix of diverse backgrounds & skills – Open Source & Microsoft, student & professional developers, open data &environmental activists, spanning 3 time zones – one might think the end-result would be a disaster.
On the contrary, to me EMITTER.CA represents everything that is great about a cross-functional teams with diverse expertise: lots of great ideas, different opinions, openness to using mixed technology environments and willingness to explore best tools for the job.
In the end, we ended up with an application and data infrastructure that is flexible, scalable, able to quickly visualize various data sets & most importantly extensible, so that we could both consume & expose various data via developer APIs using Windows Azure and OGDI. We now are plugging away at a mobile (Windows Phone 7) version of Emitter, and are looking to refine & improve the web app.
If you have suggestions – please drop us a comment, or tweet @emitterca