Now that I have a few projects that I intend to release in the near future, the question of licensing model comes into play. There are a plethora of license model comparisons available on the web, but it seems to me that I'm going to have to read through several licenses word for word to see what they offer before deciding on a single or multiple models.
This blog entry really serves as a set of personal notes regarding my upcoming evaluation.
What is important? And really is open source the way to go? Dan Bernstein has an interesting take on things and for software such as qmail, he allows for distribution, but not distribution of modified versions of the original code. Other software he has produced is released unlicensed into the public domain - which is another interesting move. Both strategies employ a certain amount of benefits. There are other free projects that are not necessarily open - like phpNuke which accepts contributions, but is strictly maintained by the original author, and Movable Type - which is free for individuals with reasonable limitations, and paid licenses are required for organizations.
A few key points for any licensing model are:
- Distribution - who can distribute it, make copies of it available for download. What about modified copies? Charging for copies?
- Modification - Can the software be modified? Can modifications be released? Must modifications be released?
- Viral - What viral characteristics does the license have? Is it a good or a bad thing?
- Attribution - How and where am I the original author given credit for building the software?
- Derivitave Works - What is considred derivitave? Can the software be used in derivitave works?
- Realistic Penalties - What happens when someone violates the license? What recourse does the original author have? In the US? Outside the US?
- Clarity - How easy will it be for people who download the code to understand the licensing model behind it?
- Intended Use - Does the licensing model have any restrictions surrounding the software's intended use?
- Customizability - Can the license be modified to meet specific needs? Are there drawbacks to modification?
- Community - what will the community response be regarding a particular licensing model?
- Legality - how enforceable is a given license? Does geographic location impact on the legality of the document?
Additionally, the question of license vs. copyright vs. patent comes into play, as well as an understanding of the timelines involved - can a license effectively be changed post-release? When can you change licensing models? What potential impact does a change in licensing model have on the developer and the end user community? In regards to copyright and patent information - what things must get done and when in order to provide maximum protection?
And then at some point, you have to think to yourself - do I even care? The answer inevitably is "yes, I do care." We all care. It's like documentation - it's a part of software development that isn't fun, is difficult to follow, and is painful to deal with. But licensing paradigms are paramount to success, protection, and community.
What visitors have to say about Evaluating Open Source Licenses
