Slashdot Log In
The Cathedral In The Bazaar?
Posted by
timothy
on Fri Jan 10, 2003 05:42 PM
from the your-code-your-decision dept.
from the your-code-your-decision dept.
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?"
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
The limits... (Score:4, Interesting)
Re:The limits... (Score:3, Informative)
Re:The limits... (Score:4, Insightful)
Although the article is a bit (very) thin, it makes the important point that it is possible to do both (although it doesn't mention the NuSphere problems).
A point that may be relevant though, is that these were mature products which went GPL, i.e. they protected their IP until they had a sufficiently large user base.
Parent
With all due respect (Score:3, Interesting)
A) A write-up done by someone boasting about their latest article, experiment, or "product",
or
B) A write-up done by one of the editors that sounds sneakily like an inside-job advertisement done to line the wallets of VA, OSDN, Slashdot, or whoever the hell owns this site these days
Just an honest question -- don't mean to offend anyone.
Re:With all due respect (how to un-shockwave ad) (Score:3, Informative)
So to anyone else that wants to read the article (and you have shockwave, etc), please turn off the animation before you give yourself a headache ;-)
--gal [slashdot.org]
Re:Addendum (Score:4, Insightful)
Your question is pretty subjective. "Stuff that matters" to me might not matter to you.
I read newspapers and their
--K.
Parent
Now my question is where are the limits? (Score:3, Funny)
I swear, you'd lose your head if it wasn't attached at the shoulders.
They were on the desk next to the PC yesterday. (Score:3, Insightful)
This works great (Score:5, Insightful)
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.
Re:This works great (Score:5, Informative)
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...
Parent
Re:This works great (Score:3, Informative)
Certainly you can't release a piece of code under the GPL, allow an active user community to invest a lot of work improving it under the assumption that it is always going to be GPL'd, then take the result commercial. Without copyright assignments in place, you'd be liable for infringement.
Re:This works great (Score:4, Interesting)
Not only is this copyright infringement against me, it's also a violation of the GPL under which my patch is licenced.
Explain this to me again.
I thought that if a project was dual licenced in such a way, that in order for the proprietary licence to continue to be applicable, the company has to keep the codebase they sell completely pure, and free of GPL submitted patches.
Parent
Re:This works great (Score:3, Informative)
The same thing happens with GPL/Commercial projects. The company won't accept your submission unless you give them the right to dual license it.
If you're working on a project that has more than three developers, formal copyright assignments is Good Practice.
Software developed by trolls? (Score:4, Funny)
Re:Software developed by trolls? (Score:3, Funny)
Working for Apple (Score:3, Interesting)
Re:Working for Apple (Score:4, Informative)
You provide an example, but this one is completely incorrect. We (the KHTML developers) were quite pleasently suprised by Apple's usage of khtml, and welcomed it completely. If we didn't want it to happen, we would have licensed it under very restrictive licenses. However, we beleive in the spirit of free software, and the idea that companies that have made millions of dollars of profits from proprietary software can be benefitted from open sourced software. Apple's contributions to khtml not only helped themselves, but are valuable to kde itself.
- mz
Parent
Re:Working for Apple (Score:3, Insightful)
Here you have what's obviously a good lot of html code (I'm no coder, so I don't know the exact level to which the kde stuff is used) which has become good enough to attract the attention of Apple, a large developer. They've jumped in, are using the code (as they and anyone else are free to do) and made changes to it to suit their needs, and fixed bugs. They've put it back into the pool of open code, and anyone ELSE is now free to do the same as them, just starting from a base that's not only improved by having more hands working on it, but has had a stunning level of free marketing. A mindshare increase, code improvements, and more widespread use. To me that's the whole point - the good stuff survives and is made better.
Perhaps... (Score:5, Informative)
Isn't the limits pretty obvious? (Score:5, Insightful)
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.
Re:Isn't the limits pretty obvious? (Score:2)
What about Apple's strategy? (Score:5, Interesting)
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.
Re:What about Apple's strategy? (Score:4, Funny)
but then again, MacOS X is about like a video game anyway
Parent
the Application Kit (Score:4, Interesting)
Say the way the Cocoa Application kit works. All of the code is closed source, but any developer can use the objects in the application kit or write their own objects to replace ones that Apple wrote.
In principle any Cocoa application's objects can be accessed by any other app.... in essance every Cocoa app is a mini Application kit without the documentation.
This might be a way to open up your program for other developers to enhance and use in their own apps without giving away any of your source. This would work especially well with the free as in beer programs. (hey kids, download my super enhanced iPhoto that enhances the free iPhoto that you already have)
Apple could open up the objects in the iApps for third party developers and get many of the benefits they would get from open sourcing the apps without having to worry about someone porting the apps to a competing platform. Such a strategy could work well for other harware vendors like Sun or IBM.
yeah there are problems with this, but this might be a new middle-ground between open and closed source.
of course, a big problem is what if apple takes away the free app that the code you wrote depends on... maybe if that happens the developers that use the code that got yanked could get together and write an open source repcement (like Gnustep)
Parent
Not to sound negative, but... (Score:3, Insightful)
I've been working on an open-source GIS project for several years and have sold a few copies. I'd love to be able to support myself and a few employees in our venture, and until that happens, I'll just keep working on it, like a prospector searching for a vein of gold.
Personal Strap-On Aircraft for Auction on eBay [xnewswire.com]
Free to Contributers (Score:2, Interesting)
I think this is great (Score:5, Insightful)
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
Re:I think this is great (Score:2)
BTW I say this as someone who is for GPL and don't even use any of the BSD's.
Inferno Possibly to be Dual Licensed (Score:3, Informative)
Vita Nuova [vitanuova.com] say in their most recent newsletter [vitanuova.com] that they are considering "a dual-licence scheme that makes the Inferno [vitanuova.com] software free for non-commercial use, but with a more traditional software licence for commercial use."
A quick glance at the features [vitanuova.com] of the upcoming release reveals some clarification [vitanuova.com] on this:
Inferno is the very interesting cousin OS to Plan 9 [bell-labs.com] (both modern descendants of UNIX). This would be a very cool thing.
How does this work? (Score:4, Interesting)
I understand that there are original copyright holders who are different from the GPL itself, and those copyright holders retain many rights. But I though once the code was out under GPL that was pretty much it.
Is it just where you get the code? Same source, but a different text file to read and click "ok" on? So someone agrees to a different license in exchange for something else (better support, in Mandrakes case). Whereas if you got the source under GPL the copyright owner can't retro-actively change your righs to something else? But you can voluntarely agree to a different license?
That's the only way I can figure this would work. IA like way NAL, so I can't figure this out. Does anyone know for sure?
Re:How does this work? (Score:3, Informative)
This wouldn't work for Mandrake because a) they don't own the copyright on 99% of the sofware they distribute and b) most of the libraries are LGPL, not GPL, so users can write proprietary software with them anyway.
Re:How does this work? (Score:4, Insightful)
Lee
Parent
Re:How does this work? (Score:5, Insightful)
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.
Parent
Re:How does this work? (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 [allusion.net].
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 :)
Parent
Re:How does this work? (Score:5, Interesting)
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.
Parent
It still exists? (Score:2)
Apparently it still exists in some form. I'll tell you this -- only the open-source movement could create an online magazine that's too difficult to read. In Mozilla, I swear I couldn't figure out how to read anything in the magazine or about it.
Fortunately, the submitter was kind enough to link it directly. MySql and TrollTech still exist, huh? Boy, with news like that I should bookmark that site, and eventually figure out how to read it.
The limits? Depends on the business community (Score:2, Interesting)
Assume that I had a lot of these installations, and the businesses grow and become 7x24 businesses via the Internet, etc. At that point it makes sense for the businesses themselves to buy support so that if I am not available for any reason and they start throwing database errors, etc., they can get the type of support they need.
Now then, multiply the fact that I am one small consultancy business owner by a large number of similar consultants across the company and around the world (if there are any that use mySQL in a similar manner). Taking it to the extreme, assume that we so good that suddenly mySQL becomes the predominant DBMS platform for all businesses with less thatn 100 employees...(I don't think that that this is realistically going to happen by the way)
So how big are the limits to servicing Open Source software? As big as the business and professional market grows it to be.
Cathedral in the Bazaar (Score:2, Insightful)
The catch (Score:3, Insightful)
So you need to keep the outside developers sufficiently happy that this won't happen. MySQL seems to have managed it. And various others. But you better have a large working product before you start. Some people have taken some BSD licensed code, polished it, and re-issued it under new license. That can work. It seems, to me, to be a bit unfair to the original coders (unless those are the people doing the relicensing), but it perfectly legit under the license, and the BSD folk say they don't mind.
For games? (Score:3, Interesting)
Here's where I get stuck though: how do I make a 'nix game without making it entirely open source, if I want to make a profit but not have to write a million GPL modules or pay large licensing fees? I was thinking that one could: Write the entire engine source available. Make the game art, meshes, maybe even the config files copyrighted. I'm not sure if this would conflict.
If it worked, you've got a fully workable game that people aren't allowed to copy (due to copyright on the artwork, etc). Since the game itself is open source, and only the characters etc are copyrighted, is there a GPL conflict? One could write a new game on the engine, or run the game with custom graphics (isn't the the current context of people using old doom/quake/etc engines).
The only problem I would think of is: you probably have to make the engine easily acquried, and have the art addons entirely seperate on a sale disk - or can everything that can be o/s available on the same disk, and have it as a product with documentation outlining what belongs to whom, and what is actually being paid for.
Code wants to be free... but talent and hard work work hopefully earn some money still, or 'nix-first games will still be a whiff of smoke in the future.
Re:For games? (Score:3, Informative)
Significant changes (Score:3, Insightful)
The problem, as I see it, is what happens when someone in the open source community contributes a significant module of code, rather than a small patch.
They've written a piece of code, probably in a separate source file, put the GPL comment at the top and sent it to you. Surely they, by law, automatically own the copyright for this code, and they've released it under the GPL.
So what right do you have to then go releasing it under your commercial non-GPL license?
Mixing volunteerism with dual licensing. (Score:3, Interesting)
So I'm going to be selling it, while inviting people to add features. Hmm. I don't think I can expect anyone in the "open source community" to add code to this projct and then let me sell their stuff. Heck, I'd probably have reservations about donating significant amounts of code to someone else's business. How many people would spend hours working on a piece of code, knowing that someone else is going to sell that code and pocket the money... while the volunteer developer gets, at most, some personal satisfaction? Is that "volunteering" or just "exploitation?"
If someone adds an interesting feature to the applicatin, I can see myself paying for the right to add it to the commercial version, but I can also see it being a real pain in the butt to haggle over the price of every contributed feature. Said butt-pain may not be worth the revenue.
Volunteerism is what makes open source strong. If two people get interested in contributing to the GPLed version, that's twice as many people as are contributing to the commercial code base (i.e. me). Eventually, the GPLed version will almost certainly exceed the functionality of the commercial version. So, my revenue would hit zero, and the commercial thing would be a waste of my time and money. But can I have my cake and eat it too? :-)
Two ideas come to mind...
One, open the source with a license other than the GPL. Let people modify it for their own use, but not distribute binaries with their changes. That way the coder community can play with it all they want, while presenting little competition to the commercial version (whose target market doesn't know a compiler from a linker).
Two, hope that what I've created so far is interesting enough that people will play with it and extend it for their own purposes, just because it's fun to play with it and extend it. In exchange for providing this platform to build on, I ask that any additions they choose to distribute be licensed to me for addition to the platform. In other words, hope that what I've created is so much fun to play with that people will pay me to extend it for their purposes, and payment will be in the form of the code to their extensions.
Seems like a long shot, but it's an interesting idea.
(Practically speaking, this whole commercial concept sounds like more trouble than it's worth. I have a day job, I like it, it pays better than this ever will... The best use of my time and energy might just be to open the source, offer guidance to anyone who wants to extend the code, and enjoy the ride. But theoretically speaking, making a little money on the side would be neat, and dual licensing presents some interesting issues.)
Anyone else find the article a tad confusing? (Score:4, Informative)
Does that seem a tad simplistic to anyone else? MySQL AB offers MySQL and that's it. Their money maker is both open and closed, and both free and retail(I suppose the same is true of Trolltech, but I know nothing about it so I won't comment on it). However, with MS the situation is much murkier though the author tries to paint a pretty picture. Sure they offer some stuff for free and a couple of their things are open sourced, but drawing a direct comparison between them and MySQL AB seems...strained to me. The only way such a comparison could be drawn would be if MS offered both open-source and free versions of their OS and/or Office Suites (ie, their money makers). Lumping them in with MySQL AB just because they give away their XML parser or a browser doesn't quite cut it.
Maybe. But I think it's more likely that it shifts the focus to a different kind of pirate. In addition to all the guys grabbing software for free off of Napster, there are the businesses using more licenses for software than they claim and it's this group of pirates that will probably be seen as a problem.
He must mean free as in "with strings attached".
Anyway, while I think open source and free software has its place, I've yet to be convinced that it can be provided unilaterally in all areas (ie provided in such a way that business can maintain the same or greater profit levels as they'd have if the product was closed and/or retail )...however, the author of this article comes just short of claiming this (but I know he was thinking it, dammit!), so I won't criticize him on something he didn't write. However it's only a matter of time before an article gets posted which says this, so I'll keep my flame thrower handy.
My company would love to do this... (Score:5, Interesting)
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?"
Misconception of CatB (Score:5, Insightful)
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!
this model needs more evengelism (Score:3, Interesting)
I've published a few obscure pieces of code under the GPL. Though I never actively tryied to sell commercial licenses, I was approached by one company and was paid several thousand dollars for a commercial license. Not bad for somthing obscure that I never expected to make money on. Imagine what a person could make writing more mainstream GPL'd code. For such things, public release under the GPL is like free advertising.
I recommend that software authors who are interested in trying this with the GPL'd code place prominent notices in their README files and web pages, because some potential customers may not be aware that they can negotiate a non-GPL license from the copyright owner.
depends on the circumstances (Score:3, Insightful)
First of all, you can really only dual-license if there is something to sell. That means dual-licensed open source software needs to have one of the less "business-oriented" open source licenses, like the GPL. But for some software, the GPL just isn't appropriate. For example, for a GUI toolkit, if it is GPL'ed, that limits its adoption.
Also, with dual-licensed software, companies have other considerations in mind than just creating technically the best possible software or the best software for the users. They may want to try to dominate a particular market niche and exclude competition, for example.
I think in the case of Troll Tech, both of these apply. Companies like Sun and IBM have chosen Gnome because they did not want to hand the keys to commercial applications for their desktops to some small company that they have no control over. Furthermore, Troll Tech has a strong incentive to have something like Qt/Embedded take over the entire display--if people could use free or competing toolkits on something like the Sharp Zaurus, it would threaten their revenue stream.
I think dual licensing can make sense in some circumstances, but I think it's risky. If you are considering using dual-licensed software, I think you would do well to look at the license, business, and track record very carefully. Personally, I think for MySQL it works, but for Qt, it doesn't.
Dual licensing works for the Cathedral only (Score:3, Insightful)
But for projects working ex-Cathedra, where external developers provide feedback and perhaps patches but no significant functional extensions, the dual licensing model can work very well indeed.
My company has made open source tools since 1995 or so, and we've now switched from a BSD-style license to a GPL / or commercial license model. Our motivation was (a) guided by Stallman's comments about BSD licenses helping commercial companies at the expense of open-source projects, which we agreed with, and (b) the desire of some customers for some kind of commercial framework.
Since 1995, we've found that there are very few people able and willing to contribute to our software, even though there are thousands happy to use it. Possibly because our tool are somewhat complex internally. So, the dual-license model fits our process perfectly.
Re:Dual licensing is a nasty trap. (Score:3, Interesting)