MetaLearn: Licenses
Licenses range from: Do anything you want but don’t sue me; to: You can’t do anything with this.
By default, anything you make is licensed to a certain extent by the platform you publish it on. Nobody (should be) allowed to use your work unless you state otherwise.
There are many licenses, but I will go only over those related to Open Source and FOSS.
Website with overview of Licenses. Github provides a similar "simplified overview" in it's license selector.
Wikipedia about license compatibility (ability to license projects that use licensed code, under a different license).
Most famous licenses are (from less to more restrictive):
- Public Domain: is/are license(s) that allows anybody to do anything with the material with no restrictions. There is no author, and everything in the Public Domain is stuck there free to use for everybody. Here is more info from CC
- MIT: You can do whatever you want, but the original author can’t be sued for any damages. Because of this every copy of the software needs to include a copy of the MIT license/notice.
- BSD: Similar to MIT. You can do whatever you want, but you can’t sue to author for damages, and you must include a copy of the license in any copy you distribute. You must give credit to the Author.
- Apache License: Same as MIT and BSD, but all modified work must be licensed under Apache as well, and state all changes.
- GPL: This is the most restrictive license. There are several versions of this license. In general: any person you hand the software to, must be able to see it’s source code. A big deal here is the license compatibility (being able to put a other licenses on top of it), read about it on Wikipedia.
- CC: Creative Commons allows you to "create" a license yourself. If you go to this chooser you will end up with an HTML snippet/icon that describes your license. You can choose commercial vs non-commercial. Attribution, sharing requirements etc. Creative commons covers everything from text to images and contains guides on what it all means.
There are also a series of strange licenses, most created as a joke: Bad Licenses. My favorite is the passive-aggressive-license, it allows you to do anything, except run the code.