CDDL Project Leader on the CDDL
SunFan writes "Claire Giordano, Sun's lead on CDDL development, gives the inside story on how the new license was developed. She discusses how people within Sun debated the various licenses, including the GPL, and shows why the GPL, BSD, and MPL licenses were found to come up short in meeting the needs of Sun's broad customer and developer base."
We announced a great $2-billion we-both-respect-IP deal with Microsoft, and the F/OSS guys won't be giving us $2 billion soon.
How do we write a license that keeps Microsoft happy and trys as well as we can to divide and conquor the Linux developer base."
...so lets act like we're open source!
Gee, I didn't hear people complaining when they opened the source to Open Office, their grid control, or any number of other things.
For [ insert deity of choice here ]'s sake, the CDDL IS AN OPEN SOURCE LICENSE. Certified by the OSI no less! "act like". Ppffttt....
Just because it isn't GPL, or BSD doesn't mean it isn't open source or that they're "acting".
People like you are going to get a few million lines of code stuffed in their mouth as revenge when OpenSolaris comes sometime before the end of this quarter.
Open Source is a necessary, but not sufficent, condition. As it is, Solaris is closed tight. No cross-fertilization possible. They might run Gnome, and use the GNU toolchain, but what they "open" is only open to their customers. Its useless to the rest of the world.
You're right and wrong. Wrong because the Open Source Initiative decided it was "Open". It's not "Free" by the Free Software Foundation. GPL is Free Software and Open Source. Using common words, which might not have been applied to source code at the time, has created a lot of confusion. I mean, if programmers and others can get confused, think how confused the PHBs can get.
There's a reason Stallman has been a stickler on correct term usage. Saying just Linux instead of GNU/Linux over-emphasizes Linus Torvalds and the Open Source methodology, while ignoring the Free Software foundation for much of the distros we use. Similarly, using "Intellectual Property" creates confusion among different laws which have their own reasonings behind them.
I don't know if creating more terminology will help. I think if you're always a stickler like Stallman, too many people will ignore you, when they might need to heed your information the most. But we (as an industry or whatever) definitely need to better inform people in our own industry.
There are philosophical, political AND practical reasons for the differences of BSD, GPL, LGPL, etc. It takes less time to inform than it does to argue, but many seem to choose the latter...
In times like these, it is helpful to remember that there have always been times like these. - Paul Harvey
It's not GPL-compatible.
The CDDL would be, because it is a file-based license, but the GPL does not allow it.
The only thing you lose is the patent litigation protection.
You can always purchase an expensive insurance policy from OSRM...or get it for free in OpenSolaris.
That's not really big on freedom.
OSI fully recognizes that Sun is acting quite freely. Your sentiment is extremely GPL-centered.
GPL-compatible
You've used forms of this word at least five times in your post. You do understand that GPL-compatibility is a one-way street and that combining code with GPL code requires that the larger work be released under the GPL, right?
This carries implications that some people are uncomfortable with, and these people are accomodated under the CDDL.
-- Microsoft is the most expensive commodity operating system and office suite vendor in the marketplace.
Well, you're certainly welcome to write your own drivers for something that had to be held back in OpenSolaris due to a 3rd-party's constraints which are external to Sun. Come on, isn't that one of the beloved Linux mantras?
/. posters seem to be missing here is that Sun /did/ look at the GPL... they didn't outright dismiss it. Sun found that they were encumbered by 3rd-party constraints
which the GPL was incompatible with and so they had to short-circuit to the next best thing - the CDDL.
Under the CDDL they would have to be rewritten anyway if we wanted to make our own Solaris distros, because the 3rd party patent deals / licence grants apply only between that party and Sun. About which, more below...
The thing cynical
Is the next best thing the CDDL, or is it the MPL upon which the CDDL was based? Under the MPL (section 3.4), Sun would have had to disclose the extent to which the code was encumbered by third parties. One of the few differences between the CDDL and the MPL is the removal of this clause. The implication of this is that Sun (who already has IP deals with the third party vendors) can use CDDL code in commercial products without any legal worries. But open source developers distributing CDDL cannot, and Sun's modification to the licence means that the encumbered parts of the code cannot be distinguished from the unecumbered parts.
The point of the CDDL seems to be to supply Sun with free development and debugging for code which only it can safely distribute. Lest you think this is me donning my tinfoil hat, please read the relevant Groklaw commentary.
I am not asking Sun to release other people's encumbered code. I just want them to identify (and, for bonus points, encapsulate it) so that it can be replaced with unencumbered code.
Solaris is an awesome technology. You would be - no pun intended - CLOSING yourself off if you think being able to look at and use the Solaris source is irrelevant.
Solaris does have a lot of cool stuff in it. Sadly, learning from some of that stuff could get us into legal trouble. It might be better for people who also do GPL development not to even look at the code.
Vino, gyno, and techno -Bruce Sterling
Sun needed a way to present themselves as going open source without allowing the open source community to get any benefit from this. The CDDL was their tool to do this.
Everything else, any rationalizations for why they engineered their license the way they did, is just PR.
If the GPL wasn't so anal it wouldn't be a problem The problem is with the GPL not everything else.
It's not GPL-compatible.
Yes, the Apache license is also considered incompatible with the GPL, and the Apache webserver is still the dominant webserver. And I never heard RMS rant about that, and demand writing an Apache replacement under the GPL.
PHP is also licensed under an GPL-incompatible license. Still remember the mess with MySQL? When they relicened their client libraries from LGPL to GPL, because they wanted to urge more companies to buy commercial MySQL licenses, they had to issue an "Optional GPL License Exception for PHP". Otherwise they would have been replaced by many sites with competing projects like Postgres available under a more liberal license. Does this mess (and the commercial interest behind it) help free software or the community?
When Sun released OpenOffice under a dual license, some companies like Ximian or Redhat refused to license their changes under both licenses, they released them only under the GPL. So the patches found never their way to openoffice.org and today every distribution patches their own version of OpenOffice. Did this help open source or the community?
These are only a few points to show that the GPL is not the only OSS license. Sun has contributed a lot of code, so they have made probably more experiences with OSS licenses than most other people and companies. Is it really so hard to understand, that they see issues and don't simply hail RMS and the GPL?
The major concerns are being expressed by the Open Source Initiative, spearheaded by Russ Nelson who, on taking office for his short stint as OSI head honcho, immediately started an initiative to review the number of licenses the OSI approves because of the problems they cause.
Personally, I agree with him. You don't get a lot of freedom if you can't use software from one FOSS project with another. The CDDL is a problem because it's representative of the push for yet more "Open Source" licenses when we're in the middle of a major problem with code sharing. Combine it with the APSL, an even worse example, and the "big 3" copylefted Open Source kernels and operating systems - Solaris, Darwin, and GNU (with Linux or HURD) - cannot share a single line of code.
Not a particularly great state of affairs, is it?
You are not alone. This is not normal. None of this is normal.
I wish you guys the best of luck, but I think that given a GPL-incompatible license, you'll have a really hard time building a large developer community.
Because Java has a _tiny_ developer community. There's nobody interested in improving it at all.
My Journal
If you did the same thing as the linux community, you'd ship binary drivers with your kernel, violating the letter and spirit of the GPL.
Exactly! That's why, when you download the latest release of the Linux kernel, it comes with Nvidia's proprietary binary drivers already included.
Oh no hang on, I've just realised you're full of shit.
> Again, at no point does YOUR PRODUCT somehow become GPL code.
True, but the consequences you describe are a direct result of refusing to make the product GPL. You use GPL - you get infected. The cure is either to GPL the entire product or pay a fine and surgically remove all GPL code.
> It just doesn't happen, ever.
Also correct. The GPL is a disease, but an easily avoidable disease - just don't use any GPL code. I don't see why people consider this a problem. The issue is only brought up by the GPL fanatics who want the entire world to be under their precious license. When that happens, there is absolutely no need to argue. If you write the code, you can license it in any way you wish, and when the GPL camp comes begging at your door, all you need to do is say 'no' and leave them to their whining.