Editor: A draft of this article has been stirring up much debate on the Free Software law mailing list, but this is the first time it's been published at a Web site.
A company selling proprietary software to third parties will never open
its code if the company has a competitor. It will never release its
software under the GNU GPL. If you consider open code a benefit to
society, you may want to propagate open-code legislation or otherwise try
to stimulate new competition in the marketplace.
Garret Hardin, in an article published in Science in 1968, described the
tragedy of the commons. You start with a field that is open to all and
everyone. Any business-minded herdsman will try to keep as many cattle as
possible on the commons. The herdsman will consider the increased benefit
from adding cattle to his herd. However, the added cattle will eat of the
field, and the peers of the herdsman will also add cattle to their herds.
Eventually, cattle will overpopulate the field and the commons will be
ruined, because of the limited resources.
In his essay of 1999, The Magic Cauldron, Eric S. Raymond argues against
Hardin's Tragedy of the Commons. Raymond states that there is no
tragedy when it comes to software because using software does not decrease
its value. Instead, the use of Open Source software "tends to increase its
value, as users fold in their own fixes and features." Raymond states that
the "grass grows taller when it's grazed on." An economist would state
that software is not a scarce resource. Even though that may well be true,
Raymond does not deal with proprietary software developed and sold for
third-party use. If it was as simple as Raymond puts it, should not all
code be open by now, and why did not Microsoft and Oracle open their code?
Even though most software, as observed by Raymond, probably is developed
for internal use, or developed for reasons other than to sell software
products off-the-shelf, a lot of software is still designed to achieve the
latter. Let us assume that Company A and Company B both are in the
database market, selling proprietary database products. Would the
executives in Company A read Raymond's essay and open Company A's code? I
do not think they would, fearing that the competitors in Company B may
both use and profit from Company A's code and not giving Company A
anything back, hence Company B might stay proprietary. Company A might
adjust its business model after releasing its code, but why would it
release its code at all in the first place? The non-zero sum game
Prisoner's Dilemma explains why Company A will stay proprietary.
In the Prisoner's Dilemma as formulated by mathematician Albert W. Tucker,
Prisoner A gains when both Prisoner A and Prisoner B co-operate, but if
only one of them co-operates, the other one, who defects, will gain more.
If both defect, both lose or gain little but not as much as the
co-operator whose co-operation is not returned. Hence, a rational prisoner
will never co-operate. The possible gain is not comparable to the risk
when not co-operating. The game was named after a hypothetical situation,
where the police arrest two prisoners. The police offer them both a pardon
in exchange of evidence against the other prisoner. The prisoners are
isolated from each other. If none of the prisoners help the police, thus
they co-operate, they will both be released because the lack of evidence.
If both prisoners help the police, they will both be convicted, but to
less severe punishment than if only one of them was incriminated. If only
one of the prisoners helps the police, this prisoner will benefit, while
the other prisoner will receive the full punishment. The dilemma is that
the prisoner can only choose between two options, and he would need to
predict the other prisoner's choice to benefit maximally.
In his essay, Raymond uses Netscape as an example of a company
successfully opening the code of a proprietary product -- Mozilla -- to face
the competition from proprietary product Microsoft's Internet Explorer.
The Prisoner's Dilemma scenario is not applicable, because the former
market-leader Netscape had in practice already lost the browser war to
Microsoft when its decision was made. The Prisoner's Dilemma scenario
deals with short-term decision-making. The prisoners have no expectations
about future interactions or collaborations.
The principle of sub-optimization further explains why Company A will not
release its code. The principle states that sub-optimization in general
does not lead to global optimization. Each of the prisoners in the
Prisoner's dilemma will make a decision that will benefit him the most.
However, the optimal outcome for the individual prisoner is not the
optimal outcome for the prisoners as a group. We return to the Tragedy of
the Commons, where every herdsman was involved in sub-optimization, but no
one in global optimization.
The same thing goes for software licenses.
Raymond has mistaken the network effect of software with the destruction
of Hardin's theory in the digital world. The network effect states that
the demand of a new innovation correlates positively with the number of
current adopters. The scarcity when it comes to open code and the related
software licenses is the marketplace itself. You can only market and sell
a certain amount of databases. Company A and Company B may increase
profits by opening the code and sharing development costs, just as the
herdsmen would increase profits by co-operation or the prisoners would go
free if none of them spoke to the police.
Even though society at large and the companies respectively may benefit
from the code being open, the company will not open its code because of the
risk of the other company defecting. Instead, it will focus on
sub-optimization and proprietary solutions. The tragedy of the commons is
more vital than ever.
Hence, if you believe that society would benefit from company A and
company B opening its code, you need to coerce them trough legislation or
by adding new competition. A third company, Company C, may enter the
market with a database solution based on open code, hence dissolving the
Prisoner's Dilemma for Company A and B, and -- if Company C is well
received by the market -- force them to open their code.
response to the question of open code should therefore be to facilitate
competition, preferably through its public procurement policies, or to
coerce the current actors in the marketplace to open their code through
legislation. If the government chooses to do nothing, the old companies
will stay proprietary and the transformation of the software license
landscape will take a very long time, waiting for new Red Hats, MySQLs and
Xiphs in every given field.
Some related links:
Garret Hardin, The Tragedy of the Commons
Eric S Raymond, The Magic Cauldron
Francis Heylighen on the problem of sub-optimization
Play the Prisoner's Dilemma
Mikael Pawlo is an associate of the Swedish law firm Advokatfirman
Lindahl. On nights and weekends he works as an editor for the leading
Swedish open source and free software publication Gnuheter. He is also
contributing editor of the Harvard Berkman Center publication on Internet
law issues, Greplaw.org.
"Commentary" articles are contributed by Linux.com and NewsForge.com readers. The opinions they contain are strictly those held by their authors, and may not be the same as those held by management. We welcome "Commentary" contributions from anyone who deals with Linux and Open Source at any level, whether as a corporate officer; as a programmer or sysadmin; or as a home/office desktop user. If you would like to write one, please email with "Commentary" in the subject line.