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

That depends on if you are encouraging "free" for societies interests or "free" for individual/corp interests. GPLv3 encourages the former, but not the later. The two interests almost always come into some degree of conflict (although in many ways are compatible).

I view the flamewarz between BSDish and GPLvX licenses as similar in spirit to the arguments between laissez faire capitalism and northern European social capitalism.



For me personally, important reasons for switching from GPL licenses to Apache are: the Apache license I can read and understand; the GPL is vague in many points, leading to multiple interpretations; and license compatibilities between the GPL and other licenses (and between GPL versions/variants).

Also, I don't want to force my ideology (I find FLOSS preferable) on other people, while still giving my software away. However, technical reasons such as the above were 50% of my license choice.

Given the vagueness of the GPL, I can fully understand that many companies do not want to deal with that, even if they want to contribute to FLOSS in some way.


What do you find to be vague about the GPL? I've personally never even had to visit the GPL FAQ at gnu.org.


"That depends on if you are encouraging "free" for societies interests or "free" for individual/corp interests. "

I disagree - the definition of software being free to modify and redistribute doesn't change based on the intent of the modifier.

There are more restrictions on your freedom to do these things under GPLvX than under Apache/etc.

A software author chooses which license based on the desire to encourage societal interests or individual interests, but the underlying meaning of 'free' remains constant.


Myopically considering the individual piece of code, it's easy to say that a permissive license is more free. The question of "what leads to more freedom in total" is more important, and not as easily answered.


Your phrasing implies that invoking more control over the code in a project has the potential to lead to more freedom in total. I'd argue that this is ... if not more myopic, at least a more ego-centric view. That is, it implies that the author knows better than everyone else how to maximize total freedom engendered by his efforts, on the basis of how he or she permits them to be used - instead of allowing others the freedom to make their own choices.


We're not talking about arbitrary control; we're talking about one specific set of restrictions designed specifically for the protection of freedom. It's quite possible they fail at that, compared to alternatives, but it is not at all incomprehensible that they might succeed - restricting some behavior often leads to more freedom in general, especially when that behavior involves exercise of power over others. Proof of existence, by example: Selling a knife with a "this can't be used for mugging" clause - in a world where mugging wasn't illegal - restricts the freedom of the purchaser but only when you don't consider those they would impact if they exercised that freedom. To be clear, I'm not saying "selling proprietary software is exactly like mugging"; I'm just saying your general "restrictions always mean less freedom" doesn't hold up.

