Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Harmful: GPL, LGPL, Apache Software License, MPL, CC.

Less Harmful: ISC, MIT/X, BSD, CC0, public domain.

Yes, giving users even a smidgen of freedom like the GPL does is harmful. Who could say the terrible things that would happen if we don't keep the peasants well whipped and in their place.

People like him have gone on to be so circumpolitical in their defense of letting developer do anything they want that their licences have ended up recreating the huge inefficient Soviet design bureaus of the 1960's. Places where you had 5,000 people doing the work of 50.

You needn't look further than the closed source juggernauts like google, apple and microsoft to see how inefficient and wasteful they are with the human capital at their disposal. Open source projects still manage to beat them much of the time with 1/1000th the personnel and virtually no funding.



>Yes, giving users even a smidgen of freedom like the GPL does is harmful

The point is that it does not give them enough freedom. Notice how "public domain" is in the less harmful category? And all the licenses in that category as more free than the GPL?


> Notice how "public domain" is in the less harmful category? And all the licenses in that category as more free than the GPL?

That's a very odd definition of "free". Can you explain to me how my computing freedom is enhanced by using a binary that's licensed under the Free BSD licence without the source being released? Compared to a GPL binary where I must be supplied the code as an end user and can vet it to make sure the vendor has not put tracking software/other malicious code inside?

I assume the silent downvotes mean "No".


I can see why people like the GPL, but it definitely and intentionally restricts some freedoms (such as the ability to link to non-GPL code, or make proprietary changes) so it can guard others. It's a trade-off not everyone's happy with.

Here's how I look at it: say a company takes some BSD-licensed code, extensively patches it, then releases it under a proprietary license. I haven't lost any rights from this—I can still use the original code without their changes. The difference is the company isn't legally forced to grant me the same rights to their modifications. They're also able to incorporate outside code that can't be legally re-licensed under the GPL—the GPL instead forces them to find or write an alternative.

It's in that sense that the GPL is less free. Its supporters argue that's a good thing; its detractors argue it's a bad thing.


Which has nothing to do with what I asked about my freedoms as a user.

Developers think that licences that let them charge for binaries, restrict resales and keep competitors out are wonderful. The same way that banks think that debtor prisons were a wonderful idea and billionaires want a flat fixed dollar tax rate is the solution to every problem. There isn't much surprise there.

But for the majority of the people, who do not work in the one company releasing the binary, the GPL is infinitely freer than any of the anti-user licences he's listed as "less harmful".

So let me ask again: From the point of view of a user how is the MIT or BSD licence freer than the GPL?


