Why should users care about the difference between Microsoft Shared Source and open source?
Microsoft's latest moves concerning its Shared Source philosophy may be confusing unless you recognise that this is part of a larger agenda. Consider the following facts. Microsoft has:
- Acknowledged that source code and source code licensing is just one component of an umbrella framework that is the commercial software model.
- Submitted the specifications for the Microsoft.NET Framework to the European Computer Manufacturers Association (ECMA) standards body.
- Expanded the level of Windows CE source access to silicon vendor partners via the Windows Embedded Strategic Silicon Alliance programme and to system integrator partners via the Innovation Alliance programme.
- Broadened Windows CE source code licensing access through Platform Builder 3.0 and will offer academic (non-commercial) site licences for Windows CE source code.
- Suggested that Shared Source is a corner of open source.
Microsoft's agenda is to make its Shared Source philosophy as appealing as possible, without leading users to repudiate its control of source code. At the O'Reilly Open Source Convention recently, Craig Mundie, the senior vice-president of Microsoft, said that Microsoft wanted to learn from free software.
This is significant because it means Microsoft is making an effort to counter the negative backlash from executives who have called Linux a cancer (Steve Ballmer), anti-American (Jim Allchin) and referred to the General Public Licence (GPL) as Pac Man-like (Bill Gates).
It also means that the Microsoft management is pragmatic and understands that it needs to stop the negative rhetoric if it is to have success in gaining support from the open source community for its Shared Source philosophy.
What is different, and essentially adds a dimension to the rhetoric, is the suggestion by David Stutz of Microsoft that Shared Source is a corner of open source. If Microsoft is successful it could lead to Shared Source being embraced as part of the open source continuum, narrowing the divide between the two methodologies in the process.
The most important distinction to consider is that while Microsoft source code may be made available to programmers, the company maintains intellectual property rights to the source code. This is a reason why open source as a methodology and a technology threatens the control that Microsoft has as a single vendor over its customers.
It is ironic that despite claims from Microsoft that it wants to learn from the open source community, it appears that it has learned most from Sun Microsystems, since its Shared Source philosophy is far more similar to Sun's Community Source Licence (SCSL) than to software under a BSD, MIT X or GPL-style licence.
Primarily, the growth of Linux and the slow adoption of Windows 2000 led to the articulation of Microsoft's shared source philosophy. In fact, for years prior to the introduction of Shared Source, Microsoft has made sample source code freely available to developers through resources such as software development kits (SDKs), device driver kits (DDKs) and Microsoft Developer Network (MSDN).
The company has also licensed Microsoft Windows source code to more than 100 academic institutions in 23 countries, and licensed Windows 2000 code to more than 1,000 enterprises customers in the US with plans to extend this to 12 additional countries.
Although a competitive landscape between Windows and Linux exists, in order for Microsoft to gain support from the open source community it must lessen the perception of Microsoft as predator. To further this point, Mundie claims, "We [Microsoft] only play a small role in this large software ecosystem." Yet this is unlikely to dispel the perception that open source versus Shared Source is proportional to a battle between David and Goliath.
For users who want to look at the source code but are concerned whether they own their own contributions or enhancements to the code or are locked into one commercial vendor, Shared Source may be worthy of consideration.
However, for a number of Microsoft customers, a Shared Source licence that couples the notion of a single source provider with open source access for non-commercial purposes may have limited appeal.
The challenge for Microsoft is that Shared Source is a proprietary framework, and unless the company expands and embraces the possibility of unrestricted access to source code for commercial purposes it will never lead to the sense of community, dynamism and serendipitous events that open source technologies, such as Apache, Samba, Perl and Linux, encourage.