Open source policies should be written to ensure that open source software is considered equally alongside closed source. This page (will eventually) outline what a policy should look like and how it should be implemented, it also provides links to example policies.
Whilst this document is under construction you might want to take a look at the following:
Policies for Contribution
Some would suggest that there is almost never a good reason not to donate code to an appropriate project unless an open source licence would somehow prevent your organisation from achieving what it needs to achieve with that software.
In other words, unless you expect your organisation to go into the software business, either selling software, support or development expertise, there is rarely any reason to keep code to oneself. Even if you do plan to head in this direction open source will rarely preclude such an action, and some would claim it enhances your opportunities.
Even if your organisation thinks it may want to exploit the software in some other way in the future many projects allow you to maintain your own copyright in the work. That is, you are often still at liberty to do what you like with your own code (within the confines of the reciprocal nature of some licences).
So, the key questions that an organisation should ask itself when considering whether it should donate code to a project are:
- is there value in the code itself to the organisation
- if yes, can that value be realised even if the code is donated to an open source project
- is the organisation willing to undertake to maintain the code in-perpetuity, including managing local test and upgrade cycles which will no longer be aligned to those of donor projects
- is the organisation confident that subsequent staff will have the necessary skills to maintain local code?
- if releasing independently of other projects, is the organisation willing and able to build sufficient community around the contributions or to invest sufficient resources to maintain the code
- is the organisation certain that it has the rights to contribute the code
A contribution policy needs to address the following issues:
- understand IPR ownership
- copyright is core to open source working
- you can't make assumptions about code ownership
- authors may change licence or even licence it properly
- do licence differences matter?
- understand licence comparabilities
- community is vital
- for open developer
- don't fork
- don't code dump
- feedback to community makes project healthy
- it's educational (good for staff development and retention)
- time saving, effort saving
- don't reinvent the wheel
- communities are pussycats
- open source projects have strong leaders
- there may be a wider community
- without leaders there is no community
- without community there are no leaders
- openness is key to community
- community over code
- writing code solves todays problems
- supporting community solves tomorrows problems
- community needs more than coders
- code that can be reused is excellent code
- allows community to be built
- closed source need not be reused externally
- do we care about wide usability
- Staff development is important
- tools chains
Example Contribution Policies
When and how to consider open source in purchasing decisions is an important part of ensuring your organisation is ready and able to take advantage of open source where appropriate.