Mundie Clarifies Open Source Position

pudge on 2001-07-26T23:37:06

What follows is an email from Craig Mundie, Senior V.P. of Microsoft, sent following his talk/debate at the Open Source Convention this morning. Read and enjoy.

From:   Craig Mundie
Sent:   Thursday, July 26, 2001 1:45 PM
To: Microsoft and Subsidiaries: All FTE
Subject:    Microsoft's Views on Open Source and GPL Licensing

In May I initiated our broad discussion on the topics of source code licensing and intellectual property protection by making a speech at New York University. The speech outlined our programs to provide greater access to source code for our customers through a shared source initiative. It also offered our perspective on the economic model that has driven the software industry's long-term success. I appreciate that many of you may be asked about this by our customers or others in the development community, and I thought it might be helpful to provide you with this summary of our views.

Our industry has always been based on a diversity of software models that together create a healthy software ecosystem. This includes some source code that is published and some that is not, as well as some software that is distributed for free and other software that is licensed for a fee. Much of this software is developed by commercial companies, while some of it originates in universities and governments. Each approach has certain strengths and drawbacks. Importantly, however, this diversity benefits software users, who can select and even mix and match among different software models, depending on their needs.

Equally important - and in a way not always appreciated - this diverse software ecosystem has been fundamental to the long-term health of the software industry. For example, many important technological advances have begun in the public sector, where governments and universities have undertaken basic research to advance the broad state of technical knowledge. They have often contributed this learning to the public domain by publishing freely their research results, sometimes in source code form itself. Governments have also adopted a legal system that recognizes intellectual property rights, providing a powerful incentive for commercial companies to create products that build further on this knowledge. Through these steps governments have helped create the foundation on which our industry has been built.

For over 25 years software companies have been adding to this knowledge by undertaking their own applied research and by developing successful commercial products. These products not only advance the state of technology; they help move the entire economy forward by creating jobs, profits, and tax revenues. The fruits of these advances in turn contribute further to the continued vitality of the software ecosystem. The tax revenues and philanthropic contributions that flow directly and indirectly from commercial companies fund further governmental and academic research efforts. Commercial companies also contribute important advances to the intellectual commons by participating in the work of public standards bodies, and they directly support universities through academic source code licenses and similar programs. As in other aspects of our industry, a virtuous cycle develops in which a wide variety of individuals and institutions in the public and private sectors contribute together to everyone's continued success.

In the last few years there has been increasing interest in the multiplicity of software models. Much of this has focused on "open source" software - a label applied to what is in fact a range of models, all of which include the publication of source code. As with every other change that is important to our industry, we have thought carefully about what this trend means for the future of computing. As with many changes, we have found aspects that we believe are promising, as well as other features that are less so.

The company's shared source initiative represents our effort to learn from and apply those open source trends that we believe offer promise for Microsoft and our customers. For example, by pursuing initiatives to share source code, we can better support a strong community of developers and IT professionals, and we can help promote collaboration in the development of industry standards. Some of this has long been a hallmark of Microsoft's business, including, for example, source code licenses we have had in place with over 100 universities around the world. Our shared source initiative is all about taking additional steps in this area, including our recently-announced programs to license source code to enterprise customers, as well as for Windows CE and aspects of the .NET initiative. We'll announce more things along these lines in the future.

As we pursue our shared source initiative, we are keeping in mind the need to license source code in a thoughtful manner. There are some licensing models that can undermine the integrity of a program's code base, possibly leading to the distribution of incompatible versions. Similarly, there are some licensing models that effectively surrender the revenue-generating potential of software. Some of these would lead us back to the computing model of the 1970's, when users received from hardware companies software that was offered for free, but was provided at the expense of tying customers to a single hardware vendor. While this too has a place in a diverse software ecosystem, it's nonetheless a reminder that in free markets there is seldom a free lunch. We're constructing our shared source licenses so as to avoid these problems.

This focus on the strengths and weaknesses of various licensing models has also led us to voice our concern about one particular type of open source license - the GNU General Public License, or GPL. This is only one of a number of different licenses used to distribute open source software, and it stands in sharp contrast to other open source licenses, such as the FreeBSD license, for example. However, the GPL is being used with a number of software programs, including Linux.

We are concerned about the potential implications of the GPL for use in disseminating the results of academic or government-funded research. The GPL in this context effectively erects a wall that prevents the public and private sectors from working together. By restricting severely the rights of anyone who incorporates GPL code into their own software program, the GPL makes it impossible for commercial software companies to build on the types of academic works that have been put in the public domain and have helped fuel innovation the last half-century. As we continue to think about the future of software, we believe that we need an intellectual property model that encourages interaction between the public and private sectors, not a model that drives them apart.

