Skip to main content Link Menu Expand (external link) Left Arrow Right Arrow Document Search Copy Copied

Ethics

Research software often deals with sensitive data, such as personal information or proprietary data. Ethical considerations ensure that software developers implement appropriate security measures and adhere to data protection regulations. Researchers must also obtain informed consent from participants and handle data in a way that respects privacy rights and maintains confidentiality.

If your software collects and stores any data from your users, ideally you will want to host your software from a Canadian location. You and the data are protected by the Canadian constitution if your hosting server and data centre are in Canada. Services hosted outside Canada may be open to data seizure or surveillance by foreign personnel or international security agencies.

Hosting within Canadian soil is to protect you and your data, if for any reason you cannot host the software in Canada, you are required to inform your users that their data collected by the software may be processed in a foreign country.

Some research software, such as machine learning models, should be developed and used in a way that promotes inclusivity and minimizes biases. Ethical considerations involve ensuring that software tools do not discriminate against certain groups, provide equal opportunities for participation, and consider diverse perspectives. Developers need to be aware of biases that may be present in their algorithms or data and work to address them.

DISCLAIMER: The following content is intended to highlight resources which may be useful to those developing open-source research software. This content is for informational purposes only. It is NOT legal advice. McMaster University and McMaster Research Software Development Team are not responsible for the content referenced in this guide, nor any and all costs, claims, losses, damages, expenses which may result through the application of this information. Be sure to contact a professional for legal advice.

It is encouraged to assign an appropriate license for your research software project. When choosing a license, consider the following:

  • Are modifications/distributions of the software possible with/without reference to your name, organization and the license you have chosen?
  • Is the software available for commercial use?
  • Do you or your organization own/use any patents in the research software project?
  • Do the tools/libraries you used to develop the software require you to reference or enforce the license you need to use?

Where possible, use existing licenses, such as GNU General Public License or MIT License, rather than creating custom terms of use. And here are some resources for comparing different licenses.

Can I share my research data and software source code using the same Creative Commons License? Short answer is no.

The Creative Commons Organization strongly recommend against using Creative Commons licenses for software in its Frequently Ask Questions.

Unlike software-specific licenses, CC licenses do not contain specific terms about the distribution of source code, which is often important to ensuring the free reuse and modifiability of software. Many software licenses also address patent rights, which are important to software but may not be applicable to other copyrightable works. Additionally, our licenses are currently not compatible with the major software licenses, so it would be difficult to integrate CC-licensed work with other free software. Existing software licenses were designed specifically for use with software and offer a similar set of rights to the Creative Commons licenses.

Ethical considerations extend to intellectual property and licensing in research software development. Developers should respect copyright, properly attribute existing software components, and consider open-source licensing when appropriate. This ensures the fair and responsible use of intellectual property.