Search This Blog

20110112

Shared Source versus Open Source: Talking Back to Microsoft

Note: This is a revised version of my original post on December 04, 2007. It has been corrected and lightly edited to reflect my current position that the Open Source concept liberates the open-minded computer hobbyist to consider all operating system to be equal in their basic use. Although my preference is currently for Linux, I have no issue with the use of Windows. However, my next operating system on my wishlist will be a suitable BSD flavour because it too is more compliant with the Open Source concept. Please read with care over several days. It's long.

Update 20121124.1438

My current computer systems are Crunchbang Linux on my PC and Android on my smartphones. I have yet to find a BSD flavor which boots into a XFCE desktop successfully due to the old age of my computer. However, I do like window shopping to see what Window7 and Windows8 are like.


The following quote is from a transcript of Microsoft Vice President Craig Mundie's remarks on the Commercial Software Model, dated May 3, 2001. While the topic addressed near the end of Mundie's remarks is dated, I will attempt to retort to several of his remarks regarding Microsoft's Shared Source and the GPL-based Open Source software.

Although I am aware that others have replied to Microsoft over the years, I thought I'd reread what Mundie said nearly 11 years ago, and comment on each of the paragraphs of his remarks in response to the overall impression that SS is superior to OS software.

Even though I do not expect Microsoft to ever respond to my commentary and critique of Mundie's position on SS versus OS software, I still have hope someone out there is listening.

If not, then this entry gives me the opportunity to publicize my views on this matter.

Before I start commenting, I'd like to take this opportunity to give a brief history of my interest in computers. It all goes back to 1985 when a friend introduced me to computer bulletin board systems (BBSes). I believe it was on a Commodore 64, an 8-bit machine, but later I'd buy a Commodore SP9000 Superpet and a couple Commodore 64s, plus even a TI99.

About five years later, there's a rumor that Gates said "All you'd need is 64 megabytes of RAM" in reference to the Pentium I. Today, regardless of the platform, your operating system needs much more RAM, in excess of 128MB. Indeed, with respect to Pentium motherboards, 512 MB is barely optimal ; 1GB is ideal and 2GB or more is optimal. With respect to AMD motherboards, 512MB is ideal while 1GB or more is optimal.

It wasn't until 1992 that I could afford my first 16-bit i386 16MHz IBM clone with 4 MB of 72-pin RAM, floppy drive and 100 MB hard drive for about $2000, and play with MSDOS 5.1. Access to computer networks was still through dialup as in the 8-bit computer days of the late 80s and using text, for the Internet had only been a concept an academic in England wrote about in collaboration with a scientist from CERN called the World-Wide Web.

At this one Internet provider, I had access to the Linux command prompt using BASH. Using a text-based interface, it was possible to subscribe Usenet groups and interact with people from around the world, first mainly from the US and then later from Europe, South America and Asia.

Today, the legacy of the Web lives on as the prefix to domain names in URLs and web links. At the time of writing of this article, I used a 733MHZ P2 or better machine with 256MB of 168-pin PC-133 SDRAM, CD-ROM drive and a 20GB hard drive. Today, I use a 2 GHz P4 machine with 2GB of 184-pin DDR RAM, a rewriteable CD-ROM drive with DVD reader, a rewriteable DVD drive, and a 120 GB hard drive.

To help better my knowledge of computer, I learned how to maintain computers as a trade and, in my spare time, learned to administer a LAN, having migrated from Windows to Linux between 2003 and 2006. It was only in 2007 that I fully dedicated myself to Linux, after 3 years of trying out different flavors such as Redhat, Debian, SuSE, Knoppix and finally Ubuntu. As well, I tried FreeBSD and QNX.

While Gates and I only share the fact that we are both college dropouts, he parlayed his interest in computers and electronics into a vast software empire.

However, I honed a growing love of electronics since I bought a book on transistors which was basically the US military's training manual on the subject. Consequently I also breadboarded transistor and later IC chip designs photocopied and written into a notebook at the library in Vancouver.

Meanwhile, Gates was selling software and establishing business models of profit, mainly to gain the respect and admiration of his parents. I on the other hand took the easy yet perilous route to today because for me, status and wealth are almost meaningless.

Today, I live and breathe Linux, and the world is at my hands.

For Open Source has opened up a radical model of livelihood based on the concept that "information wants to be free", and consequently since information is software, "software wants to be free", Therefore I feel that commenting in response to Microsoft VP Mundie's criticism of Open Source - albeit belatedly - is still within my capabilities since my comments address the concept of Open Source Software (OSS).

Why do I wish to comment about OSS? Because Mundie's support of Shared Source software implies a worship of the two things I abandoned a decade before I bought my first IBM clone: wealth, and the power derived from status.

