- By Robin 'Roblimo' Miller -
This topic has been written about at least 1000 times. But hardly anyone seems to have highlighted the biggest practical difference between Open Source and Shared Source: That you can modify Open Source software to fit your device (and other software), while Shared Source only lets you modify your device (and other software) to fit the Shared Source software.
Let's imagine for a moment that you build computers for a living. You have a chance to get your hands on 100,000 UnSuper(tm) CPUs and motherboards at a price so low that it'll let you turn out $149 PCs and still make a profit. The only problem is, every operating system you try running on the UnSupers crashes after 15 minutes of use.
You are eligible for Microsoft's OEM Source Licensing Program, so you sign up for it. And Lo! One of your very smart employees soon figures out a one-line change to Windows that stops the UnSupers from crashing. Then you remember Microsoft's Shared Source licensing terms, among which is this fatal clause:
Licensees may read and reference the source code but may not modify it.
Suddenly your dreams -- of increasing your market share by a factor of ten and making lots of money not only on the $149 PCs but on the monitors and other options that go along with them -- are dashed.
Or are they? Your smart hacker finds a couple of lines of code he can modify in GPL-licensed Linux to solve the crash problem, and since Linux is Open Source you modify those lines and sell those UnSupers -- running Linux -- like they're going out of style, and use your additional profits to give all your employees a raise and buy a 60' yacht for yourself. And since your company's visibility is now lots higher than it used to be, and your sales are going up, up, up as a result, you hire 300 additional people to help you keep up with the demand, and start looking at mansions across the lake from Bill Gates's place.
All that because you were allowed to modify a few lines of code instead of just looking at it. Amazing!
Closer to reality, what if you are a federal IT manager whose agency is eligible for Microsoft's Government Source Licensing Program? You find a (proprietary) COTS (Commercial Off The Shelf Software) program that costs $10 per copy per year and can replace a highly-customized (proprietary) app you're currently licensing at a cost of $10,000 per user per year -- for 5,000 users.
"Hmmmm," you say to yourself, "I can cut our software licensing costs on that application from $50 million per year down to $50,000!"
Except there's this one annoying glitch that causes another important program to freeze every time both are run at the same time, at least in Windows. And this second important application was sold to your agency (which had someone who wasn't as smart as you running the IT department at the time) by a company that has since been bought out by a huge conglomerate that wants $10 million for a code fix -- and since it's proprietary software, this company is the only one that can help you.
Meanwhile, the company that sells the $10 program you have your eye on -- that's really somewhat better than the $10,000 one for your agency's purposes -- refuses to change its product's code for you, and won't even let you decompile the code to see what the problem might be.
So you and a couple of your people spend some nights tromping through Windows, and you come up with a possible solution at the operating system level, a way to load two DLLs differently so the two programs you need don't have any conflicts.
But you're dealing with Shared Source, not Open Source, so you're not even allowed to try the modification!
It's not as if you want to redistribute your modification or sell a forked version of Windows, but you still can't make those changes, at least if you want to follow the terms of the Shared Source agreement.
Oh, well. You opt for the least evil solution, and pay $10 million for a code fix on program #2. No big deal. It's only tax money, right?
Well... maybe the taxpayers don't like to see that "only" in there. Indeed, if they find out about this whole deal, they're probably going to be a little steamed, aren't they?
Maybe those taxpayers will feel a little better about getting ripped off if you tell them how vital the software industry is by using the following information (culled from this Microsoft.com page):
The commercial software industry has shown that it spurs more innovation generating product improvements while driving down the cost of software. It has resulted in the following:
- More than 2 million employed worldwide (source: BSA)
- More than $149 billion revenue annually worldwide (source: BSA)
- Annual growth rate > 13 percent (source: BSA)
- Productivity grew 200 percent in U.S. in last five years; half attributable to IT (Source: Digital Economy 2000, Department of Commerce)
Here's another fine quote from the same Microsoft.com page, which (I forgot to mention earlier) is titled, The Microsoft Shared Source Philosophy:
The Shared Source initiative is a balanced approach that allows Microsoft to share source code with various communities while maintaining the intellectual property rights needed to support a strong software business.
Tariffs on imported rolled metal products were once supposed to be the key to a strong U.S. steel industry, but keeping the price of steel high ran up autmakers' raw material costs and, hence, the price of cars. Steel import duties also increased the cost of refrigerators, power tools, and many other important products. In the end, it proved better for the country as a whole to let most steel tariffs disappear the way purely proprietary software licenses -- even those that hide behind buzz phrases like "Shared Source" -- are gradually disappearing today.
Keeping one industry strong at the expense of other industries is usually not sound economic policy, even though people whose incomes depend on the industry that is losing its strength will always come up with reasons why their industry is an exception to this rule.
Warning: I did not say 'GPL Great! Proprietary evil!'
Software licensing is going through a period of rapid evolution. The idea of "intellectual property" as something that has value just like land, cotton, wheat or a factory is rather new. Software licensing is even newer. And the idea of formalized Free and Open Source software licensing (as opposed to public domain) is newer yet.
Software licensing and the concept of intellectual property are changing so rapidly, and so many people of so many different philosophical persuasions are so busily talking out of so many sides of their collective mouths about it all, that discussions and debates about software licensing and intellectual property often seem to become arguments about personal belief systems that have nothing to do with facts or figures. Or software.
Meanwhile, those of us who try to stay at least semi-rational about all this need to keep several things in mind:
- There are many different Open Source and Free Software licenses, each with its own set of protections, disclaimers, and obligations. And new ones are being written all the time. Obviously, the "perfect" Open Source software license has not been written yet.
- Many software developers prefer to use proprietary licenses for their products, and they have a perfect right to do so.
- If you dislike a particular kind of software license, don't buy software with that kind of license attached to it. That's your right.
- If you feel a particular kind of software license is the only morally justifiable one, don't use software that carries a different kind of license. This, too, is your right.
- No matter what we think about software licensing today, changes in technology and society will almost certainly make our current licensing methods obsolete within the lifetime of the average person reading this article.
But even as we consider all these factors, we must keep one thing in mind whenever we discuss software licensing with people who make a living from proprietary software but want to pay lip service to Open Source: Shared Source cannot legitimately be compared to Open Source.
Indeed, Shared Source is not even related to Open Source in any substantive way, because it gives its users none of the advantages they get from using real Open Source.