About the Foundation for Public Code

[Template] Membership Proposal: [Insert name of organization] and the Foundation for Public Code

This resource

Contents

  1. Introduction
  2. The Foundation for Public Code
  3. Why the Foundation for Public Code exists
  4. How the Foundation for Public Code can help your organization
  5. What becoming a member means
  6. Proposed activities
  7. Next steps
  8. Contact

Introduction

[Insert public organization] has recently expressed an interest in becoming a member of the Foundation for Public Code. Members of the Foundation for Public Code contribute to creating a global community of public code empowered organizations that pool resources and collaborate in the digital transformation of the policy and software of modern government.

The Foundation for Public Code was set up to help public organizations develop and maintain software together. This will result in higher quality services for the public that are more cost effective, with less risk and more local control.

This document provides context and lays out some of the activities members can expect to conduct with the Foundation for Public Code.

The Foundation for Public Code

The Foundation for Public Code Vereniging is a non-profit member-owned association. Our mission is to enable public-purpose software and policy that is open and collaborative. Membership is only open to wholly publicly owned organizations.

We do this through codebase stewardship: supporting public organizations and developers (public and private) to develop and maintain code together.

Why the Foundation for Public Code exists

Digital systems are increasingly core infrastructure for governments. Core government processes rely on digital systems to collect and manage their information, help inform decision making and execute their policy.

As governments mature in their approach to their core digital systems, they face issues such as:

  • not having enough in-house technical talent for proactive architectural planning or maintenance of critical technology systems
  • defining what the private market can and cannot do reliably (e.g. store and manage critical data or lock-in situations)
  • understanding how to make their systems future-proof and ready for future innovation
  • avoiding ‘technical debt’ (e.g. building systems now that will cost a lot to maintain later)

In light of this, it is important that public organizations approach their digital systems in a way that promotes effective and high quality delivery, and:

  • helps them work together with other public organizations - sharing software code and learnings - to reduce cost and make investments more effective
  • sets up a sustainable relationship with the market - helping different (types of) companies work together without a single point of failure (e.g. service designers with developers with system maintainers)
  • makes sure the public organizations are in control of their systems so they can respond to new citizen needs, policy goals or technologies

How the Foundation for Public Code can help your organization

We are currently working with over 20 public organizations around Europe (including small municipalities, big cities, regional and national governments) on an open and collaborative process for developing reusable software components. Our aim is to help public organizations procure, develop and maintain code together.

We developed a Standard for Public Code for this purpose. The Standard is a collection of principles to help policy makers, managers, designers, developers and vendors work together to make code that is easy to understand, reuse and maintain.

We also do codebase stewardship, which includes a) reviewing the codebase (and all new additions to it) to make sure it complies with the Standard for Public Code, b) facilitating multi-stakeholder development between public and private organizations, c) helping with marketing to ensure public organizations understand the software and how to implement it, and d) supporting private sector parties to work effectively on these public-sector led software systems.

This will:

  • enable higher quality public services
  • enable the pooling of resources with other public bodies to share the cost of development, maintenance and upgrading
  • build in agility for future growth paths and innovation
  • make solutions more reusable
  • gain international exposure

What becoming a member means

Becoming a member means steering and becoming a co-owner of the association. This includes shaping the governance, operations and financial structure of the Foundation for Public Code.

Members receive voting rights at the General Assembly, where voting rights are proportional to member dues. For example, members vote on which codebases are stewarded by the Foundation for Public Code.

Membership also includes onboarding support to help you get the most out of your membership.

Onboarding includes:

  • supporting your public code projects and codebases
  • introducing you to our network and codebase communities
  • preparing you for your first general assembly

And supporting you with your codebases on:

  • quality of your codebases - understanding how to make them more modular and reusable
  • community for your codebases - understanding how to collaborate better and more openly with other organizations
  • product packaging of your codebases - understanding how to better market and promote your codebases
  • support of your codebases - understanding how to improve your collaboration with the market
  • assessment of your codebases for codebase stewardship

As an association, our members determine how our resources are allocated across members and potential members.

Proposed activities

[public organization] and the Foundation for Public Code will work together to identify appropriate codebases for codebase auditing, certification and stewardship activities.

The Foundation for Public Code’s activities will include:

  • audits to help comply with the Standard for Public Code on every pull request
  • training and workshops to develop better reusable codebases as well as working with the community
  • events and regular calls to integrate a community
  • connecting relevant members of this or other communities in order to increase uptake and contributions
  • storytelling and marketing of the project based on best practices and research to support reuse
  • providing prospective reusers and contributors with a helpdesk to answer their questions on issues ranging from installations to procurement
  • help with creating budgets and framing costs for [public organization]’s activities outlined below

Membership benefits and successful codebase stewardship are directly linked to committing time and budget to:

  • providing in-kind contributions of staff time to continue to shape the Foundation for Public Code’s governance model, membership and financial structure
  • making all code and policy contributions compliant with the Standard for Public Code
  • making selected code and policy contributions, as well as the entire projects, reusable by others
  • partaking in the community in order to further develop and help others reuse the codebase
  • supporting product marketing and access to other organizations in order to enable reuse
  • offering organizational knowledge on procurement and technology to help others reuse the codebase
  • providing structural feedback on how to improve codebase stewardship activities as well as the Standard for Public Code

Next steps

  1. Agree membership dues.
  2. Review the membership contract and the articles of association, and let us know whether your organization is able to agree to these.
  3. Organize follow up meeting with [name] to finalize this proposal and clarify any questions about the contract.
  4. Sign contract and send back to [name].
  5. [bespoke]

Contact

[Insert details of contact point]