Make all new source code open and reusable, and publish it under appropriate licences. Or if this isn’t possible, provide a convincing explanation of why this can’t be done for specific subsets of the source code.
Why it’s important
Public services are built with public money. So unless there’s a good reason not to do so, the code they’re based should be made available for people to reuse and build on.
Open source code can be reused by developers working in government, avoiding duplication of work and reducing costs for government as a whole. And publishing source code under an open licence means that you’re less likely to get locked in to working with a single supplier.
What it means
Service teams should:
- write code in the open from the start, and publish it in an open repository - minus any sensitive information, like secret keys and credentials
- keep ownership of the intellectual property of new source code that’s created as part of the service, and make it available for reuse under an open licence
There are a few cases when you should not publish code in the open. For example, code that relates to a sensitive government policy that hasn’t been announced yet.
Guidance first published