Linus Torvalds |
|
|
|
|
|
|
figure 6
figure 7 |
I'm giving
a few examples just to show that this is certainly not something
to do with just software. My personal favored example is science,
with which I'm familiar. In Europe, the scientific thought model
is considered to have start in the 1600s and 1700s, and it replaced
a different thought model completely. It took a long time. Social
changes are really never fast, but science basically replaced the
notion of alchemy and replaced it with something that is very much
based on the ideas of evolution. Combination of existing ideas to
create new ideas is how the big scientific discoveries come about,
and the small scientific discoveries, the ones that may not win
Nobel Prizes, the small incremental improvements, are equally important.
Competition and selection, the notion of having to be able to disprove
a theory and using that as a selection criterion for goodness or
badness, is very much a part of the scientific thought model. The
model it displaced was the model of alchemy, where you had closely
guarded secrets and you tried to keep as much knowledge to yourself
because you used that knowledge to improve your personal life. That
was intellectual property in the Middle Ages in Europe.
I'm going to give another contrast, religion. I'm not saying that
science and religion are, in any way, enemies. I'm only trying to
show that they have very different thought models. While science
has a thought model that tries to encourage evolution, religions,
most of them at least, tend to consider both mutation and selection
harmful. Religions often do not want change in their basic knowledge.
They have a body of knowledge that is considered sacred and the
sacredness is a barrier to change. You don't have intellectual property
but you have another barrier to evolution.
Figure 6
Every software developer is very aware of one of the big notions
in evolution, namely incremental improvements. Software, as we know
it today, could not exist without incremental improvements. It's
very expensive to create software so you have to take existing pieces
of software and slowly improve them. Everybody knows this.
But other parts of evolution are actually things that traditional
software development, or at least commercial software development,
has not been very happy with -- especially competition. Competition
is bad. Competition is something most companies would rather not
have because it's very expensive. It is expensive both within the
product itself, where you need to have competing lines of development
to see which one is actually the best, as well as between competing
lines of development. It's also very tough to have competition as
part of the ecosystems, where you have competing companies trying
to go for the same niche, because competing companies all have a
very high barrier to entry in terms of the initial sunk cost of
creating a product. And, as we all know, software has inherent networking
effects, which means that once you get dominant in a niche it's
very hard to displace you.
We in the software industry also have the problem of trying to limit
the recombination aspect of evolution, again through intellectual
property, and this is used as a barrier to entry in traditional
commercial software development.
Figure 7 |
|
|