Update 2024

This project has moved to its own home: civic-os.org. Please continue to follow progress there.

Executive Summary

We live in a time of unprecedented access to information. Ushering in the information age has provided the ability to access vast amounts of data around decisions and measurements. At the same time, the organizations who govern us may be evolving too slowly to take advantage of this access to information. Although excellent initiatives exist, such as the Open Government Partnership, most governing organizations (governments, non-profits, etc.) have not adopted the kind of open mindset that allows for: 

  • A high degree of accountability for leadership
  • Truly interactive governance

Civic OS, as designed, will be an open source “operating system” for governance organizations. This is analogous to Enterprise Resource Planning (ERP) systems that many corporations use to manage their resources, but adapted to the needs of government and built around the principles of open data. This extensible system, developed in the open-source, will act as a platform for all city operations, while also granting transparent access to citizens, researchers, and tool builders to collaborate in government and hold elected leaders accountable.

Need

The need for Civic OS stretches across four different categories: increased transparency around decision-making, accountable representation, cost of reporting, and increased efficiency of municipal operations.

Increased transparency around decision-making

Government corruption, thought to be a 20th-century problem, has followed us well into the 21st century despite having access to the tools to eliminate it. While citizens have the opportunity (using Freedom of Information requests) to peek into the decisions made on their behalf, this system leaves much to be desired in terms of access to information as well as cooperation. Today, we should not have to wonder if a decision made by an elected official was made to benefit the governed or only that official (and their less-than-transparent network).

Two specific areas immediately come to mind: purchasing decisions and staffing decisions. Conflicts of interest often arise in these areas as they represent large budgetary allotments, but the values weighed in these decisions are seldom publicized. If the values and rationale that led to a final decision were readily-available, governments would be more readily trusted.

Accountable representation

Citizens in a democracy are familiar with the phenomenon of the “forgotten” campaign promise. It seems as though officials on the campaign trail are content to say whatever will get them elected, regardless of the feasibility or intent to implement those ideas. It can be difficult to track the stated intention of a campaigning official throughout his or her term to discern whether they have worked to fulfill their stated intention.

Journalists do work hard to hold elected officials accountable, but this is still a large effort, relying on the work of entire teams of people. These efforts and results should be readily and easily communicated by that elected official.

Cost of reporting

In order to effectively communicate decisions, results, and other information between governing organizations and the public, a significant amount of effort is often expended in preparation of reports (financial, news and otherwise). This is a crucial function of government, but often the cost of reporting is a barrier to the open communication of information. This can leave the public wondering if an administration is opposed to openness or simply resource-strapped.

Increased efficiency of municipal operations

Governments, being complex organizations, often struggle to effectively collaborate within government let alone with members of the public. There are numerous causes for this difficulty, but many can be attributed to the effort needed to work across disparate systems (and sometimes disparate groups). In order to become more effective in governing the public, these organizations should become more effective with internal communication.

Philosophy

In order to address the stated needs, Civic OS is designed upon the following philosophies.

Open Government

Transparency and accountability are foundational to successful democratic governance. In order for citizens to be informed, they must have ready access to information to make good decisions about who to support, and how to vote in elections and on referenda. 

In Civic OS, accountability is achieved by enforcing the justification of decisions; in other words, forcing leaders to justify key decisions. In order for an individual to decide if he supports an action, he must be able to understand the rationale behind that decision.

See the Open Government Partnership (https://www.opengovpartnership.org/) for more information about Open Government.

Open Data

All data is not created equal. In order to make data open and usable the Open Data Charter has published 6 key principles (https://opendatacharter.net/principles/):

  1. Open By Default
  2. Timely and Comprehensive
  3. Accessible and Usable
  4. Comparable and Interoperable
  5. For Improved Governance & Citizen Engagement
  6. For Inclusive Development and Innovation

Open Source

The term “open source” can have a number of meanings but Civic OS uses the definition consistent with “free software” according to the Free Software Foundation (https://www.fsf.org/about/what-is-free-software). 

The two primary outcomes of this philosophy are democratic development and lower cost of entry. Democratic development allows entities to contribute to development (in code, financial, and administrative contributions) to influence the system’s evolution. This results in a system that is useful for a broad range of diverse organizations. Lower cost of entry is realized by the $0 licensing fees inherent in Free/Open Source software. When development is performed in the open, the cost is shared by an entire community.

Architecture

This section describes the broad principles at work in the software architecture of Civic OS.

Extensible Core

The architecture of Civic OS is designed as a strong core with plugins that add real functionality. This core consists of a GraphQL API, an event-processing system, and a permissions management system. This security-hardened core allows for plugins to define various data schema and events allowing external access to their information as well as providing for internal consumption of data to other plug-ins. 

A fundamental concept of this core is permission management; each user of the system has read or write access to varying levels of data. This allows for anonymized data to be publicly accessed, but also for authenticated users from internal departments access to read and write to different parts of one system.

Inspiration for the system architecture is drawn from Odoo (formerly OpenERP) in both its openness as well as its modularity. 

Security

A visible benefit to broadly-deployed Open Source systems (Linux, for example, which runs 95%+ of the public internet) is better security. This is achieved by exposing the software source code to the minds/eyes of a large number of developers; more software/security bugs are identified and resolved.

Plugins

Another foundational concept in Civic OS is the software’s plugin system. While the Core provides a platform for data storage and recall, plugins are responsible for providing a variety of user interfaces. Plugins define a data model (which is implemented by the core) as well as user interface components, and settings. Plugins are designed to be installable and are hosted on/served by the Core rather than exist as separate software executables.

In addition to the ability to query the core for data, plugins may define code that executes in response to events. These events may trigger on time intervals or as a result of mutated data in order to allow for asynchronous processing of data.

By way of example, anticipated plugins will provide consensus/voting, polling, resource management, human resource functions, timesheets, task tracking, and meeting scheduling/input.

Workflow Plugins

In order to provide decision-based accountability, we anticipate the most crucial plugins to be based on the concept of a process workflow. With this plug-in element, a series of decisions can be defined, each with its own justification, and tracked to allow insight into who made a decision and why that path was chosen. 

In the example of a sidewalk repair complaint, a customer (citizen) could track the status of his complaint and know transparently which action was taken (or why action was not taken). Similarly, when a government procures products and services, workflows will show the crucial aspects of vendor bids as well as the qualitative and quantitative reasoning behind the ultimate decision.

Development roadmap

Minimally Viable Product

To begin delivering value with the smallest possible cost, the development of Civic OS will follow the Minimally Viable Product (MVP) mindset. We anticipate that a combination of the Core with a City Council management plugin will immediately deliver value (Accountability, Cost, Efficiency) to our first partners.

City Council management plugin

The City Council management plugin would facilitate the creation of agendas, council vote recording, and publication of meeting minutes. In addition to allowing easy, historical access to past actions, this system would act as an authoritative source for council actions for reference by city employees and residents alike.

We anticipate 3 levels of data/application access in this plugin: Clerk, Council Member, and Anonymous. Clerks and Council Members would be required to log in to authenticate their identities.

A clerk would have permission to create and publish an agenda, take attendance, and to enter meeting minutes; a Council Member would have permission to submit agenda items for consideration and to vote on proposals. All users (authenticated and anonymous) would have permission to view agendas, attendance, and proposal results.

Additional modules

Once the MVP has been completed, additional plugins may be developed in order to extend the utility of the system. Given enough time and investment to further develop a stable of plugins, Civic OS can transparently manage all of an organization’s operations.

Here are some examples of potential plugins:

  • Financial Accounting
  • Community Safety (incl. Blight)
  • Utility Billing
  • Property Tax Accounting
  • Communications (press releases, published reports, blog posts, etc.)
  • Environmental Monitoring
  • Crowdsourcing Public Sentiment

Legal Structure

The Civic OS software is designed to maximize civic benefit, which should direct the legal structure of the supporting organization. This organization has not yet been formed, but we believe that a non-profit or Public Benefit Corp. will provide the best opportunities to mature and spread the use of Civic OS.

Outstanding Questions/Areas of Research

  1. What type of interaction or data record produces the most accountable system?
  2. What conflicts (between governments and citizens) can be best resolved through this sort of tool?
  3. Will this openness act as a deterrent to internal transparency?
  4. What level of openness is hurtful to citizens?
  5. What kind of tools are needed to help citizens access information more effectively? What impact will these tools have on the “Digital Divide”?

Author’s Biography

Dan Kurin is the CEO of Swiftlet Technology and the founder of the Flint Smart City Initiative. He has co-planned two TEDxFlint events in 2010 and 2011, helped start a makerspace in downtown Flint (Factory Two), and has co-taught a DIY-focused after-school program on the north-side of Flint.

Through Swiftlet, Dan pairs technical experience from a broad range of backgrounds with an ability to facilitate diverse groups in order to solve problems for institutional and startup partners alike. He loves to learn as he engages with projects that span multiple disciplines including Electronics, Software (in all different environments), and Information Technology.

Twitter: @dantheman2865LinkedIn: https://www.linkedin.com/in/danielkurin/