Why writing free software is rational

The cold war is over, fortunately. But what we have seen over a long period of time was an arms race. Even if the term "game" might sound inappropriate in this case, this situation can be modelled by game theory. Imagine USA and UDSSR as the only parties involved in this game and both of them have to decide if they invest resources in producing weapons or not. Of course the gain of one party is the domination of the other if the other party decides not to produce weapons. So you get 4 possible game situation. Both producing weapons; USA producing weapons, UDSSR doesn't; UDSSR producing weapons, USA doesn't; Both not producing weapons. Let's analyse these cases: If no one is producing weapons, everything will stay the same. If one starts to produce weapons, he will get the benefit of dominating the other party. If both are producing weapons, the balance of force will stay even and no one has a gain from this arms race. This situation is certainly worse than the "No one produces weapons" situation, since both parties invest resources into arms production, but can't turn it into a profit. So let's embellish our game with numbers.
Player 1\Player 2 embattle don't embattle
embattle ( -1 -1 ) ( 5 -5 )
don't embattle ( -5 5 ) ( 1 1 )
What you can see here is a Bimatrix. It can be read as following: The rows represent the decision by player 1 while the columns represent the decision by player 2. The cell on the conjunction of their decisions is the profit both player get. There are two values, bottom-left is the profit for player 1, top-right is the profit for player 2. This bimatrix game has only one stable decision, which is "embattle-embattle". If both player chooses "don't embattle", one player can improve it's profit by switching his strategy to "embattle", since 5 is always better than 1. The other player being dominated facing a profit of -5 is likely to embattle himself since it will raise his profit from -5 to -1. So the game ends with only on stable decision pair: embattle-embattle.

This situation is typical ''externality''. This term refers to a situation where the integration of two parties into a single will cause the overall behaviour to change. Imagine there is only one player in this game, which can make both decisions and will get both profits. The ''don't embattle-don't embattle'' strategy will be the best in this case, since it gives the best profit, 2, instead of 0 (embattle-don't embattle), 0 (don't embattle-embattle), or -2 (embattle-embattle). But there is no such player. So this group-optimal solution with profit 2 will never be chosen in reality, or will it be? Isn't it equally rational to optimize the group profit instead of the personal profit in symmetric games, where one can trust on the fact that if the average profit is at it's maximum the personal profit is at it's maximum too?

That's the end of the game theoretic leason. Now this is the "I believe" section. I believe this rationality criteria is better than the blind optimization of the personal profit, since it has the obvious benefit to give both player a better profit in symmetric games. Adding the element of anticipation of symmetricity to a players decision, this group-optimization can be argued even from a personal-profit-maximization point of view: It stems from the fact, that both player are equal and know that they are equal, that both players will come to the same conclusion and know that they will come to the same conclusion. So if one player decises for strategy A, he can be sure that the other player will decide for strategy A too. So the only remaining possibilities are "embattle-embattle" or "don't embattle-don't embattle". Now the decision is quite clear. Every player will choose "don't embattle", because the profit is 1 instead of -1.

Now replace this situation where a software writer has to decide if he gives away his software for free or sell it. As simplification we assume that both players are equal here, as well as produce equally good software. If both player choose to sell their software, nobody has a monetary gain since they exchange equal amounts of money. This situation is worse than the free-free situation because both parties have to invest into accounting, invoicing and probably the transfer of money. Don't get me wrong, money is neccessary when the goods traded are physical. This example only works because the consumption of software doesn't diminish it's value. For real physical goods, the give away would actually reduce the profit, since the owner would be unable to use his own software.

Basically that's what I'm doing with free software. Being a total egoist I develop software for free since I don't have to give up a single thing thanks to the property of digital information that it can be duplicated infinitely (just make 10000 copies of your favorite mp3s) and further I'm gaining the ability to use other software, free! As argued, this solution shortcuts the overhead of using monetary transaction and therefor is more efficient for the group. And you know, for some situation the best choice for the group is the best choice for the individual.