Recently Sun Microsystems released StarOffice for Linux, Windows, and other platforms, for download with no charge. They promised to release the StarOffice source code under the Sun Community Source License. This essay clears up some mis-reporting and discusses implications of the StarOffice release.
The StarOffice release is definitely good for Linux, but its non-Open-Source nature also raises some concern. Could Sun be building ammunition for its next war? StarOffice may also be an attempt to gain long-term control over the Linux desktop market. By releasing an almost-Open-Source office suite, Sun may be attempting to reduce the demand for an entirely-Open-Source office product. Many people who might otherwise be developers or users of a fully Open Source office suite could decide that StarOffice is "good enough", preventing the development of an Open-Source substitute. This might even siphon resources from other projects that are currently working on fully Open Source office software, such as the commercial ABIWord project. But unlike ABIWord, the SCSL's prohibition on commercial distribution would force Linux distributions to purchase a commercial license and pay royalties to include StarOffice on their CDs. StarOffice otherwise could be downloaded for free only from Sun (except for research use) and only for as long as Sun wishes to continue free downloads. The SCSL would even keep the software off of non-commercial Linux distributions like Debian, a non-profit organization that relies on low-cost third-party commercial distributors to move its software to the masses. However, it's possible that developers could be able to make use of the StarOffice specifications, which Sun promises to publish, to develop compatible, 100% Open Source products. Whether or not this is possible awaits knowledge of the technical details of those specifications (whether they document core functions and file formats or only that information necessary to build plug-ins) and their licensing.
Sun doesn't have the same reasons for restricting the license of StarOffice that it did for Java, which is also under the SCSL. It probably doesn't make a big difference whether or not someone makes and commercially distributes incompatible changes to StarOffice. In contrast, changes to Java by Microsoft jeopardized Sun's write-once, run anywhere strategy of Java as a universal cross-platform solution. Sun isn't going to make big royalties off of StarOffice while it's also giving it away for free from its own web site, so the restriction on commercial distribution makes little sense. Sun can show the Linux community which side it's on by modifying its license to be fully compliant with the Open Source Definition before it releases the StarOffice source code.
Sun promotes central control as one of the advantages of the Sun Community Source License. In their own words (in this article), Sun states the SCSL license guarantees structured innovation within a single responsible organization. That responsible organization is Sun, I guess, but of course the SCSL doesn't mandate a budgetary commitment. Contrast this to the development of Linux: no product has grown as quickly, by functionality, by the number of deployed systems, and in terms of the total amount of debugged code, as Linux. Yet, the license of Linux has no provision for central control and no central budget for development - development is on an as-needed, by whoever needs it basis. The lack of central control has also forced those who would lead the development of Linux, including Linus Torvalds himself, to constantly demonstrate their competence as software designers. It is only this demonstrated competence that causes the Linux community to follow any leader. This is insurance against incompetence and mediocrity in programmers, and against false marketing that would set the wrong goals for software development. It's one of the main reasons for the very high code-quality of Linux and its rapidly expanding coverage of the problem space. Another reason Sun gives for the SCSL is there is clear control over compatibility. However, compatibility can be controlled effectively in fully Open Source software through the use of certification programs and trademarks, without simultaneously impeding innovation.
Perhaps this is the most important reason Sun gives for its use of the SCSL: it is clear who owns what. In this case, it's not just software - it might become ownership of a market. In contrast, Open Source software deliberately establishes a sort of community ownership of software, even though copyright owners all retain the ownership of the code they've placed under a common license. This community ownership guarantees a fair quid-pro-quo for all developers, because the Open Source licenses give every developer a specific set of rights that they have found to be fair compensation for their contributions of software. The encouragement that this has given developers resulted in the success of Linux. One of the important guaranteed rights is the right to commercially distribute the software, without any need to execute a separate commercial license.
Most critics of Open Source raise the issue of commercial distribution, as Sun does so with its own discussion of the SCSL, stating that payment for commercial distribution is only fair. In contrast, I've written a few parts of the Red Hat Linux distribution and I don't insist on a royalty for them. People sometimes ask me: aren't you bothered by the fact that Red Hat sells your code, and doesn't give you any money back for it? I'm not bothered at all, because Red Hat can only make what it should for getting that software into the customer's hands and supporting that customer. If I don't like what Red Hat is charging, I can sell the same software for less, and take away some of Red Hat's business. In fact, I have the right to sell just about everything in Red Hat's Linux distribution. Thus, I can circumvent Red Hat and its pricing. This possibility of circumvention is important to the quid-pro-quo - Red Hat can't establish a monopoly on my Open Source code. The SCSL doesn't provide this same monopoly insurance. It sets Sun up in the monopoly seat, creating a possible problem for the future, but it does not guarantee Sun a revenue for the software as long as they are also allowing people to dowload it for free. Thus, it's not a fair return we're really talking about here - it's control.
So, in conclusion, I think that the StarOffice release is a good thing for Linux, but not yet a good thing for Open Source. Sun could make it a lot better, and they have little incentive not to do so. I hope I've given you something to think about, and I hope I've corrected some of the mis-reporting and that the press will be a bit more careful next time. And finally, I'd like to send out this message: Com'on Sun, make it compliant with the Open Source Definition.
- Bruce Perens
Sun Microsystems, Inc. Binary Code License Agreement READ THE TERMS OF THIS AGREEMENT AND ANY PROVIDED SUPPLEMENTAL LICENSE TERMS (COLLECTIVELY "AGREEMENT") CAREFULLY BEFORE OPENING THE SOFTWARE MEDIA PACKAGE. BY OPENING THE SOFTWARE MEDIA PACKAGE, YOU AGREE TO THE TERMS OF THIS AGREEMENT. IF YOU ARE ACCESSING THE SOFTWARE ELECTRONICALLY INDICATE YOUR ACCEPTANCE OF THESE TERMS BY SELECTING THE "ACCEPT" BUTTON AT THE END OF THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THESE TERMS, PROMPTLY RETURN THE UNUSED SOFTWARE TO YOUR PLACE OF PURCHASE FOR A REFUND OR, IF THE SOFTWARE IS ACCESSED ELECTRONICALLY, SELECT THE "CANCEL" BUTTON AT THE END OF THIS AGREEMENT. 1. License to Use. Sun grants to you a non-exclusive and non-transferable license for the internal use only of the accompanying software and documentation and any error corrections provided by Sun (collectively "Software"). You have no right to distribute the Software. 2. Restrictions. Software is confidential and copyrighted. Title to Software and all associated intellectual property rights is retained by Sun and/or its licensors. You may make copies of Software only for your internal use provided that you reproduce all notices in and on Software, including this Agreement. Unless enforcement is prohibited by applicable law, you may not modify, decompile, disassemble, or otherwise reverse engineer Software. You acknowledge that the Software is not designed or intended for use in on-line control of aircraft, air traffic, aircraft navigation or aircraft communications; or in the design, construction, operation or maintenance of any nuclear facility. Sun disclaims any express or implied warranty of fitness for such uses. No right, title or interest in or to any trademark, service mark, logo, or trade name of Sun or its licensors is granted under this Agreement. 3. Limited Warranty. Sun warrants to you that for a period of ninety (90) days from the date of purchase, as evidenced by a copy of the receipt, the media on which Software is furnished (if any) will be free of defects in materials and workmanship under normal use. Except for the foregoing, Software is provided "AS IS". Your exclusive remedy and Sun's entire liability under this limited warranty will be at Sun's option to replace the Software media or refund the fee paid for the Software. 4. Disclaimer of Warranty. UNLESS SPECIFIED IN THIS AGREEMENT, ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT, ARE DISCLAIMED, EXCEPT TO THE EXTENT THAT THESE DISCLAIMERS ARE HELD TO BE LEGALLY INVALID. 5. Limitation of Liability. TO THE EXTENT NOT PROHIBITED BY APPLICABLE LAW, IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF OR RELATED TO THE USE OF OR INABILITY TO USE SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. In no event will Sun's liability to you, whether in contract, tort (including negligence), or otherwise, exceed the amount paid by you for Software under this Agreement. The foregoing limitations will apply even if the above stated warranty fails of its essential purpose. 6. Termination. This Agreement is effective until terminated. You may terminate this Agreement at any time by destroying all copies of Software. This Agreement will terminate immediately without notice from Sun if you fail to comply with any provision of this Agreement. Upon termination, you must destroy all copies of Software. 7. Export Regulations. All Software and technical data delivered under this Agreement are subject to U.S. export control laws and may be subject to export or import regulations in other countries. You agree to comply strictly with all such laws and regulations and acknowledge that you have the responsibility to obtain such licenses to export, re-export, or import as may be required after delivery to you. 8. U.S. Government Restricted Rights. If this Software is being acquired by or on behalf of the U.S. Government or by a U.S. Government prime contractor or subcontractor (at any tier), then the Government's rights in the Software shall be only as set forth in this Agreement; this is in accordance with 48 C.F.R. 227.7201 through 227.7202-4 (for Department of Defense (DoD) acquisitions) and with 48 C.F.R. 2.101 and 12.212 (for non-DoD acquisitions). 9. Governing Law. Any action related to this Agreement will be governed by California law and controlling U.S. federal law. No choice of law rules of any jurisdiction will apply. 10. Severability. If any provision of this Agreement is held to be unenforceable, this Agreement will remain in effect with the provision omitted, unless omission of the provision would frustrate the intent of the parties, in which case this Agreement will immediately terminate. 11. Integration. This Agreement is the entire agreement between you and Sun relating to its subject matter. It supersedes all prior or contemporaneous oral or written communications, proposals, representations and warranties and prevails over any conflicting or additional terms of any quote, order, acknowledgment, or other communication between the parties relating to its subject matter during the term of this Agreement. No modification of this Agreement will be binding, unless in writing and signed by an authorized representative of each party. For inquiries please contact: Sun Microsystems, Inc., 901 San Antonio Road, Palo Alto, California 94303