Open Source: That's the Way to Do It

Although the use of open source by the UK government has an unhappy history (and one that certainly isn't finished), one ray of hope comes from Gov.uk, as I've noted before. The driving force behind that site is the Government Digital Service...

Share

Although the use of open source by the UK government has an unhappy history (and one that certainly isn't finished), one ray of hope comes from Gov.uk, as I've noted before. The driving force behind that site is the Government Digital Service (GDS), and on its blog there's a particularly interesting post by Mike Bracken, who rejoices in the splendid title of "Executive Director of Digital in the Cabinet Office."

It's called "Of the web, not on the web", and it introduces some changes to the GDS:

Today we announced some small but important changes in governance. The detail is here but the upshot is: we won't have a cross-government Chief Information Officer (CIO) any more, nor a Head of Profession for Information and Communications Technology (ICT). We are moving responsibility for these capabilities to the Government Digital Service and we are closing some cross-government boards in various technology areas and reviewing the rest in order to make sure we are set up as efficiently as possible.

That post also launched the Digital by Default Service Standard, a guide for all those in the UK government who are involved in the delivery of digital services. Even for those outside government, it's well worth looking through the whole thing, but there are a couple of particularly interesting pages: one on open standards and licensing, the other on open source.

Here are some of the latter's wise words:

Use open source software in preference to proprietary or closed source alternatives, in particular for operating systems, networking software, Web servers, databases and programming languages.

Problems which are rare, or specific to a domain may be best answered by using software as a service, or by installing proprietary software.

In such cases, take care to mitigate the risk of lock-in to a single supplier by ensuring open standards are available for interfaces.

Where possible use DNS addresses you own for services, and demand open formats for the import and export of your data.

For unique needs and common problems which have yet to be solved well elsewhere, develop software by coding in the open and publish under an open source licence (Legal processes/Open standards and licensing).

Whenever possible construct software in the form of small components and utilities, re-usable both inside and outside of your organisation. Keep infrastructure code and secrets, including passwords and deployment configuration and scripts, separate and privately from publicly visible source code.

A successful open source project will garner contributions from a large number of sources, both inside and outside of a single organisation. Allow developers time to review contributions, and answer issues and discussion raised by others using the software.

Larger open source projects often evolve an extension model to enable others to continue to use the service in a variety of often unexpected and possibly undesirable ways whilst keeping the core project coherent under the editorship of a small, trusted group ofcommitters.

That's a really splendid distillation of how organisations should use open source. The fact that it is to be found on a UK government Web site is little short of miraculous. Let's hope people there read it and act on it.

Follow me @glynmoody on Twitter or identi.ca, and on Google+

Find your next job with computerworld UK jobs