Choosing a License

Choosing a License

Non-Software Licenses

  • Creative Commons is the go-to for open source licenses and guidance. “Creative Commons is a nonprofit organization that helps overcome legal obstacles to the sharing of knowledge and creativity to address the world’s pressing challenges.”
  • The GitHub guide also links to licenses for non-software and mixed works.

Software Licenses

  • Here’s GitHub’s guide to choosing a software license. Here’s a list.
  • p5.js uses the GNU Lesser GPL v2.1. If you follow this link, you can see how GitHub automatically annotates files that it recognizes as license files.
  • The Arduino IDE and Wiring framework also use this license.
  • Most software I use and write uses the MIT license.

Why not use Creative Commons for Software?

Creative Commons themselves state that CC licences should not be used for software and recommend using licences approved by the Free Software Foundation and the Open Source Initiative.
One reason is that CC licences do not make any distinction between source and object; while this is fine for most simple content resources, for software to be considered as either Free Software or Open Source, access to source code is an essential requirement. In some cases software has been released under a Creative Commons licence but with no access to source code; this does not fall within the definition of either Free Software or Open Source, but could be described as perhaps “gratis” or “freeware” instead.
A second reason is that CC licences are not compatible with the GPL, and any CC licences involving the ND and NC clauses are incompatible with any Free Software or Open Source licence.
It may be tempting to select an Creative Commons licence for software on the grounds that the range of software licences is quite extensive and possibly confusing. However, this is likely to cause more problems than it will solve.