Thus do I liberate myself by freely responding to Mundie. However, this is not done out of any true desire to be on an equal level with him, but to act freely according to the concept of free speech, and thus to express my opinion in a public forum. In doing so, I also endorse the prime concept of Free Software Foundation that software wants to be free.

For Linux is based on Open Source, and is the means of my liberation from Microsoft dependency.




Mundie states:
The phrase "open source software," or OSS, is often used as an umbrella term for a collection of product development, distribution and licensing practices, many of which have existed individually since the early days of computing. There are actually a number of different approaches within this community, but the common traits are providing people with access to source code and allowing others to modify and redistribute that code.

On this point, I agree with Mundie's definition, as he just summed up the history of OSS, its definition and business model in a nutshell.

As a result of Microsoft's statement of position today, many people will attempt to say that Shared Source is Microsoft's failed attempt at being an Open Source Company. This could not be a more incorrect statement. Shared Source is Open Source. We recognize that OSS has some benefits, such as the fostering of community, improved feedback and augmented debugging. We are always looking for ways to improve our products and make our customers more successful, and to that end we have incorporated these positive OSS elements in Shared Source. But there are significant drawbacks to OSS as well.

By stating that Shared Source is Open Source is not true since the SS software community has to "buy" into the SS model. Rather, what Mundie means, is that Microsoft has "borrowed" concepts from OSS and he is trying to confuse us by stating that SSS is OSS. It is not, because if software partners have to buy into SS to get code Microsoft shares with them, SS is not open because OSS and the concept that software wants to be free are implicit.

I suspect Mundie is trying to say that SSS is OSS in order to create cognitive dissonance in knowledgeable people who know that OSS means "software wants to be free". For SSS is anything other than free.

The OSS development model leads to a strong possibility of unhealthy "forking" of a code base, resulting in the development of multiple incompatible versions of programs, weakened interoperability, product instability, and hindering businesses ability to strategically plan for the future. Furthermore, it has inherent security risks and can force intellectual property into the public domain.

I question Mundie's use of the word "unhealthy" but assume that he means forking of a code base is economically unhealthy. It's like upgrading to a new computer but still using both to accumulate data. Unless a method of syncing data on both computers is implemented, the newer computer's data will fork off from the previous compuer's data. One could sync the sources of data from the old computer to the new one, and recycle the old computer.

With respect to software, forks usually occur when the current upgrade stops supporting previous versions. Thus Windows forked off from MSDOS when Windows 2000 was created and forked off again with WIN95/98 and OS/2. As well, XP forked off between Home and Professional, and Vista forked off from XP. With everything before XP being discontinued after 2010, WIN95/98 will become a dead fork. This is from an Operating System point of view, though. Apparently the file formats are still compatible between discontinued WIN95/98, XP and Vista.

However, RTF format forked off from its earliest incarnation RTF 1.0 1987 with most applications being unable to read correctly documents made with Word 3 for Window 3.0.

Inspired by Tex and Adobe Postscript, Microsoft created an RTF module for Windows Word to interface with the kernel to provide "enriched text" using its proprietary fonts and formatting. Even if the OSS community reverse-engineers RTF, there was no guarantee of a good match of "look-and-feel".

Judging from the inability of OpenOffice to accurately read a Microsoft RTF document, I can only conclude that reverse-engineering RTF (a copyrighted format) would violate OSS ideology.

My guess is that the OSS community would not buy into Microsoft's SSS program since its copyright policy makes closed source implicit. If Microsoft truly followed OSS protocols with SSS, then they should "free" RTF and be more implicit with the directives so that default fonts and formatting follow an OSS-like protocol.

Note: This actually happened as of March 2008 for Word 12 with the introduction of RTF 1.9.1 2008.

Some of the most successful OSS technology is licensed under the GNU General Public License or GPL. The GPL mandates that any software that incorporates source code already licensed under the GPL will itself become subject to the GPL. When the resulting software product is distributed, its creator must make the entire source code base freely available to everyone, at no additional charge. This viral aspect of the GPL poses a threat to the intellectual property of any organization making use of it. It also fundamentally undermines the independent commercial software sector because it effectively makes it impossible to distribute software on a basis where recipients pay for the product rather than just the cost of distribution.

The threat Mundie states posed by the viral aspect of the GPL is also economic. What he means when he explains how that aspect "undermines the independent commercial software sector" is that that "viral aspect of the GPL" would affect the financial health of the commercial software sector.

However, it is the GPL that Mundie finds unhealthy to the bottom line of that sector within which Microsoft excells. As well, he is dishonest in suggesting that recipients will pay "just for the cost of distribution". For recipients also pay for the cost of support, which is not the same as distribution since it is mainly service. Upgrades are still part of distribution. Having tech support talk you through the configuration and use of software is not distribution. Yet a recipient who only pays for distribution will be affected greatly if an upgrade crashes their LAN and their IT manager is unable to service it because no one in accounting bought into a workable support plan offered by Microsoft or a third party equivalent of customer support.

