I've been writing for what seems decades about the UK government's failure to take advantage of open source. And I've been writing for what is certainly years about its promises to do better. It finally looks as if it is finally making good on that promise. It's only one site at the moment, but it's arguably the most important one of all – currently called simply gov.uk
This is a beta, and is the first of three phases:
Public beta test of the site delivering the mainstream, citizen-facing aspects of GOV.UK.
Private beta test of a shared GOV.UK ‘corporate' publishing platform, aimed at replacing most of the activity currently hosted on numerous departmental publishing environments.
A first draft of a GOV.UK ‘Global Experience Language', to provide clear, consistent design, user-experience and brand clarity for those developing sites for the single GOV.UK domain. (see BBC.co.uk/gel for an example).
Even in this early stage, it's attractive and seems to work pretty well. But for the purposes of this column, what's much more interesting is what is to be found under the bonnet:
Hosting and Infrastructure
DNS hosted by Dyn.com
Servers are Amazon EC2 instances running Ubuntu 10.04LTS
Email (internal alerts) sending via Amazon SES and Gmail
Miscellaneous file storage on Amazon S3
Jetty application server
Nginx, Apache and mod_passenger
Jenkins continuous integration server
Caching by Varnish
Configuration management using Puppet
We started out building everything using MySQL but moved to MongoDB as we realised how much of our content fitted its document-centric approach. Over time we've been more and more impressed with it and expect to increase our usage of it in the future.
MySQL hosted using Amazon's RDS platform
Some of the data we need to store is still essentially relational and we use MySQL to store that. Amazon RDS takes away many of the scaling and resilience concerns we had with that without requiring changes to our application code.
MaPit geocoding and information service from mySociety
MaPit not only does conventional geocoding (what's the lon/lat for a postcode) but also gives us details of all the local government areas a postcode is in, which lets us point visitors to relevant local services
That's a pretty staggering array of open source (and a nice vote of confidence for Ubuntu). What this means is that the core UK government site will not only be running almost entirely on open source, but will act as an incredible advertisement for what open source can do. Indeed, I don't see how any corporate IT director will be able to arguably plausibly against open source deployment in the face of this massive roll-out by the UK government.
Of course, it's still a beta, and things could still go horribly pear-shaped; but this is shaping up really well. Kudos to all those involved.