The Minimum Government Responsibility: API First

Robert L. Read
The Policy
Published in
3 min readNov 23, 2015

--

In the age of information, the government’s first responsibility is to democratize the data that it collects and the services it provides by publishing data in open formats and Application Programming Interfaces (API) to those services.

The government may also have a responsibility to its citizens to produce a good graphical user interface (GUI). But the investment to do this should be done after an open, computer-accessible interface is published.

This smacks of elitism. Most of us cannot program a computer, and most of us do not know what an API is. An API is the way that computers talk to each other. Although APIs are becoming much easier for non-developers to use, they cannot be considered friendly to most users.

But the law and automobile motors are not user-friendly, either. Both require professionals, called lawyers and auto mechanics. Occasionally a non-professional can partially navigate the legal system or do some simple auto repairs — but these are the exceptions that prove the rule.

The truth is the government is not particularly good at building graphical user interfaces. Although the government should invest far more heavily in design expertise to make the quality of user experience of government websites and mobile apps more similar to successful commercial systems, I see little value in it doing so until it has published the API first.

By publishing the API first, any person or group now has a legal right and a capability to utilize the government data or service. That a group might have to pay to make the use of the data more convenient is an argument that the government should also make a friendly interface for non-experts to save that expense — but it is not an argument that the GUI should be produced first and the API later.

Generally speaking, any time the government needs you to fill out a form, it can be accomplished as an API and/or a GUI. The API is hard for humans to use, and the GUI is hard for computers to use. But the compelling difference is that anyone with enough effort or money can build a good user experience on top of an API. APIs thus enable everyone at least the potential to use the service or data, even if only through a professional. The GUI may do that — or, if you are disabled or not an English speaker, or simply unable to use a computer, it may not.

For the government to delay the publication of an API while investing in a GUI is depriving 100% of the public the right to use the data or the service for that period of time so that 90% of the people will have ease of use later.

This will not be obvious to a non-technologist, but the truth is that it is much, much, easier to produce an API than a good GUI — perhaps ten times easier. Therefore, if you are going to invest $100 in providing a service, the first $9 should go into publishing the API and the next $90 into the GUI.

The technologically or monetarily wealthy may get access to the service faster than the general public under the “API First” model. I would prefer that were not the case. But if we do not adopt the “API First” policy, the poor will have to wait much longer to get access to the service or data, which is probably worse. Certainly I would never delay the publishing of data upon which the access to equal justice depends in order to wait until a GUI can be constructed. In the words of Buckminster Fuller (emphasis mine):

All of humanity is in peril of extinction if each one of us does not dare, now and henceforth, always to tell only the truth, and all the truth, and to do so promptly — right now. — Buckminster Fuller, Critical Path (1981)

The government has a responsibility to tell the truth, all of the truth, and to tell it right now. To argue that the publication of the data should be delayed in the interest of the fairness of the consumption of that data seems paternalistic.

We have now entered an age in which the data and API infrastructure of our society, including its security, should be treated with the same seriousness that we treat our roads and electrical grid. In such an age, computer access to government systems is never “done”. It should be constantly improving, broadening, and enriching itself.

The pragmatically best way to do that is by publishing the API first.

--

--

Public Inventor. Founder of Public Invention. Co-founder of @18F. Presidential Innovation Fellow. Agilist. PhD Comp. Sci. Amateur mathematician.