Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Copyleft License? #5270
I think you should consider a copyleft license. I realize it's a pain to change the license, but it never gets easier. I read the license and it's mostly a disclaimer and a warning. There's nothing in there about protecting the freedom of the users.
There are lots of projects with lax licenses that are successful, so maybe it will work out okay, but the Linux kernel took off because of the copyleft license. It nudges people to give back.
I realize lawyers might like that, and proprietary software companies might want it, but this group is more than just those people.
It's great you've got 100s of contributors already, but if you know the way corporations work, you should be pushing for copyleft.
When you say "we", are you talking about Facebook or the random smaller contributors? Given you work for a large company, I hope you realize you could be biased. At the same time, you should know the way large corporations work even better. You won't be there forever. Copyleft is stronger protection for the software and the users, do you disagree?
When you say "thought", have you written any of it down with a link you can post for archival purposes? That way if others come along, they'll have a good answer. I may quote your non-defense of your lax license in my writings if you don't mind, but I'd prefer if you gave me a bit more.
I just spend several minutes looking for a discussion on PyTorch license, and came up with nothing except another bug report closed with a similar short answer.
Your last dismissive answer could motivate people to create a copyleft fork!
It don't know any of these names:
I don't know who the authors are of this project, and how much is big companies versus academics and small contributors, how much interest there is in making a copyleft version, etc.
BTW, relicensing would get you plenty of news articles. It's also tough because Facebook doesn't have the same reputation as the FSF or EFF for protecting user's freedom. The Tensorflow license is lax also so you don't have that competitive advantage.
To some it's a disadvantage, but it did make a difference in the Linux scheme, and you would hope to have your work be relevant for that long, and without a bunch of proprietary re-implementations over time that are charged for, and that slow the software from getting better because everyone is improving their secret stuff on top.
LibreOffice was able to convince a lot of people that a copyleft license was better than the OpenOffice scheme, but I don't know what people here think. One interesting data point would be to find out what percent of the contributions are by small contributors.
Anyway, you've got a cool project, and I wish you the best, partially because I don't trust Google. Tensorflow is just some sample code for others to play with while they advance the state of the art and keep 95% proprietary. It also seems they made a few mistakes in the design and now will carry baggage.
There is a deep learning software wars going on. It's kind of interesting to almost be on the side of Facebook ;-)
I've put this in a blog post, and added some more thoughts:
I'll copy my ending comments here:
Whether a fork makes sense depends on a number of factors. The LibreOffice fork was created because people were unhappy about how Sun and then Oracle were working with the community, etc. If the only thing wrong with PyTorch is the lax license, it might become very successful without needing the copyleft nudge. If everyone agrees to give back, what's the fight about?
I wish PyTorch used the AGPL license. Most neural networks are run on servers today, it is hardly used on the Linux desktop. Data is central to AI and that can stay proprietary of course.
A license like LGPL wouldn’t apply to Facebook because their AI code runs on servers, but it would make a difference in other places where PyTorch could be used. You’d think Facebook could have just agreed to use the LGPL license, and silently laugh as they know the users don’t download any of their server software.
Few people run Linux kernels remotely so the GPL was good enough for it. Perhaps it isn’t worth making a change to the PyTorch license unless they switch to AGPL. Or maybe it's a good starting bid ;-)
Since you republished it on Reddit, I'll also chime in.
GPL was a good move in 200X, but not anymore.
I'm working full-time as an open-source dev and GPL-only or LGPL-only are basically banned from my company. I even opened an issue 2 months ago to Facebook's RocksDB to be clear on the GPL licensing: facebook/rocksdb#3417.
I'm quite confused as to why people believe that GPL 'hurts' adoption, the evidence seems to suggest the exact opposite - but I digress.
I see no reason as to why something like the AGPL, MIT or BSD license would not be suitable for this library. If the authors are serious about this becoming widely-adopted in the future, then it's important for them to allow potential users to contribute to the project and in doing so ensure that it's the best possible tool for the job.
I just wanted to write a quick apology. My initial comments were a bit short / rude ;-) I got slightly triggered by the response which seemed not respectful of the unpaid contributors, and those who prefer copyleft.
It is great that Facebook and Google released this as "open source" software. It's those other untrustworthy companies that a copyleft license would improve the behavior of ;-) GPL to many corporations is like holy water to vampires -- which says something. That's why LGPL or MPL are a nice compromise.
One person told me on reddit that he wanted to write a little proprietary colorization plugin in PyTorch. Copyleft encourages people to give back, so that it saves someone else time.
I wish you the best, especially in developing pre-trained models of open data sets, that can be extended with local data. You are building are a research platform, but many more prefer an inference platform that can be slightly customized using a CPU.
It's great that PyTorch is now installable with Pip. LibreOffice has had Python scripting since it was just OpenOffice. I wrote a post on reddit recently about LibreOffice in Python:
There is very little machine learning or deep learning on the Linux desktop apps today. LibreOffice has a wide variety of AI plugins that could be built. It also needs this to remain relevant. No outside company is going to throw 100 developers at LibreOffice AI like Microsoft did, but maybe pilot projects or something could jumpstart things, get more excitement for PyTorch, and help real users.
Thanks for reading ;-)