All of this is not to say that I think it's entirely clear that copyleft licenses do lead to more freedom overall. My initial statement was precisely that it's not particularly clear. My personal expectation (which I'd argue for if we want to go down that path but hold weakly in that I consider other views reasonable) is that it varies from case to case.


This is really just a terminology thing; I prefer "Libre" vs "Permissive".


I'm not encouraging either just taking the word "free" in the purest sense. GPL has more restrictions than MIT/BSD and thus is less free.


The GPL isn't about the freedom of the dev to do whatever they want, it's about the freedom of the code to always be available.

EDIT: Essentially, saying you aren't free because you're not free to kill me without repercussion is absurd. GPL advocates view freedom the same way: You can't do something to hurt me, but that doesn't make you less free.


So, BSD/MIT are the software license equivalent to allowing people to kill without repercussion?

It seems your analogy is a wee bit overwrought.


That's quite literally not what I said. I said that freedom does not inherently mean no limitations. Murder was my example, but that does not mean I equate software distribution to murder. (I had figured this crowd would be astute enough to reason as much.)

For the record, I believe that the BSD and MIT license allow the distributor to withhold source from me, which does "hurt" me from my point-of-view.

As an example, How many chemistry and biology lab machines have you seen running windows 95 or dos because the company won't release updates for old software and want you to buy a new machine?) I've seen many, and it's very difficult and expensive to keep them running at times because they don't work under emulation for various reasons.


> I said that freedom does not inherently mean no limitations.

No, it pretty much does: http://www.merriam-webster.com/dictionary/freedom

It's true that too much freedom can produce awful results but let's not redefine the word?


I recommend that you read up on Negative liberty (https://en.wikipedia.org/wiki/Negative_liberty). The freedom from interference by other people is an important freedom, and can only exist by limiting the actions of others.

To reference Erich Fromm, its not about "freedom to", but "freedom from". If you modify or distribute a work based on a copyleft work, you have "freedom from" being sued for patents, DRM, or proprietary copyright restrictions. If the work was based on a permissive licensed work, no such freedoms are given. You only have freedom to distribute the original work or modifications of it.


This is a great reply, but it gets very deep into parsing and subjective opinion without coming to any sort of concrete conclusions (that can be applied to licensing anyway).

Personally, I'm happy for others to use most of my code without contributing back. Does that therefore mean that you and I have different definitions of the word "freedom"?

If so, then why isn't that in the dictionary? Do we need separate dictionaries?


If you want to give people freedom to modify and distribute your code, then that is a freedom as per the same dictionary that I use. I have no problem with its definition.

Freedom to, and freedom from, both include the word freedom. They share philosophical ideas, most which originate from the ancient Rome. The question we are having is how to solve the paradoxes which said philosophy created.

I thus personally prefer to use the word liberty rather than freedom. Liberty is commonly understood to have a philosophical connotation, while freedom is more associated as mechanical concept. A slave can reach freedom by running away, but to gain liberty, they got to be given rights.

(Not to imply that BSD isn't granting some liberties. It is. The above is about the word freedom.)


Then total anarchy is the only "free" society you'd accept. If you believe that then we're much to far apart to have any rational discussion.


If you read my second sentence, it's obvious I don't think that. Why put words in my mouth?


>>The GPL isn't about the freedom of the dev to do whatever they want, it's about the freedom of the code to always be available.

This is exactly the conflict I was referring too, thank you.


> The GPL isn't about the freedom of the dev to do whatever they want, it's about the freedom of the code to always be available.

The GPL does nothing to assure that code will be available. It does assure that if code is available, then it will also usable under Free terms.


> The GPL does nothing to assure that code will be available. It does assure that if code is available, then it will also usable under Free terms.

I do believe you're wrong. If I am using software licensed under the GPL, then the code _must_ be made available. That's the crux of the GPL.


> If I am using software licensed under the GPL, then the code _must_ be made available.

If you are distributing software under permission of a GPL license (e.g., you aren't the copyright holder) you are required to also make the source code of what you are distributing (which may not include all of the original on which it is based) available.

If you are using software that you received that was licensed under the GPL, the source code may or may not be available (it may have been required to be at the moment the software was distributed, but whether it will be later or not is less clear), and the source of the upstream may or may not be available even if the source of what you received is.

GPL doesn't keep the source code that it is attached to available, it assures that the software or legal derivatives will not be legally distributed except under terms that make the source code available. This may encourage the source code to remain available (if there are factors encouraging the distribution of the software), or it may not.


Honest question, is your argument based around the idea of: If the person/entity who has the source of a GPL'd software dies/disappears the source of a binary you're using may not ever be available?

Otherwise, you should be able to request the source and the distributor would be required to give it to you under the terms of the GPL?


In your world, helping a friend (or a stranger) is like killing somebody? I'm glad I'm not a part of that cult.


> In your world, helping a friend (or a stranger) is like killing somebody?

That literally makes no sense.

I was responding to the assertion that the GPL isn't about freedome because it imposes limitations. Living in a free society also has limitations, as an example I used killing another, but we still consider the society free, so the argument doesn't hold water. Limitations =/= Unfree

Also, I never asserted that you couldn't help someone. You're free to work on your own code or other code licensed under a license you find to be fair by your own terms.

> I'm glad I'm not a part of that cult.

I'm not sure what you're referring to, as I believe what I do because I chose to and have come to this position through much debate and reading; I'm not part of any group whose dogma I'm backing. I'm perfectly free to change my opinion on the matter, without repercussion.

Please stop using hyperbola, ad hominems, and baseless (nay useless) analogies and please write a coherent rebuttal if you choose to debate this subject.


> I was responding to the assertion that the GPL isn't about freedome because it imposes limitations.

People make the example about killing because there are the conflicting freedoms of two people involved: the killer and the victim. And people make that example as if the GPLs restrictions always involved such a conflict. This is not true. The GPLs limit my freedom to do things that are not an attack on others' freedoms. For example, the freedom to combine and redistribute GPLv2 and GPLv3 licensed code. Or the freedom to share a binary with someone who needs it, without forcefully bloating the distribution with a copy of the entire source code (which that someone likely didn't ask for, doesn't need, and doesn't want to have). The alternative of providing a written offer for the source code (valid for years) can be unacceptable for me because I cannot promise to meet such a requirement -- it makes helping people out potentially very expensive and painful. Therefore my options are to 1) violate the license and lose my freedoms as per the GPLv2 death clause, or 2) not share with the person in need.

I don't see how I would be violating anyone's freedom in case 1 -- but I lose mine (if I had freedom to begin with, I think that is questionable). In case 2, the GPL is definitely not helping towards ensuring freedom for either me or the person who needed my help. No, the license is just restricting both of us.

> Please stop using hyperbola, ad hominems, and baseless (nay useless) analogies and please write a coherent rebuttal if you choose to debate this subject.

It's useless to make a coherent rebuttal because GPL fanatics will just make some incoherent arguments about users versus developers' freedoms. Oh yeah, my freedom to help a friend is a developer freedom, and therefore does not matter. Me wanting to help a friend is like wanting to kill somebody. The society is better off without letting me do such evil.

If you think this is freedom, you have such a twisted and distorted understanding of the word that you're as good as a cultist.


> People make the example about killing because there are the conflicting freedoms of two people involved: the killer and the victim. And people make that example as if the GPLs restrictions always involved such a conflict. This is not true.

What about the developer vs the user? That's the very conflict we're discussing here.

> The GPLs limit my freedom to do things that are not an attack on others' freedoms.

That depends on what you believe my freedoms are. I believe that I should have the source of anything I run; in such a case you withholding source from me is an attack on my freedom.

> For example, the freedom to combine and redistribute GPLv2 and GPLv3 licensed code. Or the freedom to share a binary with someone who needs it, without forcefully bloating the distribution with a copy of the entire source code (which that someone likely didn't ask for, doesn't need, and doesn't want to have). The alternative of providing a written offer for the source code (valid for years) can be unacceptable for me because I cannot promise to meet such a requirement -- it makes helping people out potentially very expensive and painful. Therefore my options are to 1) violate the license and lose my freedoms as per the GPLv2 death clause, or 2) not share with the person in need.

Two points:

1) Noöne is forcing you to use the GPL for your own work. While I would find it preferable, I would never force you to; I would simply choose not to use your software if you weren't making the source available (which you need not to under certain licenses).

2) I do not view "bloating the distribution with a copy of the entire source code" as a bad thing, and certainly not an excuse to not use the GPL.

