Udostępnij za pośrednictwem


Accela and Microsoft Hackfest — Providing Access to Open Data, Online and Off-Grid

 

A few weeks ago several of us from the U.S. and worldwide DPE teams holed up in Redmond for a few days of coding. Our goal was to prove that there is an easy way to take a Web App and port it over to a mobile experience, and then make it work in both connected and offline scenarios.

Joining us for the hackfest was Accela, an ISV that provides solutions to help municipal, county and state governments streamline their licensing and permitting processes. Roughly seven months ago Accela launched an open data platform called civicdata.com, and we set out to create an app that would let people consume a variety of open datasets — whether in the office, out in the field or off the grid.

In a nutshell, our target scenario was to help real estate agents and prospective buyers access civic planning and permitting data stored on civicdata.com, and provide a platform for making comments about and discussing a particular property.

The impetus behind the hackfest was the lack of uptake in Web Apps being built for the modern Web browser, in favor of mobile apps. For all the benefits of mobile apps, there’s still a real need for rich Web Apps — the kind of experience made possible by HTML5 and JavaScript frameworks such as Angular, Couch and Pouch.

One of the highlights of this hackfest was seeing members from DPE with expertise in different disciplines working together on the three separate tracks of application platform, data connections and offline scenarios, and then combining their work into a reference architecture that others can benefit from.

The application platform team built the base HTML/CSS/JS app using our data abstraction layer, which plugs into either Azure Mobile Services or Couch DB as the data source. The app runs on Chrome, Internet Explorer, Android, etc., and has offline capability.

Using our own Web App template, we ported the application to the Windows Store, which has been enhanced to enable offline capability for store apps. This team also created an optimized ingestion service for the public reference dataset, incorporating geocoding capability for each listed property using the Bing Location API.

From there, the team created a local cache for storing content from visited Web pages. With this “supercache” in place, users could access the same Web-based content — property data, in this case — in much the same manner but without an Internet connection. It really takes the Web App user experience and extends it across the full breadth of connectivity scenarios.    

The hackfest certainly wasn’t without its challenges, and some fit-and-finish work still needs to be done. Just the same, it was truly amazing to watch the process come together, and out of it we are developing a set of tools that will simplify the building of cross-platform solutions. Look for more details on that in the weeks ahead.

Comments

  • Anonymous
    March 21, 2014
    Was the result of the efforts a one-off solution for civicdata.com or an abstract method for turning any web app into an offline mobile app?

  • Anonymous
    March 22, 2014
    For this hackfest our focus was on creating a fantastic app around Accela civic data. For us that meant a great web experience and a first class mobile app - including doing the right things when offline.  And we wanted to build it all using standard HTML5 frameworks. The team was awesome and we had a lot of fun and made lot of progress toward our goals. One of our conclusions is that we don't think you can just turn any web app into a great offline mobile app... but I think it would be fair to say that everyone at the hackfest was pretty excited about the potential to make this a more general capability - and to really push the envelope of what you can do with the web.   We are looking forward to a great dialog with everyone about these topics at Build and in the weeks ahead.  Will we see you in San Francisco?