% fortune -ae paul murphy

The CDDL example

The original BSD licenses applied well understood academic principles of free academic information exchange to the age of software as understood in the sixties and seventies. They applied, therefore, to the world before today's patent rulings and intellectual property litigation -and Sun's community license can correspondingly be seen as an attempt to evolve those original licensing ideas to fit today's world.

The CDDL license V1.0 has 10 main sections starting with definitions and ending with a commitment to fairly allocate responsibilities "between Initial Developer and the Contributors" if claims against either party should arise.

The terms, by the way, mean pretty much what you'd expect: an initial developer is the first to offer a particular bit of code for license, and contributors are people who help improve it.

As a non lawyer the text looks like a straight forward presentation of a lot of carefully dotted legal i's and crossed t's all of which seem to come down to an agreement among community participants to follow four commandments:

  1. thou shalt not claim another's work
  2. thou shalt not restrict others
  3. thou shalt not sue thy brother in coding
  4. thou shalt accept full responsibility for thine own actions

The first commandment is directly BSD derived: you can use any community code you want to, but make sure you properly credit both the original code developer and any subsequent contributers whose work is included in the stuff you use.

That's the academic tradition: you're expected to stand on the shoulders of giants, and to acknowledge that their contributions make your success possible.

Number two says you can use the other guy's code any way you want, but the other guy gets similar rights with respect to your code.

This has some subtle applications - including the key one that makes this license attractive to developers with significant investments in research, development, and coding because it conveys the right to use community code within proprietary products.

It's also, therefore, where CDDL is most different from the GNU GPL (light or otherwise) because you're not just limited to linking under some conditions, but can actively sell a compiled product incorporating third party, open source, contributions.

The CDDL has created a lot of excitement among commercial developers, but in the longer run I suspect that its greatest single impact will lie in bringing stability to the peripheral hardware and related software side of the industry - because the license allows those involved to design hardware to utilise community code and then fork the evolution of that code to ensure that the product isn't obsoleted by the next third party change to come along.

Number three is the simplest to express: sue a fellow community member over a related patent and any rights granted you under the CDDL disappear - but rights you've already passed on to others under the CDDL continue.

It's also the most important, because Sun put essentially all of its Solaris code base under this license - and thereby gave community members both an accessible infrastructure anchored by the leading commercial Unix and a legal umbrella under which they should be reasonably safe from predatory patent litigation.

Notice that what's important about this isn't that big companies like Motorola can partially shelter some software activities, it's that tiny start-ups can largely postpone the million dollar, often indeterminate, patent searches otherwise needed before the product is first sold.

Number four is the obvious one: this is a community that shares responsibility right along with code. Thus section 10 is headlined "RESPONSIBILITY FOR CLAIMS." and nominally deals only with initial developers and later contributors:

As between Initial Developer and the Contributors, each party is responsible for claims and damages arising, directly or indirectly, out of its utilisation of rights under this License and You agree to work with Initial Developer and Contributors to distribute such responsibility on an equitable basis. Nothing herein is intended or shall be deemed to constitute any admission of liability.

but actually expresses a larger ideal -the same one expressed by the patent umbrella and the rights sharing terms: a commitment to fair dealing in a community of equals.


Paul Murphy wrote and published The Unix Guide to Defenestration. Murphy is a 25-year veteran of the I.T. consulting industry, specializing in Unix and Unix-related management issues.