What is the operating system for GAP (government as platform)?

Government as Platform (GAP) is the idea that the functions of government should be delivered by creating a framework of open and accessible elements, that citizens can interact with and combine in order to deliver outcomes. This vision is contrasted against the current model which is caricatured as “government as vending machine” in which you put cash in one end and get products and services out of the other.

Tim O’Reilly coined the term first I believe, and is developing the debate around this over at oreilly.com. Here are a couple of videos of interviews with the man:

Here is an interview by Delib.co.uk:

A short documentary made by Delib – www.Delib.co.uk – about the US government’s Open Government initiative, featuring interviews with a whole host of insiders and commentators including: Beth Noveck (White House Head of Open Gov), Tim O’Reilly (O’Reilly Media), Jeffrey Levy (EPA), the Sunlight Foundation and other …

And here a nice infographic (again by delib.co.uk).

Pure Legal Code
Over here at #LiquidLaw we are developing a technical basis for implementing Government as Platform, which we are calling PLC. PLC is a programming language for the legal profession, which can be applied to a range of constitutional arrangements that an organisation may seek to make. Programming in PLC will create both the legal and administrative frameworks for the organisation, and can be applied to social enterprises, private companies, and democratic organisations.

PLC is designed to be a programming language with a difference – it is social code. Social code is the ability to code for ambiguous or socially defined constructs using the familiar legal decision making techniques (juries, arbitration, judicial review, constitutional voting). Output can be taken from one socially defined process, and input into other functions written in PLC.

The language itself is envisaged as an evolving set of  domain specific languages, which utilise agile development, to facilitate the creation of an evolving body of code, which is both programming language, legalese, and a well formed legal document, at the same time. It should have multiple representations in a similar fashion to the current Creative Common licenses: a legal code layer, a human readable layer, and a machine readable layer, but extends this to include more language relevant features.

In addition to the familiar three layer model of legal code, we seek to enable both lawyers, and lay people (programmers and system administrators) to code their own agreements through the use of an English like syntax, or visual programming tools. In other words we want to facilitate a form of legal mashup, that lay people can use to create their own custom organisational structures and arrangements.

The methodology is based around the concepts of literate programming, and Language Oriented programming, in order to create the doman specific languages that the end user can utilise to create tools for their communities. Finally there is another paradigm that we can borrow from that can help us picture how real world legal tools, can be created from this language: scaffolding and automatic web application creation.

The end result is the ability of the lay person to create the essential organisational infrastructure for their project, including the legal agreements and web/mobile applications that can help them administer the project in a legally robust fashion. Taken together with concepts such as open data, and application programming interfaces we have a flexible set of paradigms (and indeed in many cases actual implementations), for Government as Platform.

This is an initial post, and I’ll be exploring many of these concepts in greater detail in the forthcoming months. If anyone is interested in contributing to the development of PLC, from a legal or technical basis drop us a line.

This entry was posted in PLC. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>