The problems created by the GPL result from the onerous licensing terms that it contains. The GPL not only requires that all source code must always be published, but also states that all third parties must have the right to make unlimited copies of GPL-licensed software and redistribute them free of charge. Obviously, it is extremely difficult for a software company to generate revenue by distributing a program if everyone has the right to distribute unlimited copies of the same program free of charge.

Of additional concern, the GPL effectively transmits these restrictions to other software programs through provisions that even many in the open source community characterize as "viral" in nature. The GPL states explicitly that if another software program "contains or is derived from" any GPL-licensed code, then this second program automatically becomes subject to all of the terms of the GPL as well. Hence, unlike a number of other open source licenses, the GPL restricts very substantially the rights of anyone who incorporates even a modest amount of GPL code in a software program. Moreover, because there is no clear definition of a "derivative" work under the GPL, companies play a game of legal chance even if their employees only study GPL code before creating their own software.

When asked about Microsoft's views on these issues, I hope you can help us put these ideas in perspective. We are not criticizing the open source community, nor do we have any wish to do so. To the contrary, we are adopting those aspects of open source models that we believe will benefit the company and our customers. We are raising concerns about one specific open source license - the GPL - because we believe these concerns are important to the future of the software industry and the customers we serve. If you'd like further information, you can find it at www.microsoft.com/sharedsource.

Craig


Dammit

chip on 2001-07-27T07:24:22

Why didn't we have a written statement ready?
That's what happens when you're up against old
hands at the propaganda game, I guess.

quicktake

wickline on 2001-07-27T12:04:24

I'd love to chop this up when I have more time, but I'm about out the door for work. So, just this for now:


> There are some licensing models that can
> undermine the integrity of a program's code
> base, possibly leading to the distribution
> of incompatible versions


Examples please? How is Microsoft immune? Will shareing their source suddenly prevent them from making incompatible versions of software? Whatever license they used in the past didn't prevent this problem.


> some licensing models that effectively
> surrender the revenue-generating potential
> of software



Granted. So, MS shouldn't use those licenses. However, there is no need for them to attack my right to use those licenses.


> Some of these would lead us back to the
> computing model of the 1970's, when users
> received from hardware companies software
> that was offered for free, but was provided
> at the expense of tying customers to a
> single hardware vendor.



Explain please. On it's face, this seems like an outrageous claim. Take perl. Take linux. Take gcc. How have these things lead to this model? What the hell is he talking about, exactly?


> the GPL makes it impossible for commercial
> software companies to build on the types
> of academic works that have been put in
> the public domain and have helped fuel
> innovation the last half-centur



You don't license public domain works. You simply use them. That is the beauty of public domain. GPL places restrictions on how folks may use (c)'en works. It is the author's right to license their code as they see fit. If they don't want corporate america to use their code for profit without sharing any improvements, it is their right to assert this through their license. If funding agencies want to deny this right to authors, they are allowed to stipulate in their grant that the grant monies may not be used to fund GPL'ed work.

By attacking GPL, MS is barking up the wrong tree. If this were truely their agenda, they should be after the NSF to change the terms of their grants. MS is not stupid. They do not really think that the NFS would ever allow this change in grant terms. MS just wants manager types to fear the phrase "GPL" and stay the hell away from major OS projects, many of which compete compellingly with MS products in their most significant markets (server OS: linux, HTTPD: apache).


> we need an intellectual property model that
> encourages interaction between the public
> and private sectors



GPL is totally pro-interaction. GPL allows more interaction than Shared Source allows. How does Shared Source allow me to use MS code in my for-profit software? It does not. GPL offers me the choice of doing this, *if* I'm willing to GPL my product. Shared Source removes choice. How does removing choice encourage interaction?


> Obviously, it is extremely difficult for
> a software company to generate revenue
> by distributing a program if everyone has
> the right to distribute unlimited copies
> of the same program free of charge


Nevertheless, folks have done it. Perhaps MS doesn't want to do this. That is their choice. No need for them to attack GPL if they don't want to use it... unless they have another agenda. Oh. They do.


> Hence, unlike a number of other open
> source licenses, the GPL restricts very
> substantially the rights of anyone who
> incorporates even a modest amount of GPL
> code in a software program.



Choice. They chose to use the GPL code. Could they choose to use MS's Shared Source code?


> Moreover, because there is no clear
> definition of a "derivative" work under
> the GPL, companies play a game of legal
> chance even if their employees only study
> GPL code before creating their own software.



