Platform First: Engineering a robust government web ecosystem
On Saturday, Dec 3, you’ll want to attend City Camp Honolulu, “an unconference focused on innovation for municipal governments and community organizations.”
According to the site,
CityCamp Honolulu is just the first step in an effort to explore and document ideas, lessons learned, best practices and patterns that can be implemented within the City & County of Honolulu and shared across municipalities. Our primary focus is the use of social/participatory media, mobile devices, linked open data and leveraging the Web as a platform for transparency, Open Government and civic engagement.
A Golden Opportunity to Get it Done Right
As the tech community, we should take maximum advantage of this situation for everyone’s benefit. We have a choice at this conference whether to get myopically focused on small, useful applications or whether we can leverage the momentum of this event to set in place a lasting legacy of exceptional engineering. I say we go for the latter.
Build API platforms first, then websites atop those platforms
Do we want to build a few cool apps, or do we want to create a platform and a policy which will give developers API access to all published Web data? What kind of potential innovation will we unleash if any time the city creates a website, developers know that they can access the site’s underlying data through standardized data access and format standards? If every city website was powered by a public, documented API that was available to all, the mashup permutations would be near-infinite and the potential for ground-breaking innovation quite real.
Riffing on Dave Kozuki’s seed idea to “Break through the bureaucracy. Pass an ordinance to require city departments to provide data through APIs.” and his corresponding blog post on the idea. I would propose something along the following lines:
All city public websites are built in two parts. First, the data powering the website is exposed via standard protocols. Second, the website is built exclusively using the API, meaning that the city’s website does not directly access the data any other way except via the documented, public api that any other developer can use.
This is an important distinction and vital to building a innovative city data architecture. You can’t build the website first and then decide to “get to building the API” later for many obvious (to geeks, anyway) reasons. For one, if the API is an afterthought, it simply won’t get done. Second, if the website doesn’t go through the API to get its data, it will be nearly impossible to synchronize website changes with API changes. Third, the website accessing the API serves as a “killer app” and “reference application” (ideally making all source code publicly available) to guide developers on best practices in accessing data. Finally, if we want to build a true platform for city data, you must require that all city websites use the platform and only the platform.
I recognize there will be difficulties in implementing this policy for existing legacy sites but I think we we can build in sufficient flexibility so that those sites don’t have to be refactored until a modification is made or a certain somewhat distant date is reached. The real key is to get expose all data via an API from this point forward.
The politics needed to get this done
Sorry Geeks, we’re going to have to exercise some lightweight politics here. We need to be prepared and pre-determined to make CityCampHNL work for us. If you support the idea of an ordinance that puts the “Plaform First” requirement into place, i.e. law, here’s a partial list of what we’ll need to do to get the ball rolling:
- Organize ourselves before the meeting so that sufficient numbers speak with a unified voice.
- Be clear on the outcome we would like to see.
- Garner a significant support from the local tech industry.
- Identify the folks inside the City and County that support this concept and make sure we support them. The good news here is from what I’ve gathered so far, there is good support for this. That’s an incredibly important and positive element.
- At the event, first gain consensus on the general concept of “Platform First” and then collaborate with the participants to identify the proper standards and protocols we should follow. It’s critically important that we do a good job of both (a) identifying technically robust standards and (b) maintain and inclusive and collaborative atmosphere to accommodate genuine concerns that are raised.
- Before the event closes (and by “closes” we mean when key city officials are about to walk out the door), we get:
- A general commitment to the overall approach
- A firm commitment on what the next step will be
- When that next step will be taken, and
- The planning required to execute it. We aren’t going to achieve the whole thing in one day, not by a long shot, but we need to be incredibly clear on what the next step will be in the process.
- Identify a small group of local tech leaders who will follow up on this process, inform the community as to its progress, and see it to its natural, successful completion.
It really does come down to job creation
Hawaii has a great combination of entrepreneurial spirit and innovative developers. If we could access all public (i.e. on the web) city data, we would be gaining access to a massive collection of raw materials on which to build and deliver value to everyone. And where there is value creation, there is wealth creation. And where there is wealth creation, there is job creation. This might sound cheesy but if we can tie job creation as a genuine potential outcome of creating a “Platform First”, it will give this effort a very good base of support to carry it through the byzantine path from concept to reality.
Where to go from here
Next, connect with the community and make your voice heard. Burt Lum has put together the following resources:
Please follow us on twitter: http://twitter.com/#!
Like us on Facebook: http://www.facebook.
Idea central: http://citycamphnl.
Join us on TechHui: http://www.techhui.
Google Group: https://groups.google.
Finally, get prepared for action and participation. We’ve got a good “shot at the title” here to create some long-lasting change. Let’s do it!
Special thanks goes to Dave Kozuki for doing a better job in posting the API idea to citycamp than I did, Burt Lum and Daniel Leuck for encouraging and supporting the API idea, and Ryan Ozawa for supporting the Citycamp concept overall .
Powered by Facebook Comments