---

Community Column: Why is Microsoft afraid of the GPL?

Opinions expressed by contributors to Linux Today’s
‘Community Column’ and Letters to the Editor are not necessarily
those of LinuxToday’s staff or management.


Editor’s Note: This column was run last night in
slightly different form. Mr. Awtrey made some corrections we have
since included.


By Anthony
Awtrey

On May 3, 2001, John Markoff wrote a story called
“Microsoft Is Set to Be Top Foe of Free Code”. (http://www.nytimes.com/2001/05/03/technology/03SOFT.html)
In that story Mr. Markoff reported that Mr. Craig Mundie, a Vice
President of the Microsoft Corporation, would be speaking to the
Stern School of Business at New York University. He was reported to
have made the argument that “the viral aspect of the G.P.L. poses a
threat to the intellectual property of any organization making use
of it.” I would like to rebut that statement.

People and companies who write software have the right to
do with that software as they see fit. Certainly I do not begrudge
Microsoft their right to sell licenses to use software they have
written, but not all companies that develop software sell it. In
fact, many companies that write software only do it to support
another product or service. Sometimes people even write software
because available commercial versions don’t meet even the minimum
requirements of use.

Written to sell or written to use

A company whose goal is to sell software has no real
incentive to sell you a really good product. In fact, it behooves
them to leave products lacking in features to provide incentives to
upgrade or to influence the choice of other software or services
they may provide. In an example of the former, can Mr Mundie defend
Microsoft’s practice of changing and refusing to document the
common document formats (Word .doc, Excel .xls) between releases of
Office? Specifically, how does making the older applications unable
to easily read the newer formats benefit the customer? Do they
expect us to believe this change was done in the customers best
interests?

The development of Samba, which provides SMB network
services from Unix and Linux systems, illustrates the problem of
vendors writing code to influence their customers instead of
providing the tools they need to get work done. It is also
wonderful example of the GPL and Open Source innovation in action.
According to the history document included in the source, Jeremy
Allison developed Samba because he could not get Sun’s PC-NFS and
DEC’s Pathworks, which used SMB to communicate with PC’s before
Microsoft extended the protocol, to run at the same time on his
PC.

Microsoft now uses the SMB protocol to provide network
file and print services, user authentication, resource browsing and
naming services. It has never been easy to get Windows servers to
support other vendors protocols like NFS because running
non-Microsoft protocols tend to destabilize Microsoft servers. And
if Microsoft provided good native support for foreign protocols on
their client platform it might allow customers to use other systems
as network servers.

By using Linux running Samba it is now possible to
completely and inexpensively replace Windows NT servers on most
networks as well as providing native services to clients on Novell,
Apple and Unix networks. Linux can be used as the glue to bind
mixed environments together. This vendor agnostic server platform
has been in demand for years, and because it has been developed as
a GPL’d application there is little chance for vendors to take that
hard won independence and lock it away again.

The truth about software
development

My company sells Linux consulting services including
server and network integration services, development and training.
Many of our customers use Linux not because it has no license fees,
but because it is stable, secure, reliable and extensible. Most of
our customers, like 95% of all companies that either develop
software themselves or have software developed for them, only use
their custom software internally and therefore the GNU Public
License has little or no effect on them.

The transfer of rights the GPL forces on a developer
occur when the developer extends an existing, publicly available
application licensed under the GNU Public License and then only if
the modified code is to be redistributed or sold. If you use a
modified application internally and do not redistribute it, there
is no requirement to release the modifications you made. It is
considered good form to contribute back to the project that
provided you the software in some way, but it is by no means a
requirement.

If you write something from scratch, even using the GNU
software development tools, you are not forced to license the code
under the GPL. It’s your code after all. The GPL only forces people
who modify GPL’d code and then re-release it to provide the source
code and the right to modify it further to the same people they
provide the modified software to. That’s all.

There is no sinister plot to steal intellectual property,
just a simple, honorable rule that if you use GPL’d source code as
the basis for something new, that you then release the changes you
made so someone else can derive the same benefits you did. Besides,
no one is making anyone use GPL’d code… but if a company
is going to release their code to the world, isn’t it better that
they release it in such a way that potential competitors can’t
extend it behind closed doors and profit from it by
themselves?

Quid Pro Quo

The GPL is only a problem for companies that want to take
code that other people have written, modify it and profit from it
without giving the improvements back to the development community
from which it sprung. There is an Open Source license that provides
the freedom to do this called the BSD License which was developed
to license software developed at the University of California at
Berkeley. Microsoft derived many of its command line tools, such as
the ftp program that ships with most versions of Windows, from
pre-existing code licensed under the BSD license. If you look
inside the ‘c:windowsftp.exe’ program on Windows 95 or Windows 98
you will see this string:

“Copyright (c) 1983 The Regents of the University of
California.”

The FTP program that Microsoft ships with its operating
systems is in fact based on code derived from the BSD version of
Unix, thus saving their developers from developing those tools from
scratch. If that code had been licensed using the GNU Public
License, Microsoft would not have been prevented from
profiting from the work of the original developers
. They
would simply have had to make the source code of the programs
available to the same people to whom they distributed the modified
software.

We’re off to see the Wizard…

Only a small percentage of all software written is
developed for sale or even for use by the general public. The vast
majority of software developed is either for infrastructure
purposes (like device drivers or embedded systems) or for custom
business applications. Neither of these categories typically result
in software that is sold or redistributed in and of
itself.

In the case of device drivers or embedded systems, the
software is often given away with the purchase of the hardware.
Since you generally have to have the hardware to make the code work
it poses little or no problems to make the source available. In the
case of custom business software the source usually has no meaning
outside of the business context it was developed in and since the
application is not likely to be redistributed there is no
requirement to supply the source code to anyone anyway.

Microsoft is free to do what it wants with the software
it writes, but to assume that software licensed under the GPL is
bad for everyone because it might be bad for Microsoft’s monopoly
or the ISV’s that support it is wrong. It supposes first that
preserving Microsoft is necessary or good, which I would argue has
yet to be proven. If Microsoft doesn’t like GPL’d code, by all
means they should stay away from it. No one is asking that they use
or recommend GPL’d code. But arguing that it is bad for everyone
makes them seem like the Wizard from the Wizard of Oz screaming,
“Ignore the man behind the curtain!” The truth is only painful to
people with something to hide. I wonder what truth Microsoft is
trying to hide?


Interested in submitting a Community Column or a letter
to the editor for publication on Linux Today? Contact the editors with a
brief summary of what you’d like to write about (or just mail the
letter). Not everything will be accepted, and we do reserve the
right to edit submissions.

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends, & analysis