I’ve lived in many cities during my military career. Each time I’ve moved, I’ve had to deal with a new city’s website, and what I’ve learned is that there are great differences across each city's site design and in how much government data is online and accessible.
Some city's websites give the impression that they’ve put a serious effort into open government, while others look as though the site was built in 1995 and the only updates have been to the names and phone numbers of staff.
There is much to be said about open government. While there are many different open government movements, I’ve not yet seen a "platform" that is available for local governments to use. There is a company called OpenGov which does address local government financial transparency, and that is a start, but falls woefully short if you want a fully transparent local government.
If you look at the White House webpage on open government, they are focused on providing White House data. To their credit they even provide some developer tools such as an API for some data, but what they don’t provide is anything for local governments to use. I think that a transparent government is a better government, but it is rare to find a city that has leveraged the web for a better form of government in this way.
My hope is a discussion to help spur ideas towards an open government built on open source.
A business could be made supporting local governments (US and abroad) with a standardized platform that could be tailored to their needs. Think of Wordpress for Government, or perhaps OpenStack for government. I think that some local governments are moving towards Facebook as a platform, and I really think that is a mistake. It is easy to use and free, so it's easy for local governments to just put their data into the walled garden of Facebook without thinking about it.
If a different solution was available that was just as easy, and provided a tailored experience, I think local governments will leverage it instead. It can make sense at some level for a city to push their data to Facebook, but not for it to be the authoritative repository.
Cities with a great website and online presence will not be as interested as others who might see having a turn-key hosted solution as a no-brainer. The business part of this is the customization of the platform and the hosting of the platform. There are sufficient technologies available to enable this to be scalable from a small town to a large city. Money can be made from the customization, the amount of data stored, the available interfaces, the different capabilities offered, and finally tech support.
So, if a local government wants to try to save money by hosting this solution themselves, they can. But if they want someone else to host it for them, that solution is available for a price.
So, what are the requirements for a Government-as-a-Service Platform?
There are three different sets of requirements to look at: data, interfaces, and website. There are probably many ways to break up the requirements but for my purpose data, interfaces, and website will suffice.
What data, interfaces, and website requirements will be driven by the actual use-cases needed by the city? Whoever takes this on as a business will need to talk to many cities to see what the common requirements should be. At a minimum I think that it should act as a phone book, hold the city ordinances, and a place to hold all of the different committee/department rules, regulations, and meeting minutes. After the minimum is complete, and the platform is up and running, additional requirements can be addressed.
Government runs on data. So, from a data standpoint, a central encrypted database to store the data will be important. This means being able to import, store, and export data. The key issue relating to the data is security. The database needs to be encrypted at the record level such that when it is compromised, it doesn’t matter. Not an easy task but necessary. Given the different potential types of data expected, I’d recommend a NoSQL approach. The interfaces are perhaps the most important and hardest part of the platform. The interfaces, or APIs are used to expose the data. This is for the website, but also for third-party applications. Given that, security is important and the public APIs must only allow the appropriate data to be released.
The city website
A city’s website should be:
- easy for citizens to navigate
- easy for the city to update
The website will need to be branded for each city, and it may be important to make it easy to tailor. Posting to your city’s website should be as easy as posting to Facebook. There are a few different ways of going about this, but here’s what I recommend:
Start with an existing open source Platform-as-a-Service (PaaS). Then, host it on an Infrastructure-as-a-Service (IaaS) platform. For example, use OpenShift as the PaaS and OpenStack as the IaaS. Begin with a customized version of OpenShift as a starting template for each city. This template will host the basic capabilities for each city. Then, copy the template, tailor it for your specific city, and host that on OpenStack.
The advantages of this open source approach is that while you can pay for support, you have the option to support it yourself. Also, if you have specific requirements that should be incorporated into either OpenShift or OpenStack, you can submit upstream changes.
I believe having a platform for local governments would be a great business. Anything that helps citizens have a better relationship with their local government is worth doing. And, having an open government built on open source just seams like the right thing to do.
A collection of articles about the latest in open government and open data.