OSS only frees the software so that a software company can easily distribute and maintain through support for a price. Both distribution and support allow enough feedback to get back to the software engineers to help them create an increasingly improved upgrade. They are not getting "cheated" of compensation for their hard work creating software since they could also wear hats for distribution and support, thus adding an extremely valuable skillset to their CV by dealing with customers.

In this sense, open source software based on the GPL mirrors the .com business models that proved the least successful during the past year. They ask software developers to give away for free the very thing they create that is of greatest value in the hope that somehow they'll make money selling something else. In effect, it puts at risk the continued vitality of the independent software sector. The business model for OSS may well be attractive for software as an adjunct to hardware the model of the 60s and 70s or for service businesses that do not generate the revenue needed for major investments in technology. But as history has shown, while this type of model may have a place, it isn't successful in building a mass market and making powerful, easy-to-use software broadly accessible to consumers.

Mundie again is assuming that we know what "least successful" means i.e. resulting in losses of revenue. .COM was still successful since it followed the SSS=OSS paradigm to the letter, which resulted in greater distribution but sometomes woefully inadequate support.

In contrast, two decades of experience have shown that an economic model that protects intellectual property and a business model that recoups research and development costs have shown repeatedly that they can create impressive economic benefits and distribute them very broadly.

In short, closed source software equals big bucks. So why are a few users of Microsoft products complaining about getting dinged for support while desiring "ease of use"?

Finally, the fact that we believe strongly in the value of IP protection doesn't mean that we discount the importance of contributing to and supporting the public domain of knowledge as well. We believe that interaction between the public domain and the IP-based sector needs to be based on mutual responsibility and respect.

What Mundie means is "don't steal or reverse-engineer our code". Responsibility here implies the financial one of paying to get to access to their SSS, while respect means "respect the fact that Microsoft SSS is OSS that comes with a price".

There is an important and longstanding tradition for the public domain of knowledge, or "intellectual commons." This is reflected in many ways, including federal support for basic research, the limitations on IP rights reflected in the law and, more recently, the broad practice of contributing technology to public standards groups for the continued development of the Internet. We support this and want to continue to be a constructive and responsible participant in this community, including making contributions to public standards. There is an equally important tradition of commercial companies having the opportunity to benefit from and apply this public knowledge, including by developing commercial products that are protected by IP rights. There are many examples of this, including the many products that grew from research in the space program and the advances in speech recognition technology that followed work done at pre-eminent institutions such as Carnegie Mellon.

"Limitation on IP rights reflected in the law" refers to laws regarding Digital Rights Management which led to MPAA and RIAA rulings that allows them to sue a widow who uses a MAC with no access to p2p software, just because she ripped one music CD onto her computer for personal use, and iTunes reported her. It's another cash grab like the one for software products.

The GPL asserts that any product derived from source code licensed under it becomes subject to the GPL itself. When the resulting software product is distributed, the creator must make all of the source code available, at no additional charge. This effectively makes it impossible for commercial software companies to include source code that is licensed under the GPL into their products, since by doing so, they are constrained to give away the fruits of their labor. As we think about technology, IP rights, and the public sector of knowledge, we need an intellectual model that encourages interaction, not a model that drives them apart. We believe that a shared source model, coupled with continuing contributions to public standards, provides a path that is preferable to the open source approach founded on the GPL.

Microsoft believes "that a shared source model, coupled with continuing contributions to public standards, provides a path that is preferable to the open source approach founded on the GPL." By stating this Mundie contradicts his earlier statement that "SSS is OSS".

SSS based on a license that is not the GPL is not really OSS, for the GPL is what makes it open and thus "frees" it from closed source "tyranny".

GPL liberates OSS by including source code with it. Think of GPL as the Emancipation Proclamation. Consider Microsoft's SSS licensing akin to Southern laws involving slavery.

As of October 2007, Microsoft added its Public License (Ms-PL), renaming it from Microsoft Permissive Licence to Microsoft Public Licence while under review by the Open Source Initiative (OSI). While the Free Software Foundation calls it a free software licence, they make it clear that the Ms-PL is not compatible with the GPL. Indeed, even Microsoft Reciprocal Licence (originally Microsoft Community Licence)is not compatioble with the GPL.

For more information on Shared Source Software, see http://en.wikipedia.org/wiki/Shared_source

For more information on Open Source Software, see
http://en.wikipedia.org/wiki/Open_source


Originally posted: 04/12/07 8:11 PM
Current update: 12/01/11 2:46 PM

1 comment:

Sageb1 said...

While Microsoft Community Answers remain free, chats, email, and phone calls for support are not free.