9 ms·
My impression is that by numbers, we're moving from big projects -- like Linux, LibreOffice, Gnome, KDE, Gimp, gcc, etc. -- to smaller projects -- small JavaScr
by cpnks 14y ago
My impression is that by numbers, we're moving from big projects -- like Linux, LibreOffice, Gnome, KDE, Gimp, gcc, etc. -- to smaller projects -- small JavaScript libraries on github that people fork, merge, etc.
GPL makes a lot of sense for the former. If you write the Linux kernel, a ton of companies would take it, enhance it, and not contribute back without GPL. That's a big part of what killed BSD. On the other hand, almost no one is going to reimplement Linux just to get around the GPL -- it's cheaper and easier to just give back.
For the little libraries, permissive makes more sense. If your JavaScript control has a license that isn't permitted in my project, I'll just write my own in a day or two. If I enhance it, that's not a core advantage to my business, so I'll likely contribute it back.
- bonch 14y agoThat's not what "killed" BSD. It was AT&T's lawsuit which spurred Linux interest. The argument that companies would make changes to BSD code and not contribute back has never come true. The original code still exists, and if the changes were valuable, others would just re-implement them as open source patches. Tons of large permissively licensed projects exist today without having been destroyed by the situation you describe, so I don't get why people continue to make your argument.
- dima55 14y agoThe LGPL addresses these concerns, and is in the sweet spot, I think: You can use the library without opening the code using the library, but any changes to the library itself must be given back.
- afsina 14y agoActually MPL or CDDL are like that. I am not an expert but I think they are easier to re-distiribute than LGPL.
- saurik 14y agoIt is very easy to work around the LGPL: the main thing it ends up protecting the user from is not being able to modify the exact functionality provided by the LGPL library inside of the surrounding software system. As a case example: Apple has modifications to their version of WebCore (lower-level than WebKit, for context), a project shipped under LGPL (unlike WebKit, which is distributed under a modified BSD license). However, they don't want to have to give out those changes, so they provide the source code to a WebKit with some minimal changes to call into new code that they then don't provide: it will compile, but you will get link errors. Understand: this new code may be critical to the functionality of the library, and may be modifying the behavior of or even outright replacing key APIs and mechanisms of the LGPL library, in this case WebKit. They then provide binary object files for the new functionality that they added, and the result is compiled together to form the unified WebCore dynamic library. Even though the result is a single linked-together library, this is totally legal under the LGPL, as I can still modify the original WebKit code if I wish and still manage to build Apple's modified WebKit binary. In essence, the boundary around the LGPL code can be made very tight indeed, such that even code that is semantically required for the library to function does not fall under the redistribution requirements of the GPL part of the LGPL code.
- saurik 14y ago(Every usage of "WebKit" in this comment that was not "lower-level than WebKit" and "unlike WebKit" should have been "WebCore". I wish I had noticed that mistake earlier. ;P)
- there 14y agoIf you write the Linux kernel, a ton of companies would take it, enhance it, and not contribute back without GPL. That is always touted by GPL advocates, but where is the proof? Where are all the companies enhancing non-GPL-licensed software and not giving anything back? Where are the companies making money selling private forks of enhanced FreeBSD, NetBSD, OpenBSD, Ruby, Python, Ruby on Rails, X11, Apache, etc.? It doesn't make sense. Maintaining your own changes in a big software project is a pain in the ass. It's worth contributing changes upstream if only so you don't have to maintain your own patches and re-merge them every release.
- y0ghur7_xxx 14y agodidn't apple take bsd and build osx on it without contributing back?
- bonch 14y agoNo, they contributed back the open source operating system underlying OS X, called Darwin.
- openbear 14y agoNot sure which pieces you're talking about. Code changes to various open source projects within OS X, iOS, and Xcode can be found here (and the referenced sites therein). http://opensource.apple.com/ http://opensource.apple.com/
- saurik 14y agoThose projects are often not in a state where they can be compiled, and when they are you find that they are heavily redacted. For example, none of the code required to make any of that run correctly on ARM devices is available. (Given the context from this thread about large projects, however, I feel the redactions of things like touch events from WebKit, are a more serious issue.)
- Xuzz 14y ago
- protomyth 14y agoThe BSD License didn't kill the BSD-based operating systems, the AT&T lawsuit stopped them for a number of years.
- wmf 14y agoDidn't BSDI hire many of the developers and then contribute nothing back? I'd think that was a pretty serious cause as well.
- protomyth 14y agoNo - "While several Berkeley developers were involved in the formation of BSDI in 1990-91, none left the University of California to join Berkeley Software Design, Inc. at the outset." - http://icims.csl.uiuc.edu/~lheal/doc/dgp/chapter16.html http://icims.csl.uiuc.edu/~lheal/doc/dgp/chapter16.html also http://www.freebsd.org/doc/en_US.ISO8859-1/articles/explaining-bsd/article.html http://www.freebsd.org/doc/en_US.ISO8859-1/articles/explaini... The lawsuit was the big problem.
- Semiapies 14y agoAlso, probably a first-mover advantage, early on. Linux, the GNU toolkit, etc. come on to the scene and are based on GPL, so a lot of developers's first experience with open/permissive/whatever software licensing was GPL. Over time, though, developers become aware of alternatives, and for various reasons, many use them.
- gillianseed 14y agoSo here's my take, GPL is pretty much the de facto choice for full open source applications, and here it makes much sense as it's a 'finished' product, and in many cases the individual parts of that finished product which are reusable are licenced permissively. Meanwhile components like libraries, frameworks, have since long leaned towards permissive or atleast LGPL style licencing due to them constituting only a small part of whatever program they are used in. Like the edited article states, the author was wrong in saying GPL is declining or that projects are in any way switching, the thing is that these days we see lots of new open source developments in web technology frameworks and these frameworks are predominantly permissively licenced as they are basically components on which full web solutions are built. And given the sheer number of web oriented open source tech popping up these days it's no wonder we are seeing new permissively licenced code dwarfing new GPL licenced code these days. For example when I viewed the 'Popular Watched Repositories' list on github, the only ones I know are GPL licenced were Linux and Git, and the list was heavily dominated by web targeted projects. Now there seems to be a strong anti-GPL sentiment in web dev, which is likely due to people working there relying heavily on open source components for their proprietary solutions and as such they simply can't use GPL, hence complaints. Bottom line is that there is no 'one type fits all' licence, which is why we have licence proliferation. I've always held the belief that whatever the author chooses is the right option, be it permissive, GPL or even keeping it proprietary.
- sg2342 14y agoI will write software that will be released under a GNU license because the entity that bought my time to do it can decide to put the result under whatever license suits their goal. However, if the result of my work will be made available under a more permissive license i (most likely) demand less money since it ensures that i can reuse whatever i wrote.
- sg2342 14y agoI will write software that will be released under a GNU license because the entity that bought my time to do it can decide to put the result under whatever license suits their goal. However, if the result of my work will be made available under a more permissive license i (most likely) demand less money since it ensures that i can reuse whatever i wrote.
- emaste 14y agoYou are correct that it is cheaper and easier to just give back, but that is generally true and isn't unique to the GPL. There are a great number of companies using the BSDs as the basis for their embedded projects, and they contribute their enhancements and bug fixes precisely because it is less expensive over time to do that than to keep those changes proprietary. The USL lawsuit is what hampered the BSDs early on, and allowed Linux to get so much traction in mindshare, not the license.