MS implies that someone might accidentally use GPL code after studying it, then get sued. How is this different from someone studying MS Shared Source code? Well, MS has more lawyers, so litigation is easier for MS than most GPL authors. The risk of encroachment is simmilar. The risk of consequences is higher with Shared Source. Shared Source should therefor be avoided by corporate america more than Open Source, right?


> We are not criticizing the open source
> community, nor do we have any wish to



Bullshit. You laid false criticism on the GPL in your letter quoted above. Had you not wished to, I'm certain you have the inteligence to have avoided doing so.

-matt

Divide and Conquer?

jjn1056 on 2001-07-27T15:12:04

Seems like they are trying to play up the infighting between the OSS and the FSF. Isn't that how the Romans worked?

Makes sense for them to attack the GPL though, since the BSD license allows them take stuff without giving back. Didn't they already do this?

I guess they haven't heard of the LGPL...

This doesn't look like a statement.

brev on 2001-07-27T17:24:45

See the To: field, it was widely disseminated within Microsoft, not to the press. (Although Chip's idea of having a statement is a good one.)

Seems to me that they are readjusting their message and they want everyone in MS to sing on key. No more embarassing "unamerican" quotes.

The old message, attempting to tar all open source with the same brush, wasn't working so well. So now, MS is not against open source at all. And never was. (We have always been at war with Eastasia.) Now it's just that they are "concerned" about the GPL. This message is a lot more sustainable and can be expanded upon by friendly media outlets.

I like what quicktake wrote though. If they are all that concerned about the effect of the GPL on the software industry or grants process, there are appropriate channels. They could even take their concerns to the FSF, see if some compromise could be worked out.

Instead they're taking their message to the public and industry leaders. Presumably they will just repeat this message often enough until enough people start adding the word "controversial" before "GPL" as a matter of course.

Why GPL is good for government code

fridge_sm on 2001-07-27T23:29:03

While I understand Mundie's opinion that government-funded code should be public domain, there is more to it than that. Say a government agency (let's say, the NSA) had two choices:
  • Under the "Shared Source" initiative, make changes to the Windows operating system to make it more secure
  • Hire a couple developers and have them hack the Linux kernel to make it more secure
Which are they likely to do? More importantly, which benefits the taxpayers the most? With the first option, they are writing code that will only benefit Microsoft, a private company. With the second option, they are writing code that any person or company can benefit from, for free.

So the question is, which is better?

An acadamic's perspective

anonymos on 2001-07-28T04:12:38

As an academic, I have to say I love the GPL. It does not hinder collaboration between the private and public sectors. Historically, acadamic research was funded for the public domain with government funds. Nowadays, the government is trying to introduce commercial funds into research in ways that don't cripple the traditional open atmosphere of acadamia. A large number of professors are turning research projects into startups, or selling the products of their research. Whether this is good or bad is a seperate discussion; the government is making a strong push towards this to make its money go a long way. The GPL provides a nice middle path. Historically, the private sector has raped acadamic research, and given nothing back in return (or, admittedly, a very small bit by paying their taxes). The GPL prevents this. What you see are libraries like FFTW (www.fftw.org). They are licensed under the GPL, so other acadamics and not-for-profits can study them and improve on them. Completely preserves the old feel of acadamia. At the same time, the authors of FFTW dual license the library to commercial institutions for a fistful of cash. This is explicitly stated on the FFTW web page, but I think you'll find that if you ask most academic GPL authors to dual-license their work, and offer a reasonable price, they will agree. So Microsoft could have still taken BSD's TCPIP stack to use in Windows. It's just that Berkley would have gotten something back for developing it. Seems fair to me. Any comments, Microsoft?

Re:quicktake

JamieF on 2001-07-30T04:09:41

>> Some of these would lead us back to the
>> computing model of the 1970's, when users
>> received from hardware companies software
>> that was offered for free, but was provided
>> at the expense of tying customers to a
>> single hardware vendor.

>Explain please. On it's face, this seems like an
>outrageous claim. Take perl. Take linux. Take
>gcc. How have these things lead to this model?
>What the hell is he talking about, exactly?

I think this is a dig against Sun and Java, and their "SCSL" pseudo open source license. Microsoft's spin on Sun's strategy is that they gave away Java to lock you into buying Sun hardware. Of course this isn't the case (use IBM Java on Linux and pay nothing to anyone, including Sun) but the idea is that with Java a proprietary standard and Sun playing benevolent dictator, Microsoft likes to harp on the "but at any minute they could change it to be Solaris only!" which of course is bunk. If Sun tried to do that the industry would turn their back on Sun and make an open standard clone of Java (not a sorta-clone like C#).