As a pure user (someone who isn't going to modify and redistribute the software), I see no difference in freedom between BSD and GPL licensed software—I am just as able to download, install and run FreeBSD as Ubuntu. I can even burn a stack of DVDs of either to hand out to my friends.

The fact someone else can fork FreeBSD and start selling OppressionCorpBSD doesn't change this at all. Sure, I can't hand out free copies of OppressionCorpBSD, but that doesn't hinder my use of FreeBSD any more than the existence of Windows does. (And I do love my freedom to not use Windows!)

Neither license prevents the existence of proprietary software, but the existence of proprietary software doesn't force me to use it.

It's the modify-and-redistribute case that's interesting, which is why I focus on that. (Why would you care about having the source code at all if you don't plan to change it?) The nice thing about open source is it lets you blur the lines between user and developer—it lets you change existing software, then give that new version to anyone who wants it.

Even as a mostly user sharing minor tweaks, the GPL limits my options—I can only incorporate code I can legally distribute under the GPL. That doesn't hurt me when my patch is entirely my own original code, but it does hurt me if I want to re-use code from a (4-clause) BSD-licensed project, or from any other GPL-incompatible license.

The GPL envisions a world where all software is GPL'd. Simpler licenses co-exist in a world where a lot of software isn't GPL'd.


> The fact someone else can fork FreeBSD and start selling OppressionCorpBSD doesn't change this at all. Sure, I can't hand out free copies of OppressionCorpBSD, but that doesn't hinder my use of FreeBSD any more than the existence of Windows does.

The point of the GPL is that your use of FreeBSD wouldn't be hindered today, but might be hindered in the future.

Whether you accept the possibility of that scenario as valid or not is up to you, of course, but it's not simply a theoretical threat (after all, RMS witnessed it happen before his very eyes in the days of Lisp machines).


In the defense of the original poster, he does provide a reason to want the source code without changing it: "[I] can vet it to make sure the vendor has not put tracking software/other malicious code inside".

(Of course, if the vendor did that I'm sure they'd just hand me code that didn't match the malicious binary.)


True, but you can inspect BSD-licensed source just as freely as GPL'd code too.

Not that that's much use against a malicious distributor, who could disguise malicious code so that it passes inspection: http://underhanded.xcott.com.


(Oh, $DEITY I don't want to get involved in another BSD vs. GPL thread, but I just can't help myself...)

You can't inspect the source of something BSD-derived that's distributed as a binary (which I suspect is the point of the parent poster).

Interestingly the GPL sort-of stipulates that the recipient of the software should be able to build the software from source. This would allow a sufficiently paranoid recipient to inspect all the source and compile said source. (Ken Thompson's caveat notwithstanding.)


Paranoid me is stuck between a rock and a hard place—I don't want to have to trust a ton of third parties with my security, but I'm unlikely to be able to ensure it on my own and still benefit from modern technology.

That's not just because I depend on proprietary software—frankly, there's no way I could audit every line of code that runs on a Linux system that solves the problems I want it to solve, and even if I could, it's almost guaranteed I'll still miss something critical in the process.

But that's another topic. If I think it'll buy me something, I'm free to audit the source to both GPL and BSD-licensed software. I can't audit the source to proprietary derivatives of BSD-licensed software, but if I choose not to run it that doesn't hurt me any more than it hurts me that Windows continues to exist despite my refusal to use it.

In other words, I'm still free to make choices that preserve my freedom, no matter what another group chooses to do with their derivative works of software I run.


Ken Thompson's caveat has a solution: www.dwheeler.com/trusting-trust


You as a user may work for a company which feels it can't afford the risk of GPL-licensed code getting into their products, and may thus forbid you working on GPL-licensed code while you're working for them.

Or somewhat lighter but no less bad is the case where your workload could be eased or better results achieved by incorporating BSD-licensed software into your company's product where your company feels it couldn't allow GPL-licensed software.

These cases show the GPL is better for hobbyists than working people.

Then there's the fact that the GPL doesn't restrict the authors of the software. Some companies release under the GPL to get fixes, features, and kudos from the open source community without making life too easy for their competitors.

Overall the GPL does do some good, but it's certainly not freely giving to the world in the way MIT and BSD licenses do.


Why do you discriminate against developers? Many of the GPLs' restrictions have everything to do with propagating freedoms that enable users to be developers. In fact for mere users who have no intention of developing or hiring someone to do it, many of the freedoms granted are just plain useless.

Coincidentally, many of the people who prefer permissive licenses are users and developers (and because they share their work, distributors!) at the same time. That is why they go with licenses that respect freedoms relevant to all these roles equally, without discriminating.

Even if you are not developing software, the GPL (v2 in particular) has a nice trap in it should you decide to use your, ehm... freedom to share the software with a friend who needs it. In case you forget to comply with all its petty obligations..

With no developers there are no users.


Disingenuously, from the point of view of an average user it's all the same, since the average person doesn't audit source code.

If you're in possession of some GPL-licensed source code, then it clearly restricts your freedom to do things with it, compared to BSD/MIT-licensed code.

If you're arguing otherwise, I think you're being purposefully obtuse.


>Which has nothing to do with what I asked about my freedoms as a user.

Yes it does. The hypocrisy inherent in this line of reasoning is that the GPL exists specifically because the distinction between "user" and "developer" is a false one. The GPL seeks to protect so called "developer freedoms" for all users. But then misguided GPL advocates turn around and present the false dichotomy of user vs developer in an effort to spread FUD about BSD/MIT/ISC/etc licenses.

>But for the majority of the people, who do not work in the one company releasing the binary, the GPL is infinitely freer

No it is not. Sqlite (public domain) is totally free. I can do literally anything with it. That is maximum freedom. Postgresql (BSD) is less free, I have to follow certain restrictions in order to do certain things with it. Mysql (GPL) is even less free. I have to follow more restrictions. This is trivially simple and obvious, which is why lying about it tends to earn downvotes.


[deleted]


Care to elaborate? Because from reading what you just wrote, I have absolutely no idea what you mean by group freedom here. But one thing I know is that a restriction is still a restriction whether it's one, five, or fifty people who want to do a thing with the code. That is probably not what you meant by group.


From the point of view of someone more sympathetic to the GPL, I'll say that for some it's about sustainability of freedoms. If a proprietary fork draws away the user base (and maybe hires away key developers), I don't lose access to existing code, but updated code becomes substantially less likely and un-updated code (often) becomes gradually less useful. This situation is by no means impossible for GPL software but it's less likely (it can't be an actual fork, so there's more work to be done at the outset).

In the short term, it's reasonable to say that BSD is "more free" in that it permits things that GPL does not. In the long term, the usable versions of that code may not be free at all.

The one arguable caveat regarding BSD's short-term win (which would make it a short-term tie not a short-term win for the GPL) is that the only restrictions the GPL applies are against infringing on the rights of others. In which case, we're not talking about "freedoms" but "powers" being impinged - I'm not "less free" because I don't have the right to kill people, we're all (individually!) more free for not having to worry as much about arbitrary threats to our lives. To the degree this is the case, there's an argument there; the degree to which this is the case is not 100%, though - there are corner cases - but it is pretty typically the case. Whether you buy the argument is of course up to you.


I don't believe many GPL advocates would endorse your description of their position.


"The difference is the company isn't legally forced to grant me the same rights to their modifications. "

Yes, so GPL fans go by "today me, tomorrow you" and this BSD-fans go by "freeeeedooom" but then dont really put their code in public domain - instead maintain their copyright over it - which grants them the rights to revoke or change their license at any time.

BSD-license can be revoked by the copyright holder you know.

So if all these BSD fans really are "freeedooom", please public domain everything.


Can it be? Specifically, can someone release software under the BSD license, then later legally prevent others from using that version under that license?

Also:

"Few if any legal systems have a process for reliably donating works to the public domain. They may even prohibit any attempt by copyright owners to surrender rights automatically conferred by law, particularly moral rights. An alternative is for copyright holders to issue a licence which irrevocably grants as many rights as possible to the general public, e.g., the CC0 licence from Creative Commons." (Source: http://en.wikipedia.org/wiki/Public_domain#Dedicating_works_...)


There's some sort of legal doctrine to the effect that you can't be punished for taking an action that someone led you to believe was authorized. This would protect you in cases where you use the licensed software when the license was still in effect.

I suppose the better question is whether someone can rescind their license for their work and prevent future legal use of that software. I'd like to think that's not possible either, but I have no clue to be honest.


As per the Berne convention, some rights are inalienable. In practice this means that there are many countries where you simply cannot put your work in the public domain, or otherwise try to disclaim these rights.


The rights which matter can be, see for example many musicians and artists fight against the copyright holders of their music despite them being the originator or creator.


>BSD-license can be revoked by the copyright holder you know.

No it can not. Someone can stop releasing their previously BSD licensed code under the BSD license, but all the existing copies people got under the BSD license are still governed by it. This is exactly the same as with the GPL, or any other license.


Yes the GPL as well can be revoked.

The copyright holder grants you a license, and that license can be revoked, wether it be GPL, BSD or Apache or whatever, and it applies to _all_ the softwares the copyright holder has rights to - ie all previous versions.

That is the reason why FSF and GNU encourage copy-right-assignment to the Free Software Foundation - as a kind of guard against any one hacker messing with a project.

BTW this copy-right-reassignment to FSF is similar to how Record Label companies reassign the copyright from their slaves, erm sorry, musicians/artists onto themselves and then govern them.


You can stop granting new licenses, IANAL but ability to revoke licenses you've granted (without allowance for this in the terms of the initial granting) would hugely surprise me. Of course, with the GPL that is still potentially messy.


Well go check it out, the license that you grant can be revoked.

The only reason this doesnt happen more is that most freedom software has many authors and a change in license would require consent from them all. But a really nasty person could still decide to rip his copyrighted pieces out of any previous version thus crippling the whole project.

But nobody is an asshole like that, but legally the possibility exists.


Isn't that still a matter of the prevention of granting new licenses, rather than revocation of existing licenses?


BSD-license can be revoked by the copyright holder you know.

This is not true. None of the standard BSD licenses are revokable.


Yes they are, any licenses are revokable. The GPL as well.

I could release software under GPL, not accept any patches, see the software grow and 2-3 years from now when a lot of people are using and depending on the software, bam I revoke the GPL from all previous versions and impose a special EULA in its stead. I can because I am copyright holder.


My silent downvote means "discussions about which licence is more free are really tedious. I've probably heard all the arguments people are going to make and I really don't need to hear them again in this thread. One group prefers this licence; another group prefers that licence. They are not going to agree and no-one is going to change their mind so why the fuck can't people just accept that sometimes people make a different choice and move on".


>Can you explain to me how my computing freedom is enhanced by using a binary that's licensed under the Free BSD licence without the source being released?

That isn't a thing. I find it hard to believe you are genuinely as confused as you appear to be. I suspect the "silent downvotes" reflect the likelihood that you are being deliberately dishonest to spread FUD, as your particular example of FUD is older than a lot of the people posting here, so it is hard to believe anyone genuinely doesn't know better at this point.

A proprietary program that is a derivative of a BSD licensed program is not a BSD licensed program. It has literally nothing to do with what the BSD license offers you. The GPL is less free than the BSD license because it imposes more restrictions on you. This is incredibly simple and obvious. Many people believe those restrictions are important and good, and you may well believe that yourself. But that doesn't make those restrictions an increase in freedom. Just as some countries prohibit speech they deem objectionable, they may well believe that is better than free speech, but it doesn't make them freer than countries with free speech. Free speech includes the right to say things I don't like, just as free software includes the right to create software licensed under licenses I don't like.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: