Standard for Public Code

Version history

Version 0.2.1

March 1st 2021: 🧽 the seventh draft has minor cleaning up after version 0.2.0.

  • New SHOULD requirement on using a distributed version control system and why distributed is important.
  • Feedback requirements for rejected contributions are more strict than accepted ones.
  • Specify that copyright and license notices should also be machine readable.
  • Advice on how to test that notices be machine readable.
  • Clarify guidance for rolling releases.
  • Clear up definition of version control in glossary.
  • Add further reading encouraging contribution, SPDX, Git and reviewing contributions.
  • Add links to videos about the concept of public code.
  • Update BPMN link.
  • Reduce link duplication.
  • Add Alba Roza and Ngô Ngọc Đức Huy to authors.
  • Made additional minor changes to text for clarity.

Version 0.2.0

October 26th 2020: 🎊 the sixth draft splits a requirement and adds clarity.

  • Split “Welcome contributions” criterion into “Make contributing easy” and “Welcome contributors”.
  • Rename criterion “Pay attention to codebase maturity” to “Document codebase maturity”.
  • Changed MUST to SHOULD for requirement of codebase in use by multiple parties.
  • Add MUST NOT requirement regarding copyright assignment.
  • Clarify role of configuration in reusable code requirement.
  • Glossary additions: continuous integration, policy, repository, and version control.
  • Replace references to ‘cities’ with ‘public organizations’.
  • Clarify aspects of sensitive code by separating contributor and reviewer requirements into separate items.
  • Expand further reading, and guidance to policy makers, developers and designers.
  • Add Felix Faassen and Arnout Engelen to authors.
  • Made additional minor changes to text for clarity.

Version 0.1.4

November 27th 2019: 🧹 the fifth draft consists mostly of additional minor fixes.

  • Linked License.md file.
  • Add Sky Bristol, Marcus Klaas de Vries, and Jan Ainali to authors.
  • Made punctuation more consistent, especially for bullet lists.
  • Made some minor changes to text for clarity.

Version 0.1.3

October 8th 2019: 🍂 the fourth draft only patches and fixes minor things for the autumn cleaning

  • Renamed continuous delivery to continuous integration.
  • Referencing accessibility guidelines in the language standard.
  • A bunch of style and consistency fixes.

Version 0.1.2

August 22th 2019: 🌠 the third draft focuses on better text and takes community input

  • With some great new contributors comes a fresh author list.
  • All links are now HTTPS.
  • General proofreading, wording clarifications, and smashed typos.
  • Updated criteria:
    • Requirement for reuse in different contexts
    • Recommendation for explicit versioning
    • Recommendation for multi party development
    • Recommendation for license headers in files
    • Recommendation for vulnerability reporting
    • Recommendation for explicit documentation of governance

Version 0.1.1

May 9th 2019: 🤔 the second draft fixes a few basic oversights and fixes a lot of typos

  • Removed references to the Foundation for Public Code, we’re going to have to change the name in becoming an association.
  • Updated the introduction.
  • Updated the glossary.
  • Added the code of conduct.
  • We’ve recommended using the publiccode.yml standard for easier reuse.

Version 0.1.0

April 16th 2019: 🎉 the first draft is ready, it is all brand new and has snazzy new ideas in it

  • 14 criteria with their requirements and how to operationalize them.
  • An introduction with a high level background, what this standard is, and how the Foundation for Public Code will use it.

This first version was produced together with the Amsterdam University of Applied Sciences and the City of Amsterdam as a part of the Smart Cities? Public Code! project.