Object Exchange Licensing
Paul Baker
Posts: 6,351
I have been working on the Licensing for the Object Exchange, we are nearly to the point of implementing it. I am posting it here to get some feedback from our customers. Now let me make this clear, we are not interested in your opinion on which licensing agreement we chose, we are happy with what we have chosen·and we are sticking with it. What we are intested in is your thoughts on how it's presented, whether it's clear what you can and can't do under the license, and if there are any questions you have which haven't been answered.
Important note to all people with objects on the exchange: When this License takes effect we are going to invite all of our object authors to revise thier objects to include the MIT license. We ask that you do not make this change until you are asked. We want to be able to track which objects have been revised and which haven't and having it so the revisions don't occur until after our implementation date will make it easier to track. -Thanks
Paul Baker
Propeller Applications Engineer
Parallax, Inc.
Post Edited (Paul Baker (Parallax)) : 1/28/2008 6:10:47 PM GMT
Important note to all people with objects on the exchange: When this License takes effect we are going to invite all of our object authors to revise thier objects to include the MIT license. We ask that you do not make this change until you are asked. We want to be able to track which objects have been revised and which haven't and having it so the revisions don't occur until after our implementation date will make it easier to track. -Thanks
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔Object Exchange License Agreement says...
All software on the Parallax Propeller Object Exchange is provided under the MIT License (what the Free Software Foundation calls the X11 License). This license supersedes any license which may be stated by the individual author and any other statements of licensing made by Parallax Inc., such as the 2007 and 2008 catalogs stating the code on the Object Exchange is provided as public domain. Submission of objects to and downloading of objects from the Object Exchange constitutes the understanding of the MIT License and acceptance of its terms and use. The license template is presented below and should be included in all newly submitted and revised objects:
·[color=#000000]Copyright (c) <year> <copyright holders>[/color] [color=#000000]Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:[/color] [color=#000000]The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.[/color] [color=#000000]THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.[/color]
We recommend placing the copyright line at the top of the source code followed by the statement “See end of file for terms of use.” Then place the remaining license text at the end of the file. We recommend this to reduce clutter at the beginning of the file.
·
MIT License Paraphrased in Layman’s Terms
·
Whoever uses this code may use it free of charge in any manner they choose, both for commercial and non-commercial uses, so long as the copyright of the code is maintained. The copyright holder assumes no liability for any use of the code.
·
Licensing Frequently Asked Questions
·
1.·· I am submitting a new object or resubmitting an existing object to the Object Exchange; do I need to include the MIT License in my code?
·
A. Yes, all objects submitted, whether new or revised, must include the MIT License in the source code.
·
[list=2][*]My object submission uses one or more unmodified objects from the Object Exchange; do I need to include the MIT license of these included object(s) in my parent object?[/list]
A.· No, each object should contain its own license. There is no need to have the child object’s license in the parent object. However if the child object is redistributed along with the parent object and the MIT license is not already in the child object, it must be added in the child object as described in question 7.
[list=3][*]I want to use a few lines of code from an object on the Object Exchange; am I required to insert the original license agreement in my code?·[/list]
A.···· No, the point of the Object Exchange is to share and learn programming techniques between users. As long as the few lines do not constitute a “substantial portion of the Software” no indication of copyright is required. However, acknowledgement of the source is recommended and encouraged.
·
4.·· Do I need to include a copy of the license in the binary image of my application?
·
A.· No, only the source needs to contain the license.
·
5.·· I need to modify an object I obtained from the Object Library and would like to redistribute the modified object; am I required to release the modified object under the MIT License?
·
A.· No, you may release the modified object under any licensing agreement which is compatible with the MIT license. The code must still contain the MIT license for the base code. The modified code under a different license should be clearly indicated so that a user can determine which code belongs to which license. However, if the modified object is submitted to the Object Exchange then it will be redistributed under the MIT license as the Object Exchange’s terms of use require.
·
6.·· I developed an application using objects from the Object Exchange before the MIT license was applied to all objects in the Object Exchange; am I required to modify my application in any way?·
·
A.· No, prior to the posting of this license agreement on INSERT CURRENT DATE HERE all code on the Object Exchange was provided as public domain, meaning no assertion of copyright has been made. Objects previously downloaded are still public domain. The only significant difference between public domain and the MIT License is that under the MIT license the author maintains their copyright (but waives all other rights).
7.·· I have downloaded an object from the Object Exchange and the object does not contain the license in the code; what should I do?
·
A. It depends on your use of the object. If you are using the object for a personal project and not publishing your source code, you may use the object as-is. If you are developing a commercial product or redistributing the code in original or modified form, you must insert the licensing template into the object and fill in the copyright date and author’s name (or screen name if that is the only information on the author’s identity, though for commercial applications an attempt should be made to contact the author to obtain their real name).
[list=8][*]Is the MIT License compatible with the GNU GPL?·[/list]
A.· Yes, you may incorporate MIT licensed code and GNU GPL code within the same application. The MIT license is retained on that code which uses the license, but GPL rules for the overall application apply, such as the requirement to release the application under GPL. However, since the application must be released under GPL, it may not be submitted to the Object Exchange.
·
[list=9][*]I have created an object which uses code released under GPL; can I submit my object to the Object Exchange?[/list]
A.· No, all work derived from GPL code must itself be GPL. Since GPL prohibits proprietary use, it may not be released under the MIT license which is a requirement for all objects on the Object Exchange. ·······
·
[list=10][*]I have submitted an object to the Object Exchange; if I make the object available through an alternate means am I required to release it under the MIT license as well?·[/list]
A.···· No, you may distribute your object under whatever license you would like; only those objects on the Object Exchange have the requirement for being released under the MIT License.
·
[list=11][*]I have read elsewhere that Parallax Inc. provides the code on the Object Exchange as public domain and has no copyright, is this correct?··[/list]
A.···· No; while this used to be the case, as of INSERT CURRENT DATE HERE all code has been relicensed under the MIT License.
·
Paul Baker
Propeller Applications Engineer
Parallax, Inc.
Post Edited (Paul Baker (Parallax)) : 1/28/2008 6:10:47 PM GMT
Comments
I like the idea to paste the full disclaimer at the end of the file!
I understand that this refers to the granularity level of objects only, i.e. when I publish an object needing specific other objects from the OBEX, I need not refer to their copyright situation in the main program?
Or do I?
Or does it depend on whether I include them in a zip file, rather than let the user retrieve them himself?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Paul Baker
Propeller Applications Engineer
Parallax, Inc.
We·want the authors to place the license·in each object of thier own which is submitted to the exchange, this way the license stays with what is being licensed (the code).·We recommend using the documenting feature "{{ .. }}" so the license shows up in the documentaion pane, but this is only a suggestion.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Paul Baker
Propeller Applications Engineer
Parallax, Inc.
Post Edited (Paul Baker (Parallax)) : 1/28/2008 6:24:08 PM GMT
This is why we suggest placing the "fine print" at the end of the file, so it's out of the way.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Paul Baker
Propeller Applications Engineer
Parallax, Inc.
Post Edited (Paul Baker (Parallax)) : 1/28/2008 6:28:34 PM GMT
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Paul Baker
Propeller Applications Engineer
Parallax, Inc.
Post Edited (Paul Baker (Parallax)) : 1/28/2008 6:49:13 PM GMT
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Paul Baker
Propeller Applications Engineer
Parallax, Inc.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Propeller Wiki: Share the coolness!
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
SelmaWare Solutions - StampPlot GUI for controllers, XBee and Propeller Application Boards
Southern Illinois University Carbondale, Electronic Systems Technologies
American Technical Educator's Assoc. Conference·- April, Biloxi, MS. -- PROPELLER WORKSHOP!
Good work! It strikes a nice balance between Parallax's need to provide unencumbered code and the author's desire to retain the rights to it.
Although I usually favor the GPL, since it requires that sharing entail further sharing as a quid pro quo, that encumbrance alone would undermine Parallax's ultimate objective with the OBEX, which is to make the Propeller hardware as attractive as possible to potential customers. So I'm in complete concurrance with your choosing the MIT license.
And, yes, the terms are spelled out with more than sufficient detail and clarity.
Thanks for the effort to make this a reality!
-Phil
Post Edited (Phil Pilgrim (PhiPi)) : 1/28/2008 7:59:31 PM GMT
If I take an MIT licensed object, modify it to add functionality and re-submit it as a new object; what would I do about the Copyright Notice ?
The original cannot be removed as it is substantially the same code, but I would not necessarily want to assign my Copyright rights to the original author. Would I simply add my own Copyright Notice and create joint Copyright ?
Is this pretty enough?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Paul Baker
Propeller Applications Engineer
Parallax, Inc.