RHoK Melbourne: VicAlerts and VicSafe
On the weekend I worked amongst a small but dedicated team of developers to set in motion a disruptive change that Victoria so desperately wants and needs.
The event was RHoK Melbourne, a weekend hack-a-thon held at Swinburne University in their new ATC (Advanced Technologies Centre) building.
The problem we were tackling was put forward by members of the Bureau of Meteorology, in particular BOM representative Stef (Stefan Willoughby), who attended the event, stepped us through the problem and shared his experience on the topic. You can read the original flood warning problem description for an idea of what we were briefed on. So, we set about devising a system in which we could better communicate warnings and information to people affected by or who may be affected by floods, so that they may make better decisions in such times of crisis.
As our group talked through the problem and tossed a few ideas around, we realised that the problem extends beyond just floods, but applies to bush fires, storms, terrorism and even traffic and road alerts too. We were now talking about designing a solution not just focused on floods, but that could warn people about all sorts of significant events that would impact their day-to-day lives.
Fortunately, we have the science, technology and organisations full of people capable of predicting (with amazing accuracy) the movements of floods, storms, bush fires etc -
I mean, just check out the depth of information available for flood, cyclone or tsunami warnings on the BOM's website. CFA have fire warnings too. VicRoads display road closures for us too. Let's not forget the Victorian Department of Justice either.
Unfortunately, the methods in which all of this data is stored and the resulting information is disseminated just isn't cutting it! So, our idea was VicAlerts - a platform for providers to submit their significant alerts and warnings, which would become an aggregator/clearing house for the alerts, allowing other websites, mobile phone applications and services to build on top of the VicAlerts data source, and deliver the alerts to the relevant people, in a format they want to consume it in.
We came across the Common Alerting Protocol, a data format for exchanging public warnings and emergencies in a consistent format. The CAP protocol covered all of the attributes we wanted to capture, it was clear that a lot of work went into designing the protocol, so we'd be crazy to come up with or use Yet Another Data Format of our own.
This is pretty much what our original architecture diagram looked like, except it was scrawled on a piece of scrap paper... hacker style. NOTE: This is also a slide straight out of our presentation.
We put together a basic implementation of the VicAlerts platform, an example provider (just a simple form with fields matching the CAP protocol) and we implemented a mashup website dubbed VicSafe which combined the VicAlerts data with Google Maps to display recent alerts nearby to the user's current location or search term. Our VicAlert / VicSafe presentation is available online and gives an overview of the examples we built and some designs for a mobile app that we didn't get time to implement.
This type of architecture lends itself well to setting up dedicated services for different things, like sending an SMS to people geographically nearby the alert affected area, or allowing ABC's website to subscribe and display information on alerts as they come in.
Reflecting on the weekend.
All of our ideas and efforts were the result of literally a dozen hours, so they aren't much more than prototypes at this point, but they serve a message, and the message is LOUD and CLEAR:
We need to work towards providing data in a uniform and accessible manner.
Lastly, we aren't the first group of people with this idea, since the weekend I've learnt more about the work being done by the Google Crisis team and even discovered a similar idea proposed by Reuben Townsend in the App my state event.