Q. Do I need to share my source code?
If your source code is necessary to validate your research findings, then you are expected to share it. Please read the guidelines on software sharing published by the Software Sustainability Institute (SSI), written by Neil Chue Hong (with input from Stephen Eglen from the University of Cambridge and Ben Ryan from EPSRC).
Q. Can I share my source code as binary files instead of executable files?
If binary files are sufficient to validate your findings, you may share your source code as binary files.
Q. What reuse license should I choose for my source code?
It is important to take care when deciding on the reuse licence you wish to attach to your data as this affects the way others can use your software. The Software Sustainability Institute has created excellent guidelines on open source licenses for software: http://www.software.ac.uk/resources/guides/adopting-open-source-licence.
In addition, please consult the University of Cambridge Research Data Management Policy Framework.
Q. Most software cannot be patented – how shall I decide if there is a commercial potential and if I should restrict the access to my source code?
You should consider what is more economically beneficial: to share your software openly and allow people to innovate using it, or to commercialise it? You should justify your decision in the data management plan. If you are unsure about what to do, you should consult the Knowledge Transfer Facilitator at your department. The list of Knowledge Transfer Facilitators at the University of Cambridge is here: http://www.admin.cam.ac.uk/offices/rso/iaa/ktf/), or ask Cambridge Enterprise for advice (http://www.enterprise.cam.ac.uk/company-information/people/.
Q. We have used our own software to generate data, but because this software was not generated with public funding it is not publicly available and we don’t want to share it. The supporting data files cannot be opened in any other software. What shall I do?
The fundamental principle is that that published research should be open to scrutiny by others - it may help if you ask yourself ‘If I don’t make this code available to anybody else, under any circumstances, and others question the validity of my published my findings, will I have to tell them ‘you just have to take my word for it?’ – clearly a situation you would wish to avoid. Therefore, it would be ideal if you could share your software, or at least describe the conditions under which you would agree to make it available to anyone wishing to test the robustness of your methodology and hence your published findings. If there are compelling reasons not to share your software, then you should at least share the supporting data files. Perhaps at some point alternative software solutions to process these files will become available.
Q. Can I use GitHub to share my source code?
GitHub’s terms of service mean that it does not meet EPSRC’s expectations as a suitable option for the long-term storage/preservation of code.
You might use GitHub as a useful service in real time for work in progress; however, it is recommended that you share your software via a repository that is more suitable for the long-term preservation, for example, Zenodo. Zenodo additionally offers a GitHub plugin, which allows researchers to easily share their GitHub software via Zenodo.