Sun's Inner Circle Newsletter - mainly CIO/CTO types from some of Sun's best customers, plus a few stragglers (an IBM employee or two for example). It was a small, select, friendly but alert audience, a pleasure to meet and an honour to present to.
A guest asked a question that often crops up; 'Sun is giving so much source-code to open source (Project Looking Glass and Solaris the most recent announcements), how will it ever monetise these donations - how can you make money if you keep giving stuff away?' It's a good question. At its heart lies a misunderstanding about the nature of open source software, and once that's cleared up everything falls into place much more easily. The paradox - profiting from what is given away - is actually one many of us participate in every day in another area of our lives.
Open Source Development in Overview
Open source software development is best defined using the phrase coined by Professor Yochai Benkler - "commons-based peer production". Open source development uses a pool of software assets that is held in common by a community - termed a 'commons' by Professor Lawrence Lessig - which is enhanced and expanded over time. The community is comprised of peer experts of all kinds, each with a status reflecting only their abilities - age, previous achievements elsewhere, employer or external factors such as race or politics should be irrelevant. The community is focussed on production of software - "code talks, talk doesn't code".
Then for each aspect there is a facilitator.
* The Commons is facilitated by a license that grants the rights that the community needs to function. The license will offer unrestricted access to the source code that comprises the commons, unrestrained by either payment requirements (gratis) or usage restrictions (libre).
* The peer nature of the community is facilitated by the governance model of the community. This is often overlooked but it's just as important as the license. Good governance will for example result in the power to permanently change the contents of the commons (the power to 'commit' changes, exercised by a 'committer') being held only by those the community respects as best qualified.
The key to quality thus lies in governance. Bill Joy pointed out that no-one can hire all the smart people; open source development gathers them together and recognises the smartest as committers. The quality of good open source software comes not from many hands being involved but from the best being given the keys to the commons.
* The production of software from the commons is facilitated both by the license and the governance.
It's worth noting that the focus of an open source community is development - none of the freedoms required of a software deployer (such as strict compatibility with externally-defined standards, essential if the freedom to switch to a different software solution is to be preserved) are explicit objectives. All the time that open source software has been the preserve of developer-deployers there's been no issue, but as it becomes more widely used by deployers with no interest in development, the need for new ways to provide deployers with their necessary freedoms will grow.
What freedoms do deployers need? They're actually rather traditional:
* Function that meets actual business needs
* Freedom to change supplier, so that prices can always be negotiated
* Freedom to choose new software solutions as business needs evolve
* Control of the data, by implication control of the format it's stored in
* Protection from liabilities associated with the development of the software
Software derived from an open source community may or may not meet these requirements. For many companies, there has been an initial rush based on the abilities of skilled and visionary employees to obtain software gratis from open source communities but increasingly CIOs are realising this doesn't secure all the freedoms they need for long-term business. They're turning to commercial suppliers to act as their intermediaries with the open source communities - "they join the community so we don't have to".
Just Like The Newspapers
The model Sun is developing for giving customers the benefits they need using open source is illustrated well by Sun's Java Desktop System (JDS). JDS comprises many software elements drawn from a wide range of open source communities. To understand what's happening, let's consider the newspaper industry.
Newspapers haven't been killed off by the Internet (at least, not yet!). The reason for this is that when we buy a newspaper, we're not buying the news. These days the news is free (gratis) - we can go online and read newsfeeds from organisations like Reuters or the Associated Press, or original reporting from an organisation like the BBC. When I buy a newspaper like 'USA Today' or 'The Independent', I am actually buying an editorial style. The editor-in-chief for the newspaper sets the outlook, and then the editors and other staff select the news stories, phrase the reports, position them in the publication and perform the lay-out in support of that editorial outlook. If I go online to get the news, I have to do the work of selecting and filtering the news, and I may not always be aware of the biases of the source I am using. To get an aggregation of the news I want delivered in a style that helps me and with biases I understand, I subscribe to a newspaper.
JDS is just like this. Almost all the elements that comprise it - the Mozilla browser, the Evolution mail and calendar client, the StarOffice document productivity suite, the underlying GNU/Linux operating system they depend on, the Gnome desktop environment they use and much more - come from open source communities. You could go get all those parts yourself - they are all available gratis. But then you'd have to integrate them yourself, support them yourself, accept joint liability for their use of ideas yourself.
Instead, Sun acts like the editor-in-chief of the JDS 'publication'. Staff select the software components to include and exclude, work to integrate them, constribute to each of the open source communities to improve their compatibility and completeness. Sun packages and delivers the final publication, offers support and updates, fixes security exposures, offers indemnity and generally joins the communities so you don't have to.
You don't buy the software from Sun - instead you subscribe to the editorial outlook. Sun's editorial view is to deliver high function, ease of use, data format and networking compatibility, low migration cost, re-use of existing hardware, escape from Windows viruses and security risks and minimal retraining. If that's an editorial outlook that fits your corporate needs, you'd do well to subscribe.
To take the analogy further, you're not just subscribing to a publication that's tightly bound together between stitched hard-covers. JDS is more like a publication delivered in a ring-binder on punched paper. You're free to insert extra pages - add software like Wine to allow existing Windows applications to run, for example. You're free to remove pages you don't need. You're free to substitute pages where you have another preference (maybe you'd rather use the new Firefox browser?)
Resolving the Paradox
Perhaps its clearer now why Sun donates software to open source communities. It's not a matter of 'giving away'. Instead, Sun is joining with the other smart folks out there and contributing to the commons of many communities to create and enhance the pool of software from which 'publications' such as JDS are then derived. Sun has always believed that business success comes not from eliminating competitors or always 'coming first' but from creating marketplaces in which Sun and others can all succeed - "a rising tide lifts all boats".
There will be other 'publications' you could choose - you could even assemble your own if you wish. But the right editorial outlook at the right subscription price will allow Sun to monetise its software investment more effectively than a closed sale of a sealed product ever could in our new, massively connected society.