Giving and Taking

markster December 25th, 2007

First of all, I’d like to wish everyone a Merry Christmas (well at least to those who celebrate it and/or appreciate the sentiment)! It’s a day when many people, myself included, put an especially significant thought into giving. What many people do during Christmas is give gifts (perhaps in recognition the gift that many Christians celebrate receiving 2000+ years ago).

In the early days of Asterisk, when I went to conferences and sat on stage with folks from Cisco and Avaya and other big telecom vendors, they tended to look at Digium like a charity, and Asterisk as purely a gift. However, it’s important to note that while in some sense, Asterisk is a gift, it is also a gift that has some special meaning and responsibilities associated with it (perhaps more like an engagement ring). In particular, Asterisk is licensed under GPL, which allows a wide variety of free use, but also requires that distribution be done in a similarly gift-like method.

Occasionally, however, I have heard people complain that the Digium GPL license is somehow not a real GPL license, since Digium also offers Asterisk under a commercial license.

This no more makes Asterisk “less GPL” than it makes a gift less valuable just because it’s given to someone else as well. There is nothing about dual licensing that in anyway takes away from what is given under GPL. Furthermore, if the concern is that people can create commercial derivative works without releasing the code of their changes, do those same people who complain also object to the GNU C Library which is released under LGPL? Do they also complain about the Apache web server, which is released under an even less restrictive license? X-Windows? Almost all of BSD? All these systems allow commercial exploitation. The dual licensing model that Digium has chosen introduces an explicit monetary cost to choosing the proprietary route, thus providing greater direct incentive to people to choose to open their changes, and further allowing people who do not choose to open their changes to subsidize the work that Digium does with Asterisk by allowing us to add more open source resources (think Green Energy Credits here). In fact, our staff of open source dedicated programmers has more than doubled in 2007 alone!

The only people with a real reason to be upset feel that way because they cannot choose the proprietary route without paying a fee. In other words, it gets in the way of their desire to make money through proprietary add-ons without having to share in the cost of development of the underlying technology.

I have so many things to be thankful for this Christmas, but among the top of the list is the gift of so many contributers and customers who allow me to continue to give through my work at Digium.

6 Responses to “Giving and Taking”

  1. Raveniion 25 Dec 2007 at 5:35 pm

    Hello All At Digium,
    Thank you for the best X-Mas Gift. Never mind about nay sayers who use Asterisk and grumble that it is not a true GPL. Those are uneducated people and I hope they will learn soon.
    Merry X-Mas and have a Good New Year Break!
    RavenII

  2. [...] Digium is #2 on his list of 10 Open Source companies Set to Dominate 2008. Then, on Christmas Day, Mark posted to Digium’s corporate blog some thoughts on the spirit of giving and how dual-licensing Asterisk does not detract from the freedom of open [...]

  3. Missing the point about dual licenseon 26 Dec 2007 at 2:36 pm

    You are missing the point about dual GPL. Is Asterisk available under the GPL? Yes. You are right on that point. You are open you are good.

    But here is the rub: what if you (a company or coder) make a bunch of great improvements to Asterisk and you want to give those changes to the community-GPLd version of Asterisk? No problem right? Oops, in order to do this, you have to first sigh the Digium commercial Asterisk waiver. Fair? Open? Here is where it gets worse. Let’s say you really want to give your changes back to the GPL version so you grin and bear the commercial waiver (meaning you sign). Well, Digium now has the eternal right to sell that code to anyone, and the buyer (so long as they pay Digium a fee every year) never has to give their own changes back to you or the rest of the open community. This means the buyer can improve your own code, and you won’t have access to it, because they bought under the “commercial Asterisk version” even though *you* made the changes under the GPL and only signed to give them back to the GPL. Open? Fair?

  4. Mark Spenceron 27 Dec 2007 at 4:32 am

    I think that more than likely you are mistaken about who is missing the point, or in the alternative, you simply fall into the latter category of people who are annoyed that they cannot commercially leverage Asterisk in a non-GPL complaint way without having to pay a fee.

    I have no interest in getting into a deep debate on licensing, but in case your response was genuine in its concern, I will attempt at least once to directly address the folly of your argument.

    You start with an implication that the license agreement we require, in order to accept contributions in the Asterisk product, is somehow different from what most open source projects do. In reality, if you had made contributions to essentially any project owned by the Free Software Foundation (the FSF is the owner of the GCC compiler suite, the GNU C Library, and a wide swath of other free software), you would have known that they require copyright assignment, not even just a license, for them to accept such a change because recognizing and demonstrating the ownership and heritage of the code, regardless of the license being offered is imperative. If you read the Apache 2.0 license, you’d find that a similar clause is actually codified into the license itself under section 5. This kind of intellectual property control is just good practice, and I think you’ll find that those who actually are involved in defending Free and Open Source Software will generally support that position — something you would likely have run into had you contributed to large open source projects before.

    Finally, again, all your concerns about the dual licensing model in terms of having to give back versus not applies just as easily to other licenses such as BSD, Apache and LGPL, which not only permit proprietary use, but do not (through the application of a fee) encourage use as open source, nor do they support (through the funding of other full time developers) the advancement of the open source product. The reality of the situation “on the ground” is that in order to provide technologies like G.729, Lumenvox, and others, there must be a way to include proprietary technologies into Asterisk — We’ve just tried to do so in the way which benefits the open source community at large in the best possible way.

    And with that, I invite you to apply your energy to actually participate in the open source development process in Asterisk. I invite you to do your part to try to make the product better, and if you are not a C developer, I encourage you to make contribution through documentation, html improvements to the Asterisk GUI, bug marshalling, or even answering peoples technical questions on the mailing lists, especially those newcomers who need a helping hand getting started. Best of luck.

  5. Clever, but not correct.on 27 Dec 2007 at 12:04 pm

    Clever analogy, but you are clearly aware of the differences in your analogy of Asterisk and some of the other truly open projects you named (such as Apache) that do not have a lurking commercial license. Sure, many other truly open projects have “copyright assignment”. This is a good thing. This clause is built for one reason: to keep the community protected from liability (in case somebody sues a project, you need 51% of the copyright holders “represented”.) But “copyright assignment” and “commercial assignment” are vastly different. Digium does the second in the name of the first. This is a slight of hand trick, by which you hope your community is not smart enough to notice. But, they have noticed…in droves. This is why you see so many forks of Asterisk these days.

    Let me explain it again, so that your wordy analogy does not confuse people seeking the truth about this topic:

    With Asterisk, if folks want to get their code into the GPL version, yes, the free GPL version, they have to sign a waiver (let’s call it a “commercial assignment waiver”) allowing Digium to own that code and further allowing Digium to be able to sell that code to anyone under a separate commercial license of Asterisk. This in itself, while not in the spirit of open, is not the worst of it. Here is what happens next: this “commercial assignment” also allows the company that buys the commercial Asterisk (including your changes) the ability to improve Asterisk, and never give those improvements back to the community or the GPL version (so long as they continue to pay Digium royalties every year). So, to be clear, Digium gets a yearly royalty, the original author doesn’t get his/her improved code, the community suffers, and the GPL version of Asterisk doesn’t get any improvements. Open?

    This is not in the spirit of the FSF or the GNU. And you should know very well that Apache’s 2.0 license is very different from this. Reader’s should Google “Apache 2.0 License” and spend 2 minutes reading it for proof. See any lurking commercial license? Nope. You don’t see this in most truly open projects. Sure, there are a couple of other for-profit projects that have lurking commercial licenses. But the vast majority of the ones you like to references are truly open, and not akin to Digium.

    Finally, as for your supposition that I, or other members of the community, do not contribute. I do and we do. But, like many of us, we have moved on to other forks that do not have hidden commercial licensing schemes. If you want to be commercial, that’s fine. But don’t hide from it, use verbose/evasive answers, or compare it to dissimilar projects. Just look people in the eye and tell them you do it for profit and understand other folks who work for profit equally. It is Digium’s double talk (others are bad, we are good) that creates this problem for you in the first place.

  6. Tristan Rhodeson 28 Jan 2008 at 5:00 pm

    Anonymous,

    I think you should read a little more about how dual-licensing works. I have just written a blog about this very topic.

    http://useopensource.blogspot.com/2008/01/dual-license-model-future-of-open.html

    I will quote two paragraphs from that post:

    The guiding principle behind dual licensing is “quid pro quo,” or a fair exchange. Under this model, vendors offer their products under both an open source license and a commercial license. This allows open source projects to use the software at no cost, which contributes to widespread use and testing of the software and the fast growth of a large installed user base. Companies redistributing the software as part of commercial products can also get the benefits of the open source software by purchasing a commercial license, which releases them from requirements to publish their source code. Commercially-licensed customers generate revenue for the open source vendors, which contributes to the rapid development of high-quality software.

    You may be pleased to hear that open source legend Eben Moglen has spoken kindly of dual licensing business models.

    “Dual-license products give customers who redistribute a choice in license terms,” said Eben Moglen, professor of law at the Columbia University Law School and recognized as one of the world’s leading experts on copyright law as applied to software. “Proprietary commercial licenses can offer customers fewer restrictions on inclusion in closed source products and enable open source software developers to grow strong businesses. This model is a win for the free software movement too, as it ensures that dual-licensed software products will be developed and supported by viable companies, and also remain available for free copying, modification and redistribution for the long-term.”

    Let us know if you have any more questions or concerns with the dual license model. I am a supporter of it, because I believe this model provides the most resources to the open source movement.

    Tristan Rhodes

Trackback URI | Comments RSS

Leave a Reply