> It's useless to make a coherent rebuttal because GPL fanatics

Thank you for the ad hominem

> incoherent arguments about users versus developers' freedoms.

You've yet to establish that the argument is incoherent, probably because, based on your first few sentences, you somehow don't believe it exists.

> Oh yeah, my freedom to help a friend is a developer freedom, and therefore does not matter.

You're not helping them if you're not providing the source in my opinion. You're simply band-aiding a problem at best and forcing complacency against usage of their own device at worst.

> Me wanting to help a friend is like wanting to kill somebody.

Again, I've literally never said this, nor implied it.

> The society is better off without letting me do such evil.

No, society is better off with people like you who have do believe in sharing your source, but are put off by some of the issues with the GPL. (Yes, I did just say the GPL isn't perfect.)

Society is not better off when someone takes previously free code, makes it unfree, and then proceeds to use it to lock users into their system.

> If you think this is freedom, you have such a twisted and distorted understanding of the word that you're as good as a cultist.

Thank you again for the ad hominem and hyperbole that really don't make much sense.


> What about the developer vs the user?

No, that's the false dicothomy GPL proponents keep bringing up. The freedom to modify code and the freedom to distribute the software (modified or not), is something you claim to be trying to be protecting for the users' sake, but as soon as I try to exercise these freedoms, you call me a developer and a distributor. If one can't exercise these freedoms without being labelled as such, these aren't user freedoms at all. But for me, as a user, the freedom to share (modified or not) software with other users is a very important way to help others out, and you people keep telling me there's a conflict in that.

> I believe that I should have the source of anything I run; in such a case you withholding source from me is an attack on my freedom.

Strawman argument. I'm discussing the scenario where I help people out by giving them software they need, and ask for. I'm not withholding anything, but if they're not requesting the source code, I'm not going to make life inconvenient for both of us by forcing it on them anyway. And just because I can help someone out at time t doesn't mean I can promise to give them the source code years after. It just doesn't work that way. Not making such a promise, however, is very different from "withholding source", which is the straw man you're making.

> Two points

1) Yes, I can choose to use whatever license I like for my own software. That has nothing to do with this discussion. Dismissed.

