-
-
Notifications
You must be signed in to change notification settings - Fork 3.5k
[p5.js 2.0 RFC Proposal]: Transitioning to a simpler, less complex License #6801
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Wow, thanks @meezwhite for putting together such a clear and thorough proposal! I'm looking forward to more discussion. |
I probably should start by saying this might be out of scope for p5.js 2.0 which is more of a technical update and for license update it does not strictly need to happen on a major release, and at the same time I think #6800 will probably be more suitable in terms of scope and actually is something we can do now instead of waiting for 2.0. License change is very disruptive so will be a slow process in any case, especially for a large mature project.
This is something that has been explored in open source and also in activist circles for a long time now. Famously there is the JSLint license but there are also many (the usual term I see is "boutique") license that are more common as sometimes proof of concept or as a statement on its own. I remember this kind of idea has also been explored in a p5.js community conference before. That is to say there could be interest in something like this given the right aim behind it. However there are a lot of roadblocks towards being able to create and adopt something like this. First of all is to actually create something that is both enforceable and promotes values in line with p5.js as a project, there will likely be legal work involved. Second is that I am almost willing to bet that the OSI will not recognize it as Open Source™ (this is a very tongue in cheek ™), I personally don't particularly like the OSI be the sole arbiter of Open Source™ but can imagine it being an issue with the much wider open source community that may be more inclined to follow the OSI lead than to consider otherwise. |
(P.S. great project <3 <3) is there a discussion also about the license covering the examples? I ask that since, if the examples are "non-commercial" (CC BY-NC) (like this https://p5js.org/examples/3d-materials/ ) unfortunately it means that the examples are "proprietary" (well, better than "all rights reserved" but still unfortunately proprietary) and not technically compatible with any Open Source license like GNU GPL, GNU AGPL, CC BY, CC BY-SA, it's also not compatible with any Wikimedia Projects (Wikipedia included) - and that's really a pity to be cut off from these like-minded organizations and projects only for this technical small thing. Since I'm talking about just code examples, and I think are designed to encourage maximum adoption, I could suggest a "CC Zero". If instead keeping it Open Source is important, I can suggest "GNU GPL". If instead just giving credits to the project is enough, maybe better "MIT" (or also CC BY - but it's still a bit strange to have code covered by a license for contents). (Plz plz plz remove the "NC" over examples :) It sounds good but in practice it means that P5 Foundation implemented a commercial monopoly over that work, and only you can do money, and other people cannot even do paid lessons, sells computers with it, sells CD with 0.50€ with it, organize paid tutoring for 1€/hour, etc. ... non commercial is really too complicated... it's probably better suited to pop singers and probably doesn't do what educational projects usually want ihih - available to chat about this topic <3) -bozz, volunteer Italian Linux Society (president) |
@valerio-bozzolan We had a discussion previously when working on the new website on the CC license we use to cover most of the website content (previous versions of the website also uses the same license so this is not new). The main reason the NC clause was included is somewhat self explanatory, in that we don't want the website's editorial content to be commercialized. An example from the CC wiki touch on what we are trying to prevent:
Essentially, we don't want the content on the website contributed by our contributors to be collated by a commercial entity/publisher and release it for-profit as a book/paywalled website or other commercial form. I know that Wikimedia mainly uses CC BY-SA which is not compatible with CC BY-NC but I'm not sure what is the use case here, presumably this does not prevent Wikipedia from having its own example p5.js code. GPL or MIT are designed to cover source code while we see the CC license to be more appropriate for covering editorial content of the website, while I can see the example being more code than say essay having content on the website covered by different licenses depending on some potentially opaque criteria I feel can be confusing and a potential turn off for legitimate use. This however does not cover the p5.js library itself or how it can be used, so there is no restriction (other than LGPL terms) on creating commercial work with p5.js, paid lessons, sell CD, etc based on the library. There are many commercial and non-commercial content for p5.js that our community created and with the CC BY-NC license of the website it does not restrict those creations as long as they are not commercially distributing the website's content. That all being said, I'm not personally opposed to a different license for the website content, although logistically I'm not sure how it would work with them being content that has been contributed over time by many different contributors. It may need consent from all past contributors in order for us to relicense it (which is one of the reason why we didn't change the license with the new website), unless @valerio-bozzolan you have a different understanding of this? |
Thanks for this additional context :) I understand. I've seen this many times. Very frequent in new communities... But the funny part about the "non commercial" restriction is that, if a volunteer produced an example content under "NC", then, that volunteer has a commercial monopoly over the content. Only that volunteer can make money. This is often surprising, but that's how copyright works. Anybody else (including Processing Foundation) should not really try to make money. Fundraising campaigns can also be borderline. It depends by where the volunteer was based and their country. Indeed I'm not trying to say that there are risks for the Foundation... but yes, "NC" probably is an obstacle also surpsisingly for the Foundation :D So yes, since everybody agrees that Processing deserves to be even more famous, and that the Foundation deserves creative space to do lovely fundraising activity, and that volunteers should be protected against "evil companies" not giving anything back, probably a strong Free+Copyleft license would better help. So yes, would be lovely to discuss again, one day or another :D Available to chat a bit with you friends about this and these. |
A non-profit raising funds isn't considered commercial activity by its nature but IANAL so I can be completely wrong, I also don't quite see how fundraising activity is directly related to the website content (ie. using NC material as a publisher for example does not preclude them from selling other books). From the link to the CC wiki I shared above, it specifically mentions "NonCommercial turns on the use, not the identity of the reuser." so I'm getting confused about your statement around "Anybody else (including Processing Foundation) should not really try to make money." However I think the relicensing problem is probably more significant regardless of whether one particular license is better than another or not. |
P.S. about changing license from LGPL for something "more simple": I generally agree. There are many simple licenses, like MIT or BSD, etc. 👍 But... I can suggest to exclude the option of creating another license (!) in 2025. Don't be attracted by a "Processing License". First, because of this (lol) Then, because creating a new license would be a legal additional complexity for every adopter. Also, it can take a loooot of time before Open Source Initiative / Free Software Foundation considers these, and it would be a pity to be formally excluded. My two cents concluded ihih :D thanks. Go Processing! <3 |
Closing this for now as the past few months' discussions of licenses led to the conclusion that it's more important to clarify the usage and licensing around the code base and the website (#6800) and re-licensing is not a priority at this time. Thank you for your input! |
Increasing access
By transitioning to a simpler, less complex license, p5.js users (artists, educators, developers, etc.) could feel more confident and liberated in choosing p5.js for their work, thus increasing access to p5.js especially for those in marginalized groups that don't have the means for proper legal consultation.
Which types of changes would be made?
Most appropriate sub-area of p5.js?
What's the problem?
Complexity of LGPL: Without proper legal consultation LGPL:
If you search for licensing question in the p5.js forums or here on GitHub, you can find several cases where users had questions about what is allowed and what not (me including).
Recent discussion that initiated this proposal
Discussion initiated by @meezwhite
#6678 (comment)
Comment by @limzykenneth
#6678 (comment)
Comment from @limzykenneth (unsure if part of discussion, but definitely important consideration)
#6678 (comment)
Comment by @GregStanton
#6678 (comment)
Comment by @meezwhite
#6678 (comment)
Comment by @limzykenneth
#6678 (comment)
Comment by @davepagurek
#6678 (comment)
Comment by @limzykenneth
#6678 (comment)
Comment by @GregStanton
#6678 (comment)
What's the solution?
I propose licensing p5.js under a different OpenSource license which:
This new license wouldn't necessarily have to be an existing OpenSource license. We could create the "P5 License" (or even the "Processing License") if there are no other existing and suitable OpenSource licenses in alignment with p5's goals, similar to how Vim has their own license.
Multiple efforts could ease the transition to the new license:
Alternative solution
Pros (updated based on community comments)
Cons (updated based on community comments)
Proposal status
Under review
The text was updated successfully, but these errors were encountered: