Slashdot Mirror


The Cathedral In The Bazaar?

replicant_deckard writes "This opinion piece I wrote to Open explains how dual licensing (simultaneous use of both GPL and proprietary license) works. Dual licensing gives you basically both the support of the community and a profitable Microsoft-like business model. Seems that this model used by MySQL and TrollTech is getting more popular. Now my question is where are the limits?"

11 of 187 comments (clear)

  1. This works great by ArsonSmith · · Score: 5, Insightful

    This is a great way for software to develop.

    It allows companies to sell closed source versions of software that they develop and it also allows the community to develop changes. If the community gets large enough it may even out pace the starting company, or if there isn't much community than the company will just get all the nice security patches that open source is so good for.

    --
    Paying taxes to buy civilization is like paying a hooker to buy love.
    1. Re:This works great by MoThugz · · Score: 5, Informative

      It's not all roses and no thorns you know... Even with a 100% GPL/Open Source product, conflicts can exist between developers/community members that can code. Most of the time, this will result in forks of a project (eg. PHP-Nuke and PostNuke).

      Now imagine a situation when one of the developers for a dual-license software who contributes actively to the product refuses to allow commercial use for his contribution. This can cause havoc to the dev process because the status of the commercial aspect of the software is now questionable.

      If the particular procedure/call/parsing/whatever is rewritable by the other developers then the problem would be minimal. But what if that particular lines of code is an essential part of the end product itself, and that it is just (near) impossible to write a more efficient replacement code?

      You will hear cries of "Fork! Fork! Fork!" in the background baying for blood (or code in this sense). Consider that...

  2. Perhaps... by lgordon · · Score: 5, Informative

    The author should have researched his "piece" before he had it "published." After reading the article, I found a lot of overview with nothing to say. What? MySQL has both an open source and commerical license? What are the differences? Well, maybe it's on page 2.

  3. Isn't the limits pretty obvious? by GauteL · · Score: 5, Insightful

    It only works for software that is a platform for other software, which quite frankly is not the majority of software out there.

    For this to be sustainable, you need lots of other companies that like your platform but wants to create proprietary software. This also means that the Free Software Foundation might not like it too much, but that is probably something absolutely everyone cares about.

  4. What about Apple's strategy? by goon+america · · Score: 5, Interesting
    What about companies that offer a proprietary frontend for a open source backend, like Apple does with OS X? Couldn't that be considered a kind of dual licensing?

    IMO, this is OK because with Aqua (the user front end for OS X) Apple is really selling the user experience, not just a powerful tool. It's still software but the goal is different. I think of Warcraft 3: they are really selling the experience; the artwork should be proprietary, while the engine that runs it should be open. That's just what I've been thinking recently.

  5. I think this is great by leereyno · · Score: 5, Insightful

    I think this is a great idea because you get the best of both worlds. You're able to sell your code to people who want to use it in closed source products AND if it is any good it gets used in open source products. The more it gets used in open source projects, the more companies there will be who come knocking at your door wanting to license it from you.

    One of the main values of open source is that it provides a viable alternative to closed source solutions. You don't get stuck with whatever Microsoft or Oracle or Sun wants you to have. It also allows solutions to be custom tailored to fit a particular problem or situation. The downside to it is that it is often difficult at best to actually make money creating open source products. The people who make money are the ones who USE the products to achieve a result that would be expensive or impossible using closed source solutions. IN other words it is the customers of open source vendors who reap the biggest profits from open source.

    When open source vendors dual license their products we all win. The vendors win, the open source community wins, and the companies that want to license it for closed-source work win. Everyone gets what they want and that is not a bad scenario at all.

    Lee

    --
    Muslim community leaders warn of backlash from tomorrow morning's terrorist attack.
  6. Re:How does this work? by DeepRedux · · Score: 5, Insightful
    A copyright owner can release code under any number of different licenses. Releasing code under the GPL does not prevent the owner from also releasing it under a proprietary license. Only the copyright owner can relicense a code; you cannot relicense a GPL code that you have only downloaded. The owner generally has to make sure that they get a proper copyright transfer to assume ownership of any contributed code.

    The dual licensing model only works, as a business, when there are customers who will pay to avoid the "viral" features of the GPL. If everyone was happy to use the GPL, there would be no business in dual licensing.

  7. Re:How does this work? by frohike · · Score: 5, Informative

    So how does this actually work, legally speaking? I thought the GPL prevented code from changing licenses after being released under the GPL.

    This is a common misconception about the GPL (and about copyright law in general) which we had to deal with when we were talking with some Sega folks a long time ago regarding KallistiOS.

    We first published it under the GPL, which they believed meant that it could never be used in anything except GPL'd software, ever. The very next version we released an updated code base under a "new BSD" license. Everyone was scratching their heads... "How can you do that since you already released it under the GPL? I thought that was it?" The answer is that we still owned 100% of the copyrights in the code base, and we voluntarily issued a new version under the terms of the BSD license. The older version, of course, could still be used under the terms of the GPL since we already licensed it to the public.

    Basically when you own the copyrights for something, you can do whatever you want to do with new versions (or the old versions, depending on how you licensed it to begin with). You can republish the same exact piece under a different license, or you can even pull back in all your new codebase and make it proprietary. The key thing is, has anyone else contributed a copyright to the work that would make it a joint copyright situation? In that case, you'd also need the permission of that contributor to make that and any future license changes.

    Thus we get back to where most Free Software folks understand the situation: e.g., in the Linux kernel, there are about a billion different copyrights on it. Linus, or any one contributor, could never change the license on the kernel. They'd need the permission of every contributor to the kernel, or they'd need to get them to sign over all their copyrights. So once people start contributing to your project, under their own copyright, you can't change the license anymore. You could always rip out their code and publish your own version with a new license, of course, assuming you could distinguish who wrote what code with 100% certainty.

    That's why the article's author went on a long spiel about MySQL vs Linux: MySQL retained 100% of their copyrights, so they can dual license their code base or do whatever they want with it; Linux can not be relicensed that way. If someone contributes code to MySQL AB, I'm assuming they force you to sign over the copyrights before they'll include it in their internal code base. Linus doesn't. This is also, incidentally, one of the major strengths of Linux-style Free Software -- it's de facto free forever, because one company can never make the future official versions of the project proprietary.

    Take all that with a grain of salt, standard CYA/IANAL applies, but I've been studying this crapola for a while on my own :)

  8. My company would love to do this... by ChangeOnInstall · · Score: 5, Interesting

    My company has two software products (libraries for developers). One is under an open-source license and the other is under a proprietary license. They are designed to work together, with the properietary one providing more business oriented features to complement the open-source one. Licensing of the proprietary product also funds internal development of the open-source tool.

    It would be advantagous to GPL the second product, in addition to licensing it commercially. This would allow people who want use it for open-source or otherwise noncommercial projects to use it free of charge. This is a good thing, as it provides a greater user base for the product and provides marketing and testing.

    My only concern with doing this is the issue of piracy. Some people/companies simply wouldn't pay $1000 for a single-server license of a product when they can simply download it and use it for free (albeit illegally). I don't have any interest in fighting piracy in cases where the product would not otherwise have been purchased in the first place, but I am somewhat concerned that smaller companies using the software on smaller projects would simply elect to believe that they are in the right using the GPL version in a commercial capacity. Obviously it would be made very clear that use of a GPL library in a commercial offering is prohibited by the GPL.

    Being a corporation, a core motive is to generate a good profit, so the primary factor in this decision is which licensing policy will provide the greatest profit. I couldn't care less if the GPL/proprietary model generates twice the piracy of the proprietary-only model in the event that it also generates twice the profit.

    The question on my mind is: "How many sales would I lose to people using the non-commercial version for commercial purposes?"

    --
    What has *science* done?!? -- Dr. Weird (ATHF)
  9. Re:How does this work? by _|()|\| · · Score: 5, Interesting
    So how does this actually work, legally speaking?

    It is very common for software to be licensed under different terms. For example, one person may get an unlimited, perpetual license to use Oracle, wherease someone else may get a ten-user, one-year license. Same code, different licenses.

    Similarly, one person may get a paid license for Aladdin GhostScript, someone else may get it under the AFPL, and someone else may wait a year and get it under the GNU GPL. The code may be identical, but the license defines what you're allowed to do with it.

    It may be depressing to realize that you've paid thousands of dollars for something as intangible as a license, but sometimes it's called for. Opera Software, for example, doesn't want to release their browser under the GPL, so they've paid TrollTech for the right to link to Qt without distributing source.

    Someone who pursues a strategy like this runs the risk that someone else will develop an improvement, without assigning copyright (i.e., create a fork). If the improvement is compelling, it can cut into the demand for the proprietary version.

    This opens up some other interesting scenarios. For example, someone forks Qt from the GPL source. It would not be legal for Opera to link to that version without permission from TrollTech and the owner(s) of the fork.

  10. Misconception of CatB by LunaticLeo · · Score: 5, Insightful

    I am a bit annoyed by the constant mis-reading of the Cathedral and the Bazzar. ESR was originally exploring why the Linux kernel (aka the "Bazzar") progressed so fast without any published plan, nor an explicit patch inclusion process, and chaotically open mailing list. This was compared with FSF projects like gcc (aka. the "Cathedral"). Who had explict project goals and schedules, an elite group of patch committers, and a closed mailing list.

    CatB is not about Open vs. Commercial (usually closed). I do grant that Commercial is nearly always closed "Cathedral"-like development. But not always. The programming language Rexx was developed in IBM in a process like the "Bazzar". This worked because IBM mainframe community was pretty big and had good communications.

    So MySQL having GPL and Proprietary licencesing policies, does not make it both Cathedral and Bazzar. It has nearly always been Bazzar-like (though clearly they had fixed committers and some planning about features).

    Sheesh!

    --
    -- I am not a fanatic, I am a true believer.