2) Then you do not understand what problems people have in the real world. If their system is broken and I'm giving them a file to fix that, I'd be very much of a douchebag to force them to download a potentially large archive full of source they don't need. Then tell them to download the tools to extract it (on their system that desperately needs help). Then tell them to remove all that crap so they can get just that one file they needed.

Likewise it would be very sad if I had to tell them that no, I cannot help you now by giving this file because I would need to find and download the source for it (the binary might've been compiled years ago).

Why do you have to oblige me with crap that doesn't help me nor the person I'm helping? And you are calling that freedom? No, it's not. And this "freedom" is the very reason I really don't help people much these days, or if I do, I do it either illegally or with truly free software, not this fake kind of free that tells me to bugger off should I dare share.

> You're not helping them if you're not providing the source in my opinion. You're simply band-aiding a problem at best and forcing complacency against usage of their own device at worst.

Your opinions don't fix people's software problems. Sometimes, files might. But there we go. Someone needs help, I help him, and the GPL fanatics say, oh look, clarry just almost slaved and murdered somebody because he didn't suffocate that poor fellow with a truckload of source code. So evil. The person who was helped thanks me and I might give him a tip as to how to avoid the problem in the future. Sure sure, you think I'm not helping him. He should just move to the first world and get a broadband so he can afford to download, who knows, maybe dozens or even hundreds of megabytes of source he doesn't need? And of course I'm responsible for finding and distributing all that, with my not-so-fast line. You think I'm not helping, I think you're insane. What ad hominem?


Free software is about the users ability to understand how the software works, modify it to their whim, and distribute their modifications or changes.

Since permissive licenses enable downstream users to recast the project into a proprietary state, denying those freedoms, then they are less free, in the free software sense.

Permissive licenses are developer friendly. They let you do whatever you want, including restricting users of your software. Copyleft is user and ecosystem friendly, by making it so any use of the code must stay available.


As an end user:

I can combine GPLv2 (eg. linux kernel) and BSD licensed code, and distribute it.

I can combine GPLv3 and BSD licensed code, and distribute it.

I cannot combine GPLv2 and GPLv3 licensed code, and distribute it.

As an end user, I like BSD licensed code more.


Except the BSD licensed code may not be available for you to distribute or play with; that's the crux of the issue.


That's true of GPL code too... If my project is GPLv2, then GPLv3 code is not available to distribute or play with.

Personally I'm happy for people to use and modify the code I've given away, even if they don't choose to give back their changes.


We're talking about 2 different issues. If your project is GPL anyone using it could/should be able to get the source. With a BSD project that is not necessarily true.


In theory you could see it, but you couldn't think about it or use it -- you need to follow clean room rules.

It's two sides of the same issue: either way, the code is not available to you.


We're still not talking about the same thing. I'm talking about the project you're using and need source for. You're talking about using other projects in another.


We're not? It sounds like we are... If the project that you're using and need source for is GPLv2, and the code you want to use is GPLv3, then you cannot use it (and it might not be good idea to even look at it -- depends on how litigious that other project is)


The user/developer divide is the worst excuse for the GPLs' restrictions. Once users "modifiy it to their whim" and distribute the changes, they're developers and distributors. At that point, it's the developers' and distributors' freedoms that matter to them.




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

Search: