Microsoft: an end to open hostilities?

by Paul Anderson, Intelligent Content on 4 January 2010 , last updated

Introduction

First branded as a communist plot, then derided as a form of cancer, before being upgraded to merely a ‘grey spectre’, free and open source software (FOSS) has had a pretty rough ride from Microsoft over the years. For many in the open source community, the company represents all that is troubling about closed source software development. Recently, though, there have been developments that at least one leading open source developer has labelled a ‘sea change’ following the announcement that Microsoft was to become sponsors of the Apache Software Foundation (ASF).

Microsoft surprised many in the open source community for a second time in July 2009 by actually committing some of its own, hand-crafted-in-Redmond code to the Linux kernel. Initial reaction to the news ranged from shocked delight to deep suspicion and things took a turn for the worse a few days later when further information about the reasons behind the decision seemed to confuse matters. What at first had been officially described by Microsoft as ‘a break from the ordinary’, and had been talked up in blogs by various software engineers at the company, turned a little sour when open source advocates and commentators began to question the real motives behind the move. Just as debate about this had started to die down, Microsoft pulled another rabbit from the hat. In mid-September 2009, the company announced the launch of a not-for-profit organisation, The Codeplex Foundation1, set up with the aim of exchanging code and furthering the understanding of open source among ‘commercial’ companies.

These recent events neatly encapsulate the continuing saga of the relationship between Microsoft and the FOSS communities. Whilst some believe that significant change is underway at Microsoft, many are not so easily convinced. They worry that there is more ‘spin’ than substance to the company’s various open source initiatives, and others point to past exploits as evidence of Microsoft’s inability to change. In this respect there are three key events that have drawn attention to the company’s interest in open source development: Microsoft’s sponsorship of the ASF, the MS-Novell deal, and an agreement with the Open Source Initiative (OSI) to certify two Microsoft licences.

Dividing the community: the Microsoft/Novell, GNU/Linux patent deal

One area that has often revealed fundamental differences between Microsoft and the open source community is Microsoft’s attitude to intellectual property (IP). The company has long championed the role of the patent in technology innovation and, over the years, has developed a formidable arsenal of technology patents that has formed a key component of the Microsoft business model. This attitude to IP, especially the issue of software patents, came to a head in a very public conflict in which Microsoft claimed that free and open source software violated 235 of its software patents. In an interview published in Fortune magazine,2 Microsoft CEO Steve Ballmer stated: ‘We live in a world where we honor, and support the honoring of, intellectual property.’ He went on to argue that FOSS developers were going to have to ‘play by the same rules as the rest of the business’.

If Microsoft’s claims had been true, then in theory the company should have been able to sue, but a particular clause in the GPL v2 licence ruled this out – Richard Stallman, President of the Free Software Foundation (FSF), had anticipated the possibility of such action and inserted what has become known as the ‘liberty or death’ clause.3 Microsoft’s IP team, led by Brad Smith, worked out a way around this, by focusing any potential licence or royalty deal on the end users of a GNU/Linux or FOSS product rather than the software’s distributors. The ‘ins and outs’ of what happened next are complex (this article referenced in the footnotes provides more detail) but in brief, a major GNU/Linux distributor, Novell, came to an arrangement with Microsoft under which they agreed not to sue each other’s end users for patent infringements.

This deal, and similar ones with GNU/Linux-related companies like Xandros, TurboLinux and Linspire, went down very badly with many in the free and open source world, in large part because by making the deal Novell had, in effect, given credence to Microsoft’s contention that GNU/Linux and other products had infringed patents. The FSF’s response was to redraft parts of its forthcoming GPL v3 to try to put a stop to this kind of arrangement (Wilson, 2007) but Microsoft remains ‘leery’ of GPL v3 (Foley, 2008, p.49).

Microsoft and OSI: licensing issues

Part of Microsoft’s IP strategy relates to the way it handles licensing of software code and in particular how it has made code available to others for re-use and modification. The company has a number of different licences and approaches to what it calls ‘sharing’ software that cover many ways of working with code, the majority of which would not be considered open source. They range, for example, from allowing limited access to closed source code for developers to facilitate debugging, to forms of what the OSI officially class as ‘open source’.

The most interesting, from the point of view of open source developers, is Codeplex, an open source code repository that was established several years before the Codeplex Foundation.4 Much, although not all, of the code in this area is covered by two Microsoft licences: Microsoft Public License (Ms-PL) and Microsoft Reciprocal License (Ms-RL), the former being the more permissive. In October 2007, OSI granted approval to these two Microsoft software licences.

The Free Software Foundation5 also accepts that these two are what it considers to be ‘free software’6 but Richard Stallman, the FSF’s president tempers this with a more general observation about Codeplex: “Many of the projects hosted by codeplex.com are add-ons to proprietary software. These add-ons, in and of themselves, are free software; but they are of no use to anyone except users of proprietary software. They cannot be used in the Free World. Their practical effect is to encourage use of that proprietary software. Paradoxically, these free programs are meant specifically to prevent the world from freeing itself from non-free software.”

Stallman is concerned that although some Microsoft produced software will now be under an OSI-approved licence this software is of no use without the (closed source) Windows operating system. Stallman therefore claims that all Microsoft software is effectively non-free. However, for many, the fact that Microsoft is providing any software under a free licence is an important step towards finding common ground between proprietary and free software. For some this is enough, for others it is merely a diversionary tactic.

Apache sponsorship

Microsoft pursued its interest in open source at a boot camp at the company’s HQ in March 2007. A number of key Java, Linux and PHP developers were invited to the company to pitch questions and have discussions with Microsoft engineers. Justin Erenkrantz, President of the ASF, recalls: ‘They brought in a whole bunch [of people] from different teams such as the Windows team, the Visual Studio team, the installer team and they said –”tell us what you want to know. We are here – throw us some detailed questions” ‘. This began a process of rapprochement that took place over a number of months and culminated in the announcement, at OSCON 2008, that Microsoft had become a platinum sponsor of the ASF.

The sponsorship has since been built on and Microsoft is now involved in at least four Apache projects: HBase, Stonehenge, QPid, and POI. Justin says: ‘From Apache’s perspective, while we are delighted to have Microsoft as a financial sponsor of the Foundation, I think the more important aspect of Microsoft’s relationship is that they are now contributing to a variety of Apache projects.’ The company’s involvement ranges from having some engineers contribute the odd patch or idea on a mailing list to being full-blown core contributors. Justin notes that Microsoft gets no special favours when it comes to engaging with the community and their committers sign the same legal agreements required of all contributors. Justin expects more in coming months and he says: ‘In recent conversations with Sam Ramji [out-going senior director of Platform Strategy] at Microsoft, it sounds like there are even more Apache projects that Microsoft is interested in getting involved in.’

Microsoft’s history with open source

In fact, Microsoft’s interest in open source software goes back much further than this. Bill Hilf, General Manager of Platform Strategy, is guiding their overall open source strategy. Brought in from IBM in 2004, where he had been leading their Linux technical strategy, Hilf has been instrumental in driving open source within the company. He started the Open Source Software Lab as a single centre of learning for the company, and this has grown from a couple of old PCs under a desk to a big lab with its own data centre, complete with hundreds of servers running dozens of different varieties of Linux and UNIX. Here they work on a variety of projects, developing, testing and benchmarking anything to do with the relationship between open source software and the Windows environment.

Hilf traces the beginning of Microsoft’s involvement to a project called Rotor – a ‘shared source’ (rather than open source)7 distribution of the Common Language Runtime, allowing modifications and redistribution of the code for personal or academic use, but not for commercial products. Other major initiatives include work to allow virtualisation and system management of GNU/Linux on a Windows platform, development of a Windows Media player for Mozilla, work on the performance of Jakarta Tomcat and Apache HTTPD, integration of mySQL into Visual Studio, development of PHP under Windows and release of IronRuby and IronPython. Microsoft has also helped with the Moonlight project, which aims to put Microsoft’s Silverlight (a competitor product to Adobe Flash) on GNU/Linux and has undertaken collaborations with a number of open source-related companies and projects including JBoss, SugarCRM, SpikeSource and Drupal. Of particular interest to the education community is the work the company is doing to allow integration of Microsoft’s Live@Edu services into the Moodle VLE system (which has released code under GPL v2).

It’s the business model, stupid!

Having a view of where Microsoft has come from is key to understanding where it’s going with open source. The company is of such a scale within the industry – ‘behemoth’ is the press’ favourite short-hand term for the company – and much of its activity is so opaque to the outsider that a whole cottage industry of Microsoft watchers has sprung up around the company. Indeed, like the Kremlinologists of the old Soviet era, they keep an analytical eye on comings and goings, interpret the press statements and note the May Day personnel changes like boardroom chess moves. They include market research companies like Directions On Microsoft and independent commentators like Joe Wilcox. Their doyenne is Mary Jo Foley, who keeps ZDNet’s ‘All About Microsoft’ blog fresh and wrote a book last year about the future of the company. In an interview for this piece, Mary Jo said: ‘I think you really do need to understand Microsoft’s many morphing business models to understand how and why the company views open source the way it does.’

This focus on business models must encompass Microsoft’s reliance on the Windows ecosystem for a vast proportion of its revenues. A powerful model has been built up over the years based on volume-licensing arrangements, pre-loading the software on OEM machines and robust defence of intellectual property, and many companies have built businesses around the closed source products of the company. Such an entity is not going to change overnight.

Indeed, at least as far as IP is concerned, Darren Strange, Head of Open Source Engagement, Microsoft UK, maintains that the company is right to continue to argue strongly for the value of software patents as part of the innovation process and that companies need the protection of intellectual property rights in order to feel secure in their investment in research and development. He says: ‘It is an important area and I think people kind of get it the wrong way around a little bit — patents are a good thing and they help to fuel the industry. Patents drive innovation and they drive openness actually, and they drive an industry where people can then build on those patents in a legal way, everyone mutually respecting the same rules. We need to use patents to drive innovation and we can do that just as well with open source vendors.’ He argues that a mutual respect for such rights will allow everyone, including open source developers, to work and flourish together.

In terms of the open source business model, one of the key components for its success is the contribution that businesses and other commercial organisations make, often enabling projects to gain sufficient traction to make open source business models viable in the first place. Microsoft now accepts that FOSS is here to stay and, just as many of the people who contribute to open source do so for the benefit of their employer, Microsoft employees undertake work to ensure that products such as PHP and mySQL work on the Windows software stack8 and that there is good interoperability between this stack and the open source alternatives. In fact, the vision goes even further than this. As Ballmer told a press conference in London in September 2007: ‘I would love to see all Open Source innovation happen on top of Windows’ (Foley, 2008, p.221).’

‘Open core’ versus ‘open edge’

For some there seems to be an inherent conflict here: Microsoft has developed OSI-approved licences, yet it remains wedded to its restrictive IP model. It is happy to work on open source software and commit code, but only where that endeavour enhances interoperability with open source products and increases Microsoft’s penetration of the open source market.

For Darren Strange, this is partly a natural consequence of the way the company is changing. He argues that Microsoft no longer sees open source (as a ‘philosophy’) as a competitor. He believes that there has been a ‘massive shift’ within the company, but points out that: ‘like a lot of these things, things that happen internally take a long time before they are acknowledged or felt in the market … it takes a while for that to permeate and be absorbed’. This is partly a question of a demographic shift. He says: ‘A lot of the engineers that we hire now … have come in with significant open source experience, so what you are seeing is a refresh of the company’. He also points to the new Codeplex Foundation as an example of their continuing commitment to open source. He says: ‘The Codeplex Foundation will be an independent organisation from Microsoft but we will obviously continue to actively contribute to it. To get it off to a good start, we have put $1million up to support it and Sam Ramji himself, who is leaving Microsoft, is passionate about serving as president.’

‘There is also a key business reason for this apparent conflict, which Strange puts into context by distinguishing between ‘open core’ and ‘open edge’. He says: ‘The main basis of our [Windows] platform is not open source, it is a commercial, non-open source product, but it is very open and our objective is to ensure that the edge of our product is extremely open’. This, he argues, means the provision of rich APIs and well-documented access to the system, which allows others to integrate closely. And it means working hard to ensure open source products work well on top of the Windows stack (he cites figures of 80,000 such products).

This definition is not without its problems. The term ‘open edge’ is not widely recognised in the IT industry and its use has caused debate within organisations such as the OSI. For many in the industry the concepts described above as ‘open edge’ are simply the concepts underpinning properly documented technology. For Strange, though, it’s a way of distinguishing between what Microsoft is doing and the approach often used by open source companies. He describes this as ‘open core’, in that companies provide a product that is open and free but charge for services or enhanced enterprise editions.

Strange concludes: ‘There is nothing wrong with the open core model, it is just that we are an open edge model company and we think it works well. So I think it is quite pragmatic, it is well thought through.’

Making sense of Microsoft

What can we conclude about Microsoft and its attitude to open source? While there are undoubtedly people who are engaging in internal debate to move the company in the direction of the open source community and its values, it seems clear that the change is only travelling at the speed (and in the direction) that the company’s key business models, its use of IP revenues and need to reinforce its basic Windows software stack, will allow. For those to whom open source values are inseparable from its products, it is important not to underestimate this, as, from a business perspective, it is easy to see how open source could end up being reduced to ‘just’ a new market segment.

In this respect, GNU/Linux poses a problem, and Mary Jo Foley maintains that, despite signs of genuine change, within the company there are still important debates about how to deal with an operating system that competes directly with Windows. She says: ‘ … there are still quite a few at Microsoft who can’t get their heads around open source – especially the distinction between Linux (with which Microsoft competes) and the rest of open source (which many at Microsoft want to embrace)’. While this is primarily about protecting Microsoft’s business model, some have gone further and speculated that the goal is to remove GNU/Linux from the equation altogether.9

Foley goes on to say that: ‘Microsoft will always be a proprietary software vendor that dabbles in open source software’ and so it is unsurprising, perhaps, that FOSS activists remain split over how to respond to Microsoft’s forays in open source. Richard Stallman’s take on it is that this kind of activity is akin to what he calls ‘freewashing’, a term he coined by analogy with ‘greenwashing’, to describe a situation ‘in which a company makes small contributions to freedom in the hope of evading criticism for much larger actions that are detrimental’. Others argue that it could all be interpreted as a move in the right direction, even if it is for Microsoft’s own reasons. As Justin Erenkrantz says: ‘Every positive and constructive engagement Microsoft has with the open source community (and vice versa), no matter how small or tangential the contribution, will continue to chip away at the old perceptions’.10

Despite these differences the best advice is probably to keep watching. Microsoft is not simply an unchanging monolith. Many analysts argue that the Windows era is drawing to a close and that new forces in the computing industry, such as the service cloud computing model, the rise of mobile phones and the success of Google’s advertising-based revenue model, are all forcing a kind of organisational rethink. Joining this list has to be the in-road that FOSS has made on the mentality that surrounds Microsoft’s closed source software model.

Further reading

Links:

Related information from OSS Watch:

This document is © Intelligent Content 2009.


  1. The Codeplex Foundation is now known as the Outcurve Foundation

  2. http://money.cnn.com/magazines/fortune/fortune_archive/2007/05/28/100033867/index2.htm

  3. In a nutshell, clause 7 of GPL v2 states that if you agree to any kind of patent licence or other such arrangement that limits the rights of users, then you can not further distribute the software (see: http://www.gnu.org/licenses/gpl-2.0.txt)

  4. Microsoft documents indicate that the Foundation is completely independent of the Codeplex.com repository, although they share the same overall goals. See: http://www.codeplex.org/About2/FAQ/Mission.aspx

  5. The FSF says that computer users are morally entitled to the freedom to run, study, change and redistribute the software they use. See: http://www.gnu.org/philosophy/free-sw.html.

  6. The FSF points out, however, that the MS-PL and MS-RL have weak ‘copyleft’ clauses and are incompatible with GNU GPL.

  7. See the talk Bill Hilf gave at OSCON 2007 at http://conferences.oreillynet.com/cs/os2007/view/e_sess/14706

  8. A combination of the Windows operating system, .NET, SQL Server, Office and Sharepoint.

  9. This is one interpretation of a slide by Sam Ramji: http://blogs.zdnet.com/microsoft/?p=1142

  10. Gianugo Rabellino, former CEO of SourseSense, Europe’s leading open source systems integrator, has now joined Microsoft as Senior Director, Open Source Communities.