|
|
Line 1: |
Line 1: |
| + | |
| = Why should you pick a license? = | | = Why should you pick a license? = |
| | | |
Line 4: |
Line 5: |
| | | |
| Also see "Why is an open-source licence useful?" on the Software Sustainability's [http://www.software.ac.uk/resources/guides/adopting-open-source-licence Choosing an open-source licence page] article. | | Also see "Why is an open-source licence useful?" on the Software Sustainability's [http://www.software.ac.uk/resources/guides/adopting-open-source-licence Choosing an open-source licence page] article. |
− |
| |
− |
| |
− |
| |
| | | |
| = Picking a license = | | = Picking a license = |
Line 16: |
Line 14: |
| With these two distinctions (type of work, type of license), the following decision matrix can be drawn: | | With these two distinctions (type of work, type of license), the following decision matrix can be drawn: |
| | | |
− | {| style="width: 100%; border:1px black solid; background:#def" | + | {| style="width: 100%; border:1px black solid; background:#def" |
| |- | | |- |
| ! scope="col" | | | ! scope="col" | |
Line 34: |
Line 32: |
| |} | | |} |
| | | |
− | The following sections elaborate on both options for each type of work: code, data, and other. | + | The following sections elaborate on both options for each type of work: code, data, and other.<br/> |
− | <br/> | + | |
| | | |
| == Code == | | == Code == |
Line 58: |
Line 55: |
| | | |
| More information, geared towards the use of copyleft licenses for one's code, can be found in the article [https://www.gnu.org/licenses/license-recommendations How to choose a license for your own work] on [https://www.gnu.org/ gnu.org]. | | More information, geared towards the use of copyleft licenses for one's code, can be found in the article [https://www.gnu.org/licenses/license-recommendations How to choose a license for your own work] on [https://www.gnu.org/ gnu.org]. |
− |
| |
| | | |
| === Permissive licenses === | | === Permissive licenses === |
Line 71: |
Line 67: |
| | | |
| One important aspect of all these licenses is the liability clause. It prohibits any code user from holding the code producer liable for any damages caused by using the software code. | | One important aspect of all these licenses is the liability clause. It prohibits any code user from holding the code producer liable for any damages caused by using the software code. |
− |
| |
− | <br/>
| |
− |
| |
| | | |
| == Data == | | == Data == |
Line 80: |
Line 73: |
| | | |
| *[http://opendatacommons.org/licenses/odbl/ Open Data Commons Open Database License (ODbL)]: this license is used by OpenStretMap | | *[http://opendatacommons.org/licenses/odbl/ Open Data Commons Open Database License (ODbL)]: this license is used by OpenStretMap |
− | * The [http://opendatacommons.org/licenses/by/1.0/ Open Data Attribution License (ODC-By)] (analog to CC BY) differs from ODbL mainly because of missing copyleft regulation. It basically only to mention the contributors to the original database | + | *The [http://opendatacommons.org/licenses/by/1.0/ Open Data Attribution License (ODC-By)] (analog to CC BY) differs from ODbL mainly because of missing copyleft regulation. It basically only to mention the contributors to the original database |
| *[http://opendatacommons.org/licenses/pddl/summary/ Public Domain Dedication and License (PDDL)] is even more permissive and does neither require attribution nor force a derived work under any specific license conditions. | | *[http://opendatacommons.org/licenses/pddl/summary/ Public Domain Dedication and License (PDDL)] is even more permissive and does neither require attribution nor force a derived work under any specific license conditions. |
| | | |
| *[http://creativecommons.org/ Creative Commons] licenses have been reworked since version 2 to include provisions which make them suitable for databases and data sets as well. Please refer to the section "Other" below for their properties. See also the related question [http://opendata.stackexchange.com/questions/5995/are-creative-commons-licenses-suitable-for-data are CC licenses suitable for data?] on StackExchange. | | *[http://creativecommons.org/ Creative Commons] licenses have been reworked since version 2 to include provisions which make them suitable for databases and data sets as well. Please refer to the section "Other" below for their properties. See also the related question [http://opendata.stackexchange.com/questions/5995/are-creative-commons-licenses-suitable-for-data are CC licenses suitable for data?] on StackExchange. |
− |
| |
− | <br/>
| |
− |
| |
| | | |
| == Other == | | == Other == |
Line 92: |
Line 82: |
| The Creative Commons license family is probably most widely known. As of now (September 2015), the fourth version of these licenses have been published. First, the two "free licenses" are presented: | | The Creative Commons license family is probably most widely known. As of now (September 2015), the fourth version of these licenses have been published. First, the two "free licenses" are presented: |
| | | |
− | * [http://creativecommons.org/licenses/by/4.0/ CC BY], short for attributions ("by" whom was the work created?), requests to name the source when sharing the work or a derived work. | + | *[http://creativecommons.org/licenses/by/4.0/ CC BY], short for attributions ("by" whom was the work created?), requests to name the source when sharing the work or a derived work. |
− | * [http://creativecommons.org/licenses/by-sa/4.0/ CC BY-SA] is similar to the GPL as it requires any derived works to be published under a "compatible" (easiest: the same) license. It is therefore the license used by Wikipedia. | + | *[http://creativecommons.org/licenses/by-sa/4.0/ CC BY-SA] is similar to the GPL as it requires any derived works to be published under a "compatible" (easiest: the same) license. It is therefore the license used by Wikipedia. |
| | | |
| Only the previous two licenses qualify as "free" licenses, as they do not restrict, what a user may do with the licensed work. | | Only the previous two licenses qualify as "free" licenses, as they do not restrict, what a user may do with the licensed work. |
| | | |
− | * The non-commercial (NC) option allows to prohibit any "commercial" usage of one's work. However, it is notoriously hard to define ''what exactly is'' a commercial activity. This problem is explained in great detailed in the brochure [http://openglam.org/files/2013/01/iRights_CC-NC_Guide_English.pdf Consequences, risks and side-effects of the license module "non-commercial use only"]. Anyway, the two resulting licenses are consequently called [http://creativecommons.org/licenses/by-nc/4.0/ CC BY-NC] and, with the share-alike option, [http://creativecommons.org/licenses/by-nc-sa/4.0/ CC BY-NC-SA]. | + | *The non-commercial (NC) option allows to prohibit any "commercial" usage of one's work. However, it is notoriously hard to define ''what exactly is'' a commercial activity. This problem is explained in great detailed in the brochure [http://openglam.org/files/2013/01/iRights_CC-NC_Guide_English.pdf Consequences, risks and side-effects of the license module "non-commercial use only"]. Anyway, the two resulting licenses are consequently called [http://creativecommons.org/licenses/by-nc/4.0/ CC BY-NC] and, with the share-alike option, [http://creativecommons.org/licenses/by-nc-sa/4.0/ CC BY-NC-SA]. |
− | * If you do not want any changes or improvements to your work to be shared or redistributed, the "no derivatives" (ND) is available. Its main use is by musicians that only want their music to be shared by listeners, but not allowing remixes or cover version. The resulting licenses are [http://creativecommons.org/licenses/by-nd/4.0/ CC BY-ND] or, by combining it with the NC tag, [http://creativecommons.org/licenses/by-nc-nd/4.0/ CC BY-NC-ND]. | + | *If you do not want any changes or improvements to your work to be shared or redistributed, the "no derivatives" (ND) is available. Its main use is by musicians that only want their music to be shared by listeners, but not allowing remixes or cover version. The resulting licenses are [http://creativecommons.org/licenses/by-nd/4.0/ CC BY-ND] or, by combining it with the NC tag, [http://creativecommons.org/licenses/by-nc-nd/4.0/ CC BY-NC-ND]. |
− | | + | |
− | For inspiration, the Creative Commons homepage also lists [https://creativecommons.org/examples a host of example projects licensed under all different licenses] to give an impression which situation triggered which decision by the presented individuals.
| + | |
− | <br />
| + | |
| | | |
| + | For inspiration, the Creative Commons homepage also lists [https://creativecommons.org/examples a host of example projects licensed under all different licenses] to give an impression which situation triggered which decision by the presented individuals.<br/> |
| | | |
| = FAQ = | | = FAQ = |
| | | |
| == Why is it a bad idea to use Creative Commons licenses for code? == | | == Why is it a bad idea to use Creative Commons licenses for code? == |
| + | |
| Long answer is in the question [http://opensource.stackexchange.com/questions/1717/why-is-cc-by-sa-discouraged-for-code Why is CC BY-SA discouraged for code?] on StackExchange. | | Long answer is in the question [http://opensource.stackexchange.com/questions/1717/why-is-cc-by-sa-discouraged-for-code Why is CC BY-SA discouraged for code?] on StackExchange. |
| | | |
Line 118: |
Line 107: |
| | | |
| But the license can be changed: You can change the licence for the next version/release if all contributors (copyright holders) agree, or have previously agreed on the possibility of doing so, via a contributor agreement. Search for "contributor (license/assignment) agreement" online, for pointers on how to enable the latter up front. (cf. [http://opensource.org/faq#contributor-agreements FAQ on contributor agreements on opensource.org], [http://wiki.civiccommons.org/Contributor_Agreements Civic Commons article on contributor agreements]) | | But the license can be changed: You can change the licence for the next version/release if all contributors (copyright holders) agree, or have previously agreed on the possibility of doing so, via a contributor agreement. Search for "contributor (license/assignment) agreement" online, for pointers on how to enable the latter up front. (cf. [http://opensource.org/faq#contributor-agreements FAQ on contributor agreements on opensource.org], [http://wiki.civiccommons.org/Contributor_Agreements Civic Commons article on contributor agreements]) |
− |
| |
| | | |
| == What does sublicensing mean? == | | == What does sublicensing mean? == |
Line 125: |
Line 113: |
| | | |
| Sublicensing allows somebody to relicense all or part of the licensed software, for example, to use BSD-licensed code in a closed-source commercial application. | | Sublicensing allows somebody to relicense all or part of the licensed software, for example, to use BSD-licensed code in a closed-source commercial application. |
− |
| |
| | | |
| = Further reading = | | = Further reading = |
Line 134: |
Line 121: |
| **“What happens if I am using someone else's code in my software?” | | **“What happens if I am using someone else's code in my software?” |
| **“What do I need to do before applying my choice of licence?” | | **“What do I need to do before applying my choice of licence?” |
| + | |
| *This Nature commentary article dispels common excuses for not publishing scientific code and argues that code should be published more frequently. [http://www.nature.com/news/2010/101013/full/467753a.html Barnes N (2010), Publish your computer code: it is good enough, Nature 467, 753. doi:10.1038/467753a] | | *This Nature commentary article dispels common excuses for not publishing scientific code and argues that code should be published more frequently. [http://www.nature.com/news/2010/101013/full/467753a.html Barnes N (2010), Publish your computer code: it is good enough, Nature 467, 753. doi:10.1038/467753a] |
| *The following paper contains a good overview of different licenses and some of the questions one might ask when deciding on a license, from the point of view of a programming scientist: [http://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1002598 Morin A, Urban J, Sliz P (2012), A Quick Guide to Software Licensing for the Scientist-Programmer. PLoS Comput Biol 8(7): e1002598. doi:10.1371/journal.pcbi.1002598] | | *The following paper contains a good overview of different licenses and some of the questions one might ask when deciding on a license, from the point of view of a programming scientist: [http://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1002598 Morin A, Urban J, Sliz P (2012), A Quick Guide to Software Licensing for the Scientist-Programmer. PLoS Comput Biol 8(7): e1002598. doi:10.1371/journal.pcbi.1002598] |
Line 140: |
Line 128: |
| *[http://opensource.org Opensource.org]: lots of helpful information esp. under FAQ (e.g. provides an aswer to “Why not use CC for code?”) | | *[http://opensource.org Opensource.org]: lots of helpful information esp. under FAQ (e.g. provides an aswer to “Why not use CC for code?”) |
| **Open Source Licenses: wallow in the abundunce of licenses out there, then come back to the FAQ and read “Which Open Source license should I choose to release my software under?” | | **Open Source Licenses: wallow in the abundunce of licenses out there, then come back to the FAQ and read “Which Open Source license should I choose to release my software under?” |
| + | |
| *[https://www.wbs-law.de/it-recht/open-source-lizenzen-ein-uberblick-35752/ Article (in German) with overview of different open licenses and problems] | | *[https://www.wbs-law.de/it-recht/open-source-lizenzen-ein-uberblick-35752/ Article (in German) with overview of different open licenses and problems] |
| *[http://www.ifross.org/lizenz-center/ Detailed list (in German) of licenses] | | *[http://www.ifross.org/lizenz-center/ Detailed list (in German) of licenses] |
− | * The Journal of Open Research Software (JORS) is a journal dedicated to publishing Open Source research software. It is therefore a useful outlet to publish software source code in, and then be able to reference it from other articles: http://openresearchsoftware.metajnl.com/ | + | *The Journal of Open Research Software (JORS) is a journal dedicated to publishing Open Source research software. It is therefore a useful outlet to publish software source code in, and then be able to reference it from other articles: [http://openresearchsoftware.metajnl.com/ http://openresearchsoftware.metajnl.com/] |
In other words, why not just put code online without a license? A license clarifies the conditions under which your code can be re-used. In absence of a license, the author still retains copyright, and the conditions under which the code can be used are unclear. A sentence like "feel free to use this code" does not improve the situation, because it does not clarify to what extent any possible user should "feel free" to use it. Standard licenses provide pre-defined sets of standard conditions, which both providers and users only have to understand once, and then immediately can recognise/categorise later.
The most common licenses for a given artifact can be determined by its type: code, data, or any other generic digital "creative work" (documentation, reports, figures). For any given project, its components can be licensed independently by type.
At the most basic level, one must decide on whether one wants to use a copyleft license or a more permissive license. While copyleft assures that code changes by any future contributors must stay public, permissive licenses only require attribution in derived works.
With these two distinctions (type of work, type of license), the following decision matrix can be drawn:
The following sections elaborate on both options for each type of work: code, data, and other.
The following minimal questions can give a guideline whether one should choose a copyleft or a permissive license for a project. The Wikipedia article on Free software licenses gives a more in-depth overview on both types and their properties.
Developers who use GPL code must publish the source code available they share or sell an application built upon it. In this case, the source code must also contain any changes the developers may have made. If GPL code is used but not shared or sold, the code is not required to be made available and any changes may remain private. This has the important consequence that software written under such a license can not be included in "non-free" software. The GPL licenses are:
One important aspect of all these licenses is the liability clause. It prohibits any code user from holding the code producer liable for any damages caused by using the software code.
The Creative Commons license family is probably most widely known. As of now (September 2015), the fourth version of these licenses have been published. First, the two "free licenses" are presented:
Only the previous two licenses qualify as "free" licenses, as they do not restrict, what a user may do with the licensed work.
Short answer: the license is written for creative works (music, film, texts), not software code. Therefore, it leaves many important details (what consitutes a "derived" work, is linking allowed, what about patents?) unspecified. So: don't use CC licenses for code.
With the first release (if possible already for “small” releases like within your institute) detmermine a licence for your project.
But the license can be changed: You can change the licence for the next version/release if all contributors (copyright holders) agree, or have previously agreed on the possibility of doing so, via a contributor agreement. Search for "contributor (license/assignment) agreement" online, for pointers on how to enable the latter up front. (cf. FAQ on contributor agreements on opensource.org, Civic Commons article on contributor agreements)
Sublicensing allows somebody to relicense all or part of the licensed software, for example, to use BSD-licensed code in a closed-source commercial application.