Hacker News new | ask | show | jobs
by UK-AL 3949 days ago
It makes the library unusable for anyone, but open source software.

If you write any sort of software, and link against this library, boom all the code needs to be GPL'ed.

I don't think that's a good thing for promoting a library's use. Most people will just not use the library, and leave a bad taste in there mouth rather than spread the use of GPL.

If you want your library to popular don't use GPL.

What happens is that someone else comes a long and creates a MIT version. Eventually it gets replaced with the MIT version.

3 comments

> It makes the library unusable for anyone, but open source software.

Well, the author is free to dual-license it to propriertary software for some fee - if they want.

> I don't think that's a good thing for promoting a library's use

But it's a good thing for promoting Open Source!

That's the tactic question here: Do you want to promote your name and your library, or do you want to encourage more people to open source their stuff? In general you achieve both, but the question is: Which aspect is more important to you?

> If you want your library to popular don't use GPL. What happens is that someone else comes a long and creates a MIT version.

See https://news.ycombinator.com/item?id=10158535

I have a very different question when I chose license for my software. I ask if my software might end up being used in a product where someone could get sued for sharing software online.

I would personally be fine with a new license that simply said "Be nice or don't use my software. You can't sue people who use or share this software. You can't apply for patents and sue people who are being creative and code. You can't stop people from understanding the software that they run on their own machine.". However I doubt many companies would prefer that over GPLv3 so it easier to just use a commonly understood license which Linux distributions understand and find legally acceptable.

> Be nice or don't use my software. You can't sue people who use or share this software

Would such a rule even be enforcable? If so, what's the penalty if a company sues users anyway?

I like how the GPL(v3) makes such rules enforcable by trackling them "from behind". For example, the patent protection does not work by saying "you must not sue people with your patents", which one would naively write into one's license. Rather, they say (roughly) "if you distribute the software, this includes a free patent license to all receivers." And this is just one example. There is very clever legal stuff in the GPL, especially v3.

So I guess that the GPLv3 already does exactly what you want. It just doesn't express this as directly as you would, but more "from behind". However, this is for very good reasons, as it is necessary to do it that way, to make all this stuff enforcable within the legal framework of copyright law.

I doubt such rule would work in US courts as the legal tradition there put emphasis on exact wordings and would look for precedents which could direct the court into an interpretation.

The courts where I live (Sweden) would look more into what the author intended rather than the exact wording, so it will accepts much lesser precise wording than other systems. The downside is that you are basically asking what one judge and 3 politicians (lowest court instance) think is the authors intention, common sense in this context, and if the distributor acted with malice or not.

i don't buy the rhetoric at face value and i don't think it helps promote open source at all.

at best its promoting one flavour of open source methodologies in an authoritarian way. not open source software in general... it does little itself to teach us why open source is good, but its easy to learn why GPL is bad and tar all of open source with the same brush.

the MIT and BSD style licenses are open source, but not militant about it. they are doing much better work to promote open source software imo since people will actually use software that is distributed under them in large commercial projects without fear, meaning that open source libraries do actually get used a lot, which lets people learn their advantages first hand...

i like your quote about this. that someone will come along and make an MIT version... :)

> It makes the library unusable for anyone, but open source software.

Using the GPLv3 is more restrictive than that -- it makes it unusable except for GPLv3 software. Even a preference for open source -- even copyleft -- software doesn't mean a preference for the use-based discrimination in the GPLv3's so-called anti-Tivoization provisions.

> If you want your library to popular don't use GPL.

Lots of GPL libraries are popular, though perhaps in some cases less so than they would be if they were not GPL.

> What happens is that someone else comes a long and creates a MIT version. Eventually it gets replaced with the MIT version.

IF you do permissive (MIT/BSD/etc) and a sizable fraction of the people interested in your library are also GPL partisans, the reverse happens (and potentially much more quickly) -- some relicenses your library as GPL, and the active community ends up there. So, making decisions on that basis can go either way.

Use GPLv3 if you want to control what downstream users do and you prefer the particular controls in the GPLv3. Use a different copyleft license if you want to control downstream users and don't prefer the controls in the GPLv3. Use a permissive license if you don't feel the need to control downstream users.

I don't think can't just go about relicensing a project willy-nilly, even if it is BSD, without the approval of the copyright holders or a contributor license agreement which the copyright holders agreed to which expressly grants the project the ability to do so.
> I don't think can't just go about relicensing a project willy-nilly, even if it is BSD

The whole distinction between permissive and copyleft license is that the former allows downstream relicensing on substantially different terms with very little restriction (typically, something like requiring retaining the original copyright and disclaimers.)

It probably legally requires enough new creative work for the downstream version to be an original derivative work and not a mere copy that wouldn't be eligible for a distinct copyright, but that's still a lot less than a copyleft -> permissive replacement, which requires reimplementation rather than derivation.

> If you want your library to popular don't use GPL.

Like GNU/Linux?