Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
GNU is Not Unix Operating Systems BSD

Linguistic Problems of GPL Advocacy 633

Reader Chemisor advances a theory in his journal that a linguistic misunderstanding is at the root of many disagreements over different licensing philosophies, in particular BSD vs. GPL. The argument is that GPL adherents desire the freedom of their code, while those on the BSD side want freedom for their projects. "It is difficult to spend a week on Slashdot without colliding with a GPL advocate. Eager to spread their philosophy, they proselytize to anyone willing to listen, and to many who are not. When they collide with a BSD advocate, such as myself, a heated flamewar usually erupts with each side repeating the same arguments over and over, failing to understand how the other party can be so stupid as to not see the points that appear so obvious and right. These disagreements, as I wish to show in this article, are as much linguistic as they are philosophical, and while the latter side can not be reconciled, the former certainly can, hopefully resulting in a more civil and logical discourse over the matter." Click below for Chemisor's analysis of the linguistic chasm.


The first disagreement I wish to address concerns the statement "BSD projects are free, but GPL projects stay free." GPL advocates cannot understand why the BSD advocates are not getting this point, and BSD advocates make accusations of Communism, which are then argued to death by both parties. The problem with the statement above is the different interpretation of the word "project." I, and I suspect many other BSD advocates, generally separate the concept of "project" from "code." While code is what projects are made of, I do not see it as valuable as the useful product a project provides. When I write a program, be it a site scraper, or a todo program, or a UI framework, I think of my project as the entity that matters. The fact that I may have copied some code from one to another is of no concern to me.

A GPL advocate sees an entirely different situation. To him, it is the code that comes first, and the applications built from that code are a secondary consideration. Even a single line of code is precious, whether it contains a complex spline formula or i += 2;. As an aside, I would expect this mindset to be more prone to reusing other people's code instead of reimplementing it. Where I would scoff at a piece of code, call it utter garbage, and rewrite the damn thing from scratch, a GPL advocate would probably wrap the garbage in another API that he finds more palatable. In my opinion, this leads to bloat from wrappers, instability from the garbage that is still there, and loss of skills. What programmer from the current generation is up to the challenge of reimplementing libjpeg? But, I digress. I am here to explain, not bash, so please excuse this little rant.

The two different viewpoints outlined above lead to different interpretation of the expression "stay free." To a BSD advocate, his project will always "stay free," and to assert otherwise is ridiculous. Once it is published, what could possibly make it go away? I have projects that I wrote fifteen years ago which are still hosted on ibiblio.org FTP site and mirrored around the world. I no longer maintain them and think them useless, but they'll persist forever, and anyone at all who wants to download them still can download them. The fact that some company can take it, write a little bit on top of it, and sell it, does not in any way affect my project.

To a GPL advocate, the project is not important; the code is important. So he looks not just at the project distributions he has made, but also of other projects that may incorporate any line of code he ever wrote. In his mind there is no distinction between his original work and its encapsulation in a derived work. He still thinks of both as "his code," and as an entity that must stay free. Naturally, any non-free derived work will anger him, because his code in it will no longer be free, even though his own copy of that code and his entire project will still be free.

The code/project distinction also leads to a different view of what it means to "use" a project, although this point is seldom argued explicitly. A GPL advocate makes a rather arbitrary and vague distinction between a human using his code and a computer using his code. Consider a situation where a user has a GPL-licensed program that converts a JPEG image to a GIF image and his own program (which he sells, or distributes under some other incompatible license) that can only view GIF images. It is legal for him and his customers to call the GPL program from the command line to convert JPEG images and then view them with his program. Suppose he gets fed up with this sequence and writes a shell script to do both operations in sequence. Is this legal? Probably. But what if he cuts out the conversion part of the GPL program and embeds it in his viewer? That would make his viewer a derived work, and so illegal to distribute under anything but GPL.

From the GPL advocate's view, this is perfectly logical. It is his code, and he wants all instances of his code to be free. The instance can not be free if it is embedded in another executable that is not free, since it can not be easily modified, which was Stallman's gripe and the reason for the GPL's existence. From the BSD advocate's view, the situation is absurd. His project is still free, and he does not really care how a user wants to use it. A shell script calling the converter is no different than a closed source program embedding it. They are simply different ways for a human to use the program. Whether the object code for the project stays hackable is also irrelevant, since the human's use of the project through a derived work project is just another way of use.

These different views of derived works are another bitter point of contention. GPL code can only be legally embedded in GPL projects, and if a non-GPL project wants to use GPL code, it must either not do that, or become a GPL project. This is why BSD advocates call the license viral, and thus elicit vehement denials from GPL advocates, who retort that nobody is forced to use GPL code, which lead to useless arguments over the meaning of "forced" or "viral" with no meaningful result. It must be reiterated that the GPL advocates look at code, while the BSD advocates look at projects, and the "viral" debate can only be resolved by examining both viewpoints. A GPL advocate sees a derived work as "his code" combined with some "other code" in a package, and his concern is that the package always be openable. "His code" always remains his code, and he sees any use or distribution of the whole package as a kind of use or distribution of his code. As a result, he feels justified in placing restrictions on how a user may use or distribute the derived work, even though he "owns" only a small part of the whole package. This is following the philosophy of copyright and intellectual property, which, curiously, is a favorite target of derision of these same people. A copyrighted work can never be wholly owned by the user, it is only rented, and so subject to control by the original creator.

A BSD advocate sees a derived work as his project being used by another project. The derived project is wholly owned by whoever wrote it, even if it uses other people's code. This is similar to the property laws of the real world. For example, suppose I sit on the curb and give away free lemons. A kid next door might get the bright idea to get my lemons, make lemonade, and sell it. The lemonade is clearly a "derived work," since it is made from my lemons, but it is absurd to suggest I have any right to tell him what price to put on his lemonade or how much sugar he can use in it. By the laws of private property in the real world, my ownership was relinquished at the time when I handed him my lemons. Just as I do not own his lemonade, neither do I own the derived works he makes from my BSD-licensed software.

These distinctive views of ownership combine with considerations of money, and GPL's anti-business mindset, resulting in accusations of Communism, and worse. But I'll save explaining that for another article. For now I will simply suggest that GPL advocates should change their language a bit, to make themselves more easily understood by people who do not subscribe to their philosophy. Specifically:

"BSD code is free, but GPL code stays free."

It would be better instead to say:

"BSD code is free, but the GPL ensures all derived works are also free."

or

"The GPL ensures your code will never be used by a closed-source application."

These alternatives clarify that you are talking about derived works, rather than the original project, which, of course, will always stay free anyhow. Also, do keep in mind the other points brought up in this article and make at least some effort to ensure you are speaking the same language before becoming too upset. I will never agree with your philosophy, but at least you'll know you were understood.
This discussion has been archived. No new comments can be posted.

Linguistic Problems of GPL Advocacy

Comments Filter:
  • by Hal_Porter ( 817932 ) on Wednesday July 09, 2008 @12:55AM (#24111909)

    Face it, this is the internet. Everyone has read your arguments, the counter arguments to you arguments and the counter counter arguments and so on ad infinitum. They've made a decision about this stuff and advocacy won't change that.

    If people disagree with you, the correct course of action is to troll them for the lulz.

  • bollocks ... (Score:5, Insightful)

    by Anonymous Coward on Wednesday July 09, 2008 @12:57AM (#24111929)

    A shell script calling the converter is no different than a closed source program embedding it. They are simply different ways for a human to use the program. Whether the object code for the project stays hackable is also irrelevant, since the human's use of the project through a derived work project is just another way of use.

    Complete bollocks. Is the freedom to modify code not the entire point of GPL licenced software?

  • by h4rr4r ( 612664 ) on Wednesday July 09, 2008 @12:57AM (#24111933)
    No one is forced to use your code. If they don't want to abide by the license they can write their own code.
  • by Dunbal ( 464142 ) on Wednesday July 09, 2008 @12:58AM (#24111941)

    This clause should be included in any contract, license or law:

    1. Thou shalt not over-analyze the fucking wording of the contract!

  • There is a reason (Score:5, Insightful)

    by phantomfive ( 622387 ) on Wednesday July 09, 2008 @01:01AM (#24111969) Journal
    There is a reason that GPL proponents don't agree with the BSD guys (and girls), even understanding this argument. The idea is that in the long term, having your code GPL'd WILL cause it to be put into more products. It's great that BSD made it into apple and all, but since all the improvements made in Linux get put back into Linux, it will just get better and better, and eventually even Apple will not be able to avoid using Linux, because it will be THAT GOOD. May take some time, but hey, we're patient folk.

    Whether this is true or not is up for debate. Only time will tell, the whole software industry is still young. Always good to have linguistic clarity though, I appreciate the post.

  • Deep Differences (Score:5, Insightful)

    by DesScorp ( 410532 ) on Wednesday July 09, 2008 @01:02AM (#24111979) Journal

    I think the differences between the two camps go far deeper than simple semantics. I don't think you can sum up the conflict as a Mars-Venus miscommunication thing. There are some deep philosophical differences between the two camps. GPL guys are more evangelistic than BSD guys. BSD guys are more Laissez-faire about codes than GPL guys.

    There's really no direct political comparison, but the closest example to BSD vs. GPL in that context is a Libertarian vs. Social Democrat example. BSD guys know that someone can take the code, not give back anything; the principle of real freedom, as they see it, is more important than whether or not anything is "given back". The public good is an indirect benefit, in their view. GPL guys, however, take somewhat more of a socialist-lite view, with the public good of "giving back" of more importance than total freedom to use the code however the end user sees fit.

    Basically, both camps have some very different definitions of what "freedom" is... just like any other kind of politics.

  • Probably Not (Score:5, Insightful)

    by dcollins ( 135727 ) on Wednesday July 09, 2008 @01:03AM (#24111989) Homepage

    Without being a full-time developer, or terribly invested one way or the other in the licensing issues (I've put the GPL on a couple pieces of code, I bet they've never been used by another person), the first thing I think of when I hear these licenses is something like this:

    - BSD ensures freedom of the *producer* of the code to do what they want.
    - GPL ensures freedom of the *recipient* of the code to do what they want.

  • Thank you (Score:4, Insightful)

    by QuantumG ( 50515 ) * <qg@biodome.org> on Wednesday July 09, 2008 @01:04AM (#24111997) Homepage Journal

    Would have been better if you removed your bias, but you did well resisting it in any case.

    It is true that GPL advocates consider it important that the user of the software be able to modify the software and redistribute the results.. and that includes the copies of the software the are embedded in some other software.

  • by jdbo ( 35629 ) on Wednesday July 09, 2008 @01:05AM (#24112007)

    While I agree with some of the author's points regarding linguistic disagreements obscuring philosophical disagreements, and sympathize with the stated desire to bring clarity to this ongoing flamewar, the actual article spends as much time pettily denigrating the pro-GPL position as it does clarifying the disagreement, thereby undermining the substantive aspects of the argument in favor of partisan score-making.

    Or, in short: good job, you've obscured any actual insight with smug self-righteousness.

  • by nhaines ( 622289 ) <nhaines@@@ubuntu...com> on Wednesday July 09, 2008 @01:07AM (#24112031) Homepage

    In what purported to be a rational theory, the rant about GPL-advocates being too lazy to rewrite poorly-written routines and instead simply wrappping APIs around them in the effort to dogmatically reuse code seemed out of place and detracted from what had been up to then a rather promising start.

    I'm sorry that Chemisor seems to misunderstand the purpose of the GPL and the culture it grew out of.

    The GPL is not communist. It is not anti-business. The GPL simply prevents someone from taking shared code and no longer sharing. If you use GPL-licensed code in your product, you have an obligation to give others the same freedoms you received when you redistribute the work.

    This is an up-front permission, however. Nothing prevents someone from looking at a GPL'ed application or library and then doing the work themselves to implement the same functionality, nor contacting the copyright holders of the code and negotiating a custom licensing agreement.

    BSD is also a very valuable license, but with different goals in mind. There is no reason for the antagonism between proponents of both licenses.

  • by JanneM ( 7445 ) on Wednesday July 09, 2008 @01:12AM (#24112083) Homepage

    For my part (and only for my part. of course) my rationale for GPL is simple: I give you permission to use what I've made. You effectively pay for that right by giving identical permissions to use your related code back to me, and by extension to anybody else. It is a quid pro quo.

    I don't dislike the BSD license at all. Anybody want to use it is fine by me. But there is no "I used the BSD license so you must too" requirement - the defining part of the BSD licence compared to GPL is that there is no such requirement. So don't get mad if your BSD code ends up as part of a GPL'ed project. It's what you chose to allow after all.

  • by MichaelCrawford ( 610140 ) on Wednesday July 09, 2008 @01:15AM (#24112111) Homepage Journal
    While there is a large overlap between the approved Free Software Licenses [gnu.org] and the approved Open Source Licenses [opensource.org], the fact that a project has a license that is in both lists doesn't make it both Open Source and Free Software.

    Consider the GPL - it's approved by both. But Red Hat doesn't publish Free Software, it publishes Open Source - and software written by Richard Stallman isn't Open Source - it's Free Software, and RMS is happy to explain the difference [fsf.org].

    I'm squarely in Stallman's camp; my audio project Ogg Frog is definitely Free Software, not Open Source [oggfrog.com].

    You see, the distinction isn't the license - it's the purpose behind making the project either Open or Free.

    As Stallman explains, Open Source is about efficiency - volunteer coders, and "many eyeballs" finding and correcting bugs and security holes. Free Software is about creating a community - Stallman has made it very clear he hopes to get back to the way things were back in the day, when source was shared openly with no non-disclosure agreements, copyrights or licenses.

    Unfortunately, the English language has a problem: Free can mean "as in Freedom", or "without cost". When I speak of my Free Software project to non-techie people, they think I'm just not going to charge money for it, and question my sanity. They have no clue about the meaning behind Free Software.

    Spanish doesn't have that problem: Free as in Freedom is "Libre", free as in beer is "gratis". But those words don't make sense to English speakers.

    I have developed a convention, but it's too subtle for most to take notice. Perhaps they will if you join me: I capitalize the "F" if it's "Free as in Freedom", but use lowercase for "free as in beer". I think that emphasizes the difference, and maybe if we all wrote it that way, more people would understand.

    Stallman is a great man, IMHO, but he has a marketing and image problem: very few non-technical people have the first clue as to what Free Software means. Most think it means "freeware".

    But Open Source doesn't have that problem; many who don't know source code from Shinola do understand what Open Source is all about.

    Thus I long ago gave up trying to describe Ogg Frog as Free Software in casual conversation. I only say that when speaking to others who will likely understand. Most of the time I describe it as Open Source, but feel guilty in doing so. I feel like Matthew in these verses:

    Peter said unto him, Lord, why cannot I follow thee now? I will lay down my life for thy sake. Jesus answered him, Wilt thou lay down thy life for my sake? Verily, verily, I say unto thee, The cock shall not crow, till thou hast denied me thrice. -- John 13, 37-38

    (BTW - there's no Ogg Frog to download yet, not even CVS or Subversion. Out of consideration for my non-technical target market, I'm not releasing anything until it reaches it's planned 1.0 feature set, and is reasonably bug free. At least for non-technical users, I feel The Cathedral is better than The Bazaar.

  • by Artraze ( 600366 ) on Wednesday July 09, 2008 @01:17AM (#24112131)

    Maybe it's just late and I glazed over something, but it seems like he missed the primary difference between the two licenses: WHO the license is free for. With BSD code, it's the developer; developers can do just about anything they want with your code. For the GPL, it's the end user; they are guaranteed to be able to modify/update/fix any incarnation of your code*.

    Certainly there will always be the (rather pointless) philosophical question of which is more 'free', but what's the point? They're both pretty darn free, but take their freedom in different directions. Why not just choose the one that fits your vision of your project best, and understand that other licenses have their merits too?

    *For those keeping track, this was the primary purpose of the GPL3. It ensures that GPLed software on protected devices can be updated.

  • GPL anti-business? (Score:1, Insightful)

    by AceofSpades19 ( 1107875 ) on Wednesday July 09, 2008 @01:18AM (#24112145)
    > and GPL's anti-business mindset, resulting in accusations of Communism, and worse.

    Can someone explain how does the GPL have an anti-business mindset?
  • The only thing... (Score:2, Insightful)

    by argux ( 568146 ) <dazu.huikeNO@SPAMgmail.com> on Wednesday July 09, 2008 @01:18AM (#24112147) Homepage

    Pretty good analysis you've got there. That's speaking as someone who is not a coder, and takes no part in these discussions, but I have watched them several times, never coming to a definite conclusion. That is, I don't favor one side over the other. It would make me pretty angry and sad to find out that Microsoft were making tons of cash from a piece of code that was originally GPL or BSD or whatever. Only because I see it as the big guy profiting from the little guy's work. But I also love the BSD way of thinking, which is absolute freedom. Here, I wrote this. Do whatever you want with it. I don't care. Whatever. I suppose that my political tendencies cause me to lean more towards BSD licensing.

    That said, I only found one thing I don't agree with: the lemons analogy. I don't think GPL coders tell other people how to use their code, only that it should be GPL. You could create a bomb with my code, for all I care, as long as the end result is also GPL. That's because (I assume) GPL coders believe that if what you're writing builds upon their previous work, you should give it away with as much freedom as you received it.

    So, the analogy would be more like, you give out lemons for free, with the sole restriction that whatever product is made from these lemons should be given away for free, as well. So if these lemons were GPL, the kid would have to... like give the lemonade away? Or sell the lemonade and give away the recipe he used to prepare the lemonade to whomever asks for it. Also, you would be forced by the GPL to divulge the source of your lemons, if anyone asks, because they didn't come out of yourself, so you didn't create them. You're just the distributor, kind of like ibiblio. So that would be like you have to point to the tree you got them from... or the store you bought them at... or something like that.

  • by Santana ( 103744 ) on Wednesday July 09, 2008 @01:22AM (#24112191)

    Microsoft: we want to make _our_ software better, and _all_ software ours
      GNU/Linux: we want to make _all_ software free as in GNU
      BSD: we want to make _all_ software better

  • by stinerman ( 812158 ) on Wednesday July 09, 2008 @01:24AM (#24112209)

    The GPL is not communist.

    Of course it is. It's not about the abolishment of private property, but about collective work toward a common goal. You know, the good part of communism.

    It is not anti-business.

    That's true, except when your business relies on selling copies of software. Free/open source software will eliminate that business model given enough time, just as the automobile eliminated the horse and buggy.

  • by phantomfive ( 622387 ) on Wednesday July 09, 2008 @01:26AM (#24112231) Journal
    This is silly. Why are you saying Steve Jobs wouldn't use Linux? They are happy enough using GCC. They are already using a lot of BSD stuff. Are you thinking I meant Apple would be using Red Hat or something? I was referring to the Linux kernel itself, and there is little to keep them from switching over. Am I to assume that if it is in the best economic interest of Apple to switch to Linux, that they won't do so?
  • Re:bollocks ... (Score:2, Insightful)

    by dgun ( 1056422 ) on Wednesday July 09, 2008 @01:34AM (#24112305) Homepage

    Right. But the point he makes a couple of times is that the original code is still available.

    Another thing I would point out is that the OP makes all of his comments about the GPL assuming distribution. My understanding is that GPL code can be mixed and mingled with closed source code as long as the derived work is not distributed. Which may seem trivial, but I'm sure this happens plenty.

  • Re:WINE (Score:3, Insightful)

    by Spy der Mann ( 805235 ) <`moc.liamg' `ta' `todhsals.nnamredyps'> on Wednesday July 09, 2008 @01:36AM (#24112335) Homepage Journal

    DirectX development in Wine froze. Years later, Cedega still hasn't returned the code, and Wine just barely came out from it.
    This is the kind of issues that the GPL addresses.

    You mean, the issue that users get functionality years earlier than they would have if the project had been GPL?

    Only users who PAY. And that ain't true freedom.

  • by nhaines ( 622289 ) <nhaines@@@ubuntu...com> on Wednesday July 09, 2008 @01:38AM (#24112345) Homepage

    Yes, but you could hardly argue that the automobile was anti-business. Instead, the business opportunities changed. New opportunites opened up that were far more lucrative and--ultimately--successful.

    Free Software is powerful because it allows others to build up services and products. In many cases, you can start off much further ahead than if you started from nothing. My router is a MIPS processor running Linux and a bunch of commodity daemons, and I know it was not significant work for Linksys to design the firmware. It was all some configuration and Web-based configuration interface glue. The source code is available, others have improved it, and Linksys sold these routers quite successfully.

    Meanwhile, I knew the router wasn't doing anything too strange and I know I can continue to use my router and manage updates on my own or with others, no matter what Linksys now does. It was peace of mind for me and well worth the $70 I spent at the time.

  • by stinerman ( 812158 ) on Wednesday July 09, 2008 @02:09AM (#24112585)

    After I posted, I thought a bit more about the question and decided to throw in a different analogy.

    A energy-matter conversion device (a replicator in Star Trek terms) would be incredibly anti-business, but they'd be a great invention. If one assumes a nearly infinite supply of energy, the price of quite a few goods would be zero.

    When proprietary software vendors speak of FOSS being anti-business what they are really doing is asserting the broken window fallacy [wikipedia.org]. That is to say proprietary software costs money, which is a business transaction while FOSS (usually) costs nothing which isn't a business transaction.

  • by PakProtector ( 115173 ) <`cevkiv' `at' `gmail.com'> on Wednesday July 09, 2008 @02:15AM (#24112623) Journal

    I don't think you understand what you're talking about.

    They have a desirable trait that causes us to spread them far and wide. Sounds like they're doing very well.

  • by QuantumG ( 50515 ) * <qg@biodome.org> on Wednesday July 09, 2008 @02:16AM (#24112635) Homepage Journal

    Could you at least define "successful" before making such a huge claim?

    The article is about people using words that are confusing and here you are doing just that.

    Sheesh.

  • by drmerope ( 771119 ) on Wednesday July 09, 2008 @02:17AM (#24112643)

    The idea is that in the long term, having your code GPL'd WILL cause it to be put into more products.

    If this is the idea, we can already be pretty sure that it is wrong. You mention Apple using FreeBSD, but you seem to forget that almost every major TCP stack is BSD derived. Even Microsoft's NT implementation the BSD stack, although it mostly but not entirely rewritten by the present day. [kuro5hin.org]

    Do you work in the embedded applications industry? I can tell you that Linux is and remains quite toxic to the business community b.c. of the GPL and the perception of substantial legal risk thereof. Cisco for instance is making a push to use a FreeBSD derivate in all of its consumer products--displacing in some cases existing linux based hardware.

    BSD has enjoyed tremendous penetration into the commercial marketplace. Linux is included in a handful of devices--decisions attributable to a wave of linux euphoria which has now mostly dissipated. Organizations are now asking which OSS is safest base from which to derive projects rather than associating an OSS base with Linux. The result is a renewed and overwhelming focus on skipping Linux and sticking with BSD derived code.

  • Re:Probably Not (Score:5, Insightful)

    by NotInfinitumLabs ( 1150639 ) on Wednesday July 09, 2008 @02:20AM (#24112665)
    The FOSS community is not your personal army of coders. We do not code solely so you can get rich off our labors.
  • by marco.antonio.costa ( 937534 ) on Wednesday July 09, 2008 @02:22AM (#24112685)
    My god, this notion that "you're not supposed to charge for distributing GPL software" is completely WRONG.

    In the lemonade example, it starts in the wrong track, because we're not talking about lemons, but recipes. So if I am a BSD license user and someone gets my recipe he can sell the lemonade for whatever and keep the recipe for himself, change it, or redistribute it as he will.

    If I am a GPL using person, if you take my recipe and use it, you can sell the lemonade for as much as you like, you just need to provide the source with your modifications to everyone you distribute your code to, and he will be bound by the GPL as well.

    That is my understanding of the issue, if i'm wrong i'll welcome correction from GPL scholars, that's a surprisingly tricky license to fully grasp. I'll give credit where its due to the BSD license for its simplicity. :)
  • by Anonymous Coward on Wednesday July 09, 2008 @02:29AM (#24112739)
    And their success is due to their choice in licenses. By similar argument, the success of Microsoft Windows, Office, Exchange and the Xbox must be due to their closed source nature. Ex post facto, Linux must become closed source, if its ever to attain the popularity of windows.
  • by Geof ( 153857 ) on Wednesday July 09, 2008 @02:29AM (#24112745) Homepage

    both GPL and BSD advocates want to be associated with the word "free" . . . these are just word games

    Most politics is "just" word games. The question is not who gets to be associated with the word. The question is who gets to define what freedom means (for software, but also more broadly). That matters very much.

    Similarly, "piracy is theft" is an attempt to define piracy as theft - to establish (or change) the meanings of both words. The same is true of the opposing claim that piracy is not theft. Eventually the argument will be settled, at which point the question will be invisible: piracy will be theft, or it will not.

    These words are not reflections of some objective meaning "out there" or handed down by God. They are defined by human beings. Their meanings are changed by human beings. Any political conflict involves struggles over meaning. The winners gets to establish their definitions as the "real" ones.

    -- Geof, GPL advocate and student of communication

  • Why the argument? (Score:3, Insightful)

    by LS ( 57954 ) on Wednesday July 09, 2008 @02:35AM (#24112807) Homepage

    It seems to me that there is enough room for both licenses in this world. There's no need to pit them against each other as enemies. In the end it's the author's code, and if he wants to make a license that requires you to film yourself doing a back flip and send it to him before you can use it, then so be it!

    All this shit about communism and Laissez-faire is ridiculous. Both licenses are built upon US copyright law.

    LS

  • by MikeFM ( 12491 ) on Wednesday July 09, 2008 @02:39AM (#24112837) Homepage Journal

    This article was really nothing more than a pointless one-sided rant. Why is flamebait being counted as being worthy of being posted?

    For all I care BSD fans can release their code under a BSD licence and GPL fans can release their code under a GPL license. To each their own. I use the GPL because I don't want my code to become irrelevant as changes are made by others and I don't want their changes kept locked up from the entire community. If others don't care about these things then it's up to them if it's their code. It's the difference between a sustainable free country and a country that is free for a short while before falling again into the hands of tyrants.

    It has absolutely nothing to do with linguistics.

  • by Anonymous Coward on Wednesday July 09, 2008 @02:43AM (#24112885)

    That's a fairly niave and arrogant statement. Why isn't non-GPL code "that good" that everyone will use it? Many times it is, which is why BSD code is often much more widely adopted than GPL code. They are often instead less high-profile projects that make less of a fuss regarding their license than the GPL community.

    I work in Java and we use a significant amount of open source libraries, none of which are GPL. The majority are either Apache/BSD/MIT based licenses, which are all fairly similar. Almost any Java enterprise application has some Apache licensed code (e.g. tomcat, log4j, Spring). The Hibernate framework is the most popular LGPL license I've worked with, which Stallman very much dislikes now. The JVM will soon be LGPL, but its source has been available to developers for over a decade.

    I've used Linux for workstations and servers at work, but generally few really like it. I recently switched to FreeBSD and cut my build times in half, due to UFS2 being superior to EXT3. I've been at places that migrated from Redhat to Solaris 10 for performance and stability improvements. Yet these are platforms that we work on, not our product.

    I have yet to work on anywhere that used GPL code in their code product, even though it would be acceptable in a web application as nothing is "distributed". The argument that the GPL is superior to BSD works in a limitted setting and does not take into account many facets of the industry. Both are excellent, but your argument is severely flawed.

  • by phantomfive ( 622387 ) on Wednesday July 09, 2008 @02:43AM (#24112891) Journal
    Amazon has Linux on the Kindle. [amazon.com]

    As a matter of fact, I do work in the embedded industry. More than anything I am still seeing commercial RTOSes like Nucleus, MicroC/OS, or VxWorks being used on embedded devices. Linux is gaining popularity, but in general you need a system that is more powerful (more RAM, better processor, an MMU).

    Linux is mainly being opposed by companies that want to limit what you can do on their hardware. For example, Cisco was getting upset with people hacking their WRT54G routers to do things only the more expensive models could do. Companies that don't care are happy to use linux (like Amazon).
  • by Hes Nikke ( 237581 ) on Wednesday July 09, 2008 @03:09AM (#24113089) Journal

    You should really use BSD rather than just giving away your code. With BSD, you get credit on all derivatives, AND you have a liability clause to protect you from law suits.

  • by Antique Geekmeister ( 740220 ) on Wednesday July 09, 2008 @03:14AM (#24113127)

    I've been dealing with BSD licenses for decades, and GPL licenses since Richard Stallman and his comrades first created them. I'm sad to say that this original post is absolutely full of strawmen. People like *THIS*, who skew the basic terms of both sides, are much more of a source of GPL/BSD license flaming than almost any of the actual software authors and license advocates. It starts with is original statement 'BSD projects are free, but GPL projects stay free'. BSD projects are under the control of the project owners. GPL projects are under the control of the users. The difference is _that_ simple.

    He continues iwth his skew: When he says 'But, I digress. I am here to explain, not bash, so please excuse this little rant.', right after insulting the free software process of nabbing snippets from one project to use on another in the GPL world, it's adding insult to injury. This rant is inexcusable, and ill-founded. Most projects do not benefit from a complete rewrite, because few programmers are capable of doing as thorough a job as a few years of evolution and community involvement can provide. If you think I'm kidding, take a look at all the software building tools published, and at how GNU-make continues in such widespread use because the problems that the new developers think are so devastating pale in comparison to the ones we solved 10 or 20 years ago with basic Makefiles, and we know how to scale them and manage them.

    Then there's "GPL code can only be legally embedded in GPL projects, and if a non-GPL project wants to use GPL code, it must either not do that, or become a GPL project." Complete nonsense: there hundreds, if not thousands, of dual-license projects in broad use. It's awkward, but effective.

    And there's "By the laws of private property in the real world, my ownership was relinquished at the time when I handed him my lemons." Complete nonsense. There is a sign up that says 'If you make lemonade from this, you have to share'. Plenty of apartment-sharing situations and households work this way: when mom or dad shows up with the groceries, and the other one cooks, everyone gets some of the food. It's part of why they bring home the groceries: the teenager does not get to take all the lemons from the refrigerator and make and sell lemonade and expect dad to buy more lemons everyday.

    His following claim that "The derived project is wholly owned by whoever wrote it, even if it uses other people's code." is also complete and utter legal nonsense. Copyright doesn't work that way: duplicating paragraphs, or pages, or chapters out of another work can indeed be a violation of copyright. Copyright law is tangled, and such complete disregard for its actual use simply obscures it. Software copyright is particularly nasty: If you look at a typical closed source license, such as a Microsoft End User License Agreement, you'lll see a complex and far more intrusive set of copyright restrictions.

    I've worked with BSD licenses on a number of projects: they do have their uses, but this is just insulting to the GPL community. And it makes the BSD license users look bad because it claims to speak for the rest of them, when there are plenty of better reasons to use BSD licenses. (Controlling one's own project, and making money by selling enhanced proprietary components, is a legitimate business model, for example.)

  • Rant at 11 (Score:1, Insightful)

    by Anonymous Coward on Wednesday July 09, 2008 @03:36AM (#24113299)

    A BSD advocate ranting on GPL ... news at eleven.

    Does this really help in discussions of GPL vs. BSD?

  • by Anonymous Coward on Wednesday July 09, 2008 @03:37AM (#24113313)

    There are always two sides. GPL is better for the company that writes the code. BSD is better for the company that uses the code.

  • by CandyMan ( 15493 ) <[moc.ariednac] [ta] [reivaj]> on Wednesday July 09, 2008 @03:48AM (#24113379) Homepage

    While there is a large overlap between the approved Free Software Licenses [gnu.org] and the approved Open Source Licenses [opensource.org], the fact that a project has a license that is in both lists doesn't make it both Open Source and Free Software.

    Sorry, but that's insane. You may dislike the other term ('Free Software' if you call your work 'Open Source' and 'Open Source' if you define your work as 'Free Software'), but the Linux kernel is both Free Software and Open Source, Python is both Open Source and Free Software, and so is all of the software in Debian main.

    Consider the GPL - it's approved by both. But Red Hat doesn't publish Free Software, it publishes Open Source

    According to your theory, the Linux kernel is partly Open Source and partly free, because some of the developers adscribe to the Free Software philosophy, while others are paid by Open Source companies. Does that make Linux 89% (or whatever) Open Source and only 11% free?

    I too prefer to call it "Free Software" (I am Spanish, so "software libre" rolls of my tongue better than "open source"), but we can't pretend that Open Source and Free Software are exclusive terms.

    The academic community studying Free and Open Source Software call it that, or by its acronym FOSS/FLOSS (the L standing for "Libre"). That way they can do away with the terminological hairsplitting and devote their attention to whatever aspect of Free Software they want to study.

  • by Nursie ( 632944 ) on Wednesday July 09, 2008 @04:03AM (#24113459)

    I got this far -

    "A GPL advocate sees an entirely different situation. To him, it is the code that comes first, and the applications built from that code are a secondary consideration."

    Before I stopped reading because the writer is an idiot. This is both inssulting and a straw man argument.

  • Re:bollocks ... (Score:4, Insightful)

    by growse ( 928427 ) on Wednesday July 09, 2008 @04:30AM (#24113639) Homepage
    If you're not distributing a binary (or code), then it's not distribution. A website is a service. The website user doesn't execute the code, the service provder's servers do. The user just tells it to.
  • by Strilanc ( 1077197 ) on Wednesday July 09, 2008 @04:35AM (#24113671)

    BSD is about giving to the world.
    GPL is about changing the world.

  • by novakyu ( 636495 ) <novakyu@novakyu.net> on Wednesday July 09, 2008 @04:38AM (#24113683) Homepage

    Well, I wasn't thinking of ripping off source code so much as ripping off ideas and algorithms, neither of which can be copyrighted (nor can they be covered by GPL). A decent engineer can read code and understand it well enough that there is no need to "copy" the code.

    But the thing is, as long as you even looked at the code, legally speaking, there is the lingering doubt of whether the code you write can even be considered original.

    This subject comes up not infrequently on mailing lists of GPL projects such as Maxima and GNU Octave. They recommend that if you are going to write new modules (with more recent efficient algorithms, for example) for them, then that you DO NOT LOOK AT, e.g. Matlab code implementing the feature, even though that code also uses publicly known algorithms.

    This is not a new idea/issue. If you are going to use algorithms from a code, and you don't want to comply with the terms of the license, then you yourself should not look at the code (or at least, never admit that you did), but have someone else extract the algorithm for you, and use that algorithm, never having looked at a specific implementation.

    You can claim as much as you like that you only ripped of "ideas and algorithms", but the courts (and opposing lawyers) will find it otherwise.

  • by kiddygrinder ( 605598 ) on Wednesday July 09, 2008 @04:41AM (#24113697)
    I don't think of the code i release under gpl as free (except as in beer), i worked hard on it and if you want to use it you have to pay me back in kind.
  • by QuantumG ( 50515 ) * <qg@biodome.org> on Wednesday July 09, 2008 @04:50AM (#24113741) Homepage Journal

    People often confuse "commercial" with "proprietary".. including the good people at Trolltech.

  • by Metorical ( 1241524 ) on Wednesday July 09, 2008 @05:33AM (#24113943)
    I've grown a passive disliking of the GPL that's probably quite unfounded. The reason why? Whenever there's an argument about licensing there's always someone shouting about the GPL the loudest with lots of facts and statistics.

    It's quite similar to politics where the best argument doesn't always win *if* you lose the voters while trying to explain it to them. Of course in most cases licensing shouldn't be a political decision but a case-by-case breakdown of the features of each license.
  • by SerpentMage ( 13390 ) on Wednesday July 09, 2008 @05:59AM (#24114071)

    Sorry, but Darwin could not be replaced in an instant. The moment Apple adds the Linux kernel they will have license issues. Apple knows this, you know this, and Steve Jobs knows this. Thus they will not use the Linux kernel.

    BTW you also have missed the point of Apple. Steve Jobs does not care that Linux has NPTL threads. Nor do I because I am thinking so what! Steve asks the question, how can this help my client!

    Imagine Steve on stage saying, "hey this iPhone has NPTL threads...." The audience would say, "huh? Ok how does that help me?"

    And this is why Linux on the desktop will never succeed... Stop talk about NPTL threads and start talking about building apps that users want...

  • BSD problems (Score:5, Insightful)

    by DrYak ( 748999 ) on Wednesday July 09, 2008 @06:39AM (#24114281) Homepage

    as long as they provide the source for the tcp/ip stack and bundle it with windows, i don't mind.

    The problem with BSD is that they can get away with it.
    As long as they put in some about box the sting that used to be required by the old BSD back then, they are OK.
    You won't get the source.

    The BSD team may subsequently fix and upgrade the stack, you don't know if Microsoft had followed the upgrade, and you don't know which modification were made to the code so you won't be able to replace the stack with a fixed one either.

    Whereas GPL components have a specially crafted license that guarantees that the code will keep all attached freedoms, and make sure that, wherever the piece of code ends, the users will still be free to hack it.

    BSD tries to give the greatest freedom *to developer* helping them leverage existing opensource code, without restricting what they can do with it (minus a textual mention that used to be required in the old BSD), even use it in completely closed projects. You, the developer, have the right to do whatever the fuck you want to do with a piece of code, even if that means blocking those freedom for everyone else and making sure you're the single person that can do whatever you want to do.

    GPL tries to secure *users'* freedom : no matter what the developer tries, the code will remain free and the user will still have his basic freedoms guaranteed. Wherever the code ends up, you as a user, will still have the freedom to do whatever the fuck you want with it (as long as you pass along that freedom to the next in chain).

    Now whichever is best for you between BSD of GPL is a matter of preference :
    - Will you mind that someone else will take your code, stamp "(c) Microsoft" on it and no further improvement will be exchanged between the community and that fork ? Preventing forever users to do whatever they want with it ?
    - Or is it important for the piece of code you pick to give, the developer total freedom to do whatever you want with it, even use it in a closed source project ?

    I personally prefer the GPL because of the guaranteed perpetual freedom (for users to hack it) that comes with it.

  • by fang2415 ( 987165 ) on Wednesday July 09, 2008 @06:44AM (#24114309) Journal
    • BSD: Grants all freedoms to users, including the freedom to take away other people's freedoms.
    • GPL: Grants all freedoms to users, except the freedom to take away other people's freedoms.

    The author is right that the confusion between what the two licenses do is a linguistic problem, but it doesn't have anything to do with the meaning of "code" vs the meaning of "project" -- it just has to do with the definition of freedom, which nobody can agree on.

    Some people think the BSD version is "more free"; others think the GPL version is "more free". But people usually ignore the contested meaning of the word and assume that their preferred meaning is the only one, which leads to them screaming things like "how can you be against more freedom?!".

    Incidentally (and very interestingly), the same debate applies to political ideas of freedom: political libertarians tend to define "freedom" in the BSD sense; political progressives tend to define it in the GPL sense.

  • by mcvos ( 645701 ) on Wednesday July 09, 2008 @06:50AM (#24114357)

    Then don't use it, and deal with it.
    It is also impractical for me to build a Ferrari, I don't steal them.

    Ofcourse you can decide what license your code has. You can make it closed source if you like. But then you can't claim your code is more free, can you? You restrict others with your choices.

    I know you're not talking about closed source but about GPL, but when I read your post, I realised that this exact same argument works for both. BSD grants freedom to people who want to use your code in their project. GPL and Closed source restrict that freedom. Closed source does it to keep freedom only to the original creator of the code, and GPL restricts freedom of derivative projects (to a much lesser degree, obviously) in order to ensure freedom for everybody else.

    But either way, your "deal with it" means that derivative projects have to deal with a limited freedom.

  • by Anonymous Coward on Wednesday July 09, 2008 @07:00AM (#24114427)

    Way to generalise. You may see the value of BSD-style lisences, but that's an exception, not the norm.

    I prefer BSD, but I can see why others would prefer the GPL, even though personally I dislike it. I won't speak for anyone else, and I won't imply that I'm the norm. I also won't spout that "it's not us, it's them" bullshit you just did.

    The problem isn't philosophical or linguistic, it's that people in either camp have their heads too far up their own asses. Really, who gives two shits if someone else doesn't like your favoured lisence, really? People like to bicker over inane things. You like GPL, use GPL, just don't preach at me. I like BSSD, I'll use that, and I don't really give two shits if people think it's immoral, and I care even less if people use another lisence.

    The hilarious thing is that this article is going to result in nothing more than another BSD vs. GPL flamewar, and people either completely missed the point, or have played right into the troll's hands.

    It's a copyright lisence, not a bloody religion. Really, who cares if people have different opinions, or if one's definition of "free" differs from another's? It's pointless chest pounding, it's childish, it's petty, and it's a waste of time. Do your thing, let others do theirs. It makes you feel smug and moraly superior, more power to you, just don't force it on others.

  • by KenRH ( 265139 ) on Wednesday July 09, 2008 @07:12AM (#24114487)

    Of cource the customer desides the license for the code they pay you to write!

    But the discussione might go like this:
    I can do this in 200 hours using this and this libary but the result must be under the GPL (if you ever need to redistribute it)
    or I can spend 300 aditonal hours reimplementing this GPL-libary
    or you can buy this similiar libary from company X for Y$(probaly cheaper than reimplementing, but the we will have to rely on company X for bugfixes)

  • by iangoldby ( 552781 ) on Wednesday July 09, 2008 @07:42AM (#24114647) Homepage

    Why was this modded +5 Insightful?

    You don't have to read the article very carefully to realise that this is exactly the misunderstanding the author is trying to fight.

    Code != Project

    If you don't get this then you'll never have the necessary understanding to engage with advocates of the BSD license in any meaningful way. You can't argue meaningfully against something that you don't understand.

    And this is precisely why it has a great deal to do with linguistics.

  • by smittyoneeach ( 243267 ) * on Wednesday July 09, 2008 @07:47AM (#24114683) Homepage Journal
    Some code for the mind, some for the heart, and some for the wallet.
    BSD licensing is predominantly for the mind: sheer pursuit of technical excellence, don't bore me with politics and philosopy.
    GPL licensing is for the heart, for abstractions that may not play well in the head of another. Technical excellence is fine, but societal "improvement" is the driver.
    Proprietary is for the wallet. And let's not kid ourselves: something as tedious as getting the printer driver to work right is something I would need to be paid large frogskins to get excited about. Glad someone else beat their head against those details.

    The challenge is to relax and admit that there is not a single motive that models "Why folks do code".
    While respecting RMS, I can't reach the religious level of devotion to an idea like the GPL without a fully-worked philosophical system showing how he arrives at proprietary software being "unethical". Un-bright, perhaps.
    I use software from all three major flavors of license, and they all have their time and place.
  • Re:BSD problems (Score:5, Insightful)

    by Just Some Guy ( 3352 ) <kirk+slashdot@strauser.com> on Wednesday July 09, 2008 @08:18AM (#24114937) Homepage Journal

    The problem with BSD is that they can get away with it.

    That's a perfect example of what the article is talking about. You see it as a problem, but BSD advocates see it as the system working as designed. Microsoft isn't "getting away" with anything - they're accepting an offered gift and using it like the givers hoped they would.

    I personally use the GPL (and even v3 these days) for most of my non-trivial projects, but I can sure appreciate the mindset behind BSD.

  • by Just Some Guy ( 3352 ) <kirk+slashdot@strauser.com> on Wednesday July 09, 2008 @08:29AM (#24115075) Homepage Journal

    That is the situation where GPL leads us to. Inability for small companies to profit from mplayer code means that only large companies like Microsoft or Apple will be able to sell closed source video players.

    Cry me a freakin' river. Your problem is that you're lazy and want someone to hand you a market.

    Here's a novel concept: find something and make a plan to get people to want it. When every TV had rabbit ears, someone figured out how to get people to pay to watch it. When water was free, someone found a way to sell it. The difference between those people and you is that they got off their butts and made it happen. They didn't sit at home whining that someone else was already giving something away.

    Can't compete with free? That's your problem. Either give people a reason to pay you anyway, or move on to a market that's not already wrapped up. I hear kids are buying video games these days. Could you do something like that, or would that be too much work for you?

  • To your picture analogy, the BSD license is more like your signature in the bottom right hand corner, and you tell the person you gave the picture to that they can't crop it out, but if they want to use it in a collage and sell it, it's fine with you, so long as your signature stays on it.

    The problem with the frame portion of the analogy is that "changing the frame" doesn't substantively change the character of the work, but using code from a BSD project often (usually?) does.

  • Re:bollocks ... (Score:2, Insightful)

    by Trix ( 5592 ) on Wednesday July 09, 2008 @09:58AM (#24116567) Homepage

    Complete bollocks. Is the freedom to modify code not the entire point of GPL licenced software?

    I agree with the OP that GPL is about "the code."

    Under GPL: "I'll share my code with you, but if you make improvements, you have to share with me because it's my code."

    Under BSD: "I'll share my code with you. If you make improvements, you can share them with me. If you don't share, I'll just go back to the lab and make mine better."

  • by Hatta ( 162192 ) on Wednesday July 09, 2008 @10:12AM (#24116819) Journal

    The only freedom the GPL (of any version) restricts, is the ability to remove the freedoms of others.

    It's really that simple. It may seem at first that it's restrictive because you can't distribute binary copies, etc.,etc. But that's just guaranteeing my freedom to inspect and modify the program. If I get a binary copy of a BSD program, even if I'm technically allowed to do anything I want to it, my actual freedom is limited because I don't have the source code. This is far less free than the situation with the GPL.

  • by sneezinglion ( 771733 ) on Wednesday July 09, 2008 @10:32AM (#24117295)

    IF we had free drivers for printers, the market would support the printers that adhered to the standard for printers the best.

    I understand what you mean, but the reason writing an OSS printer driver is hard is not because it is inherently hard, but because they can hide the inner working of the printer behind a closed source driver.

  • by mgiuca ( 1040724 ) on Wednesday July 09, 2008 @10:37AM (#24117381)

    The problem with the "total altruism" of BSD ("makes all software better") is that it doesn't actually serve the greater good in the long run.

    If you release your code under BSD, and a big company uses it in their proprietary software, then in your altruistic view you've made one piece of software better. (And let's ignore the ideology of whether it's proprietary or not).

    If you release your code under GPL, and the big company uses it, and return their changes back to your code, now the original source is much better and everyone in the community can benefit from it. Derived works are better for it.

    Hence the GPL option has a greater overall benefit to software. This has been shown time and time again.

  • Straw Man (Score:3, Insightful)

    by Bob9113 ( 14996 ) on Wednesday July 09, 2008 @10:46AM (#24117613) Homepage

    Isn't it nice to have the power to define your enemy? Given a sufficiently inaccurate definition, anyone can be reviled. It's called "Straw Man."

    Where I would scoff at a piece of code, call it utter garbage, and rewrite the damn thing from scratch, a GPL advocate would probably wrap the garbage in another API that he finds more palatable.

    Wow, kicking the article off with an unsupported ad hominem attack. You're really not seeking common ground here, are you?

    I'm not going to analyze the whole piece, because this emotional little rant doesn't warrant it. But the ending is just as illuminating:

    I will never agree with your philosophy, but at least you'll know you were understood.

    "I will never agree with your philosophy" is the sure sign of a zealot. "At least you'll know you were understood" implies that blame for the vitriol between the contemptable jihadists on both sides can be layed entirely at the feet of your enemy.

    This is not a religious war except for those who make it one. Don't frame your argument against the least rational or most distasteful (to you) of your enemy's positions. Seek the most rational, most appealing, positions and try to agree with them first. Then frame a discussion around why a rationally self-interested individual would choose each proposition. It will make a more interesting article, not add to the stick-throwing and name-calling, and as a result you will look less like Bill O'Reilly and more like Socrates.

    All that said, the fact that you made an attempt at all and were willing to put it out there to be scrutinized at all is commendable.

  • by Just Some Guy ( 3352 ) <kirk+slashdot@strauser.com> on Wednesday July 09, 2008 @02:22PM (#24121209) Homepage Journal

    If the viral GPL gains sufficient foothold, than there will be NO part of the market that is not considered a commodity, and there will be no place for the vast majority of programmers to make any money, and software will die.

    That's ignorant. Something like 95% of programmers are employed to write in-house software for their companies to use, and those jobs are perfectly safe from "the viral GPL". The only people who would stand to lose are the ones writing commodity software in the first place.

"More software projects have gone awry for lack of calendar time than for all other causes combined." -- Fred Brooks, Jr., _The Mythical Man Month_

Working...