The philosophy of free software

Although you can draw many conclusions from a study of this game, the most important observation Schneier makes is that, whatever scenario you consider, there will always be at least a few hawks in the mix.

If the population started with 100% doves, a few would quickly work out that they could get a lot of extra food for themselves, by acting like hawks, with very little risk since they'd be unlikely to bump in to others acting like hawks, mostly doves. Of course, as the population of hawks grows, there'll come a time when this has bad consequences for the population as a whole. There won't be enough food around for the doves, who will slowly die out after retreating from so many conflicts without food, and hawks will come in to conflict with one another far more frequently and run a greater risk of being killed.

OK, enough talk of hawks and doves. What's this got to do with free software and the GPL? Well, one might conclude that without the GPL "letting us be selfish," as Torvalds puts it, we might find ourselves in a situation with too many hawks stealing code, not contributing back, and gradually eroding trust and participation, which would eventually destroy our population of open source programmers.

In the remainder of the book, Schneier proposes various "security mechanisms" that help us to trust the actions of other people, enabling us to work co-operatively even if we can't necessarily trust the (selfish) motives of the others. While Schneier points to things such as the law, the evolution of mirror neurons, etc, the GPL could also be understood in this sense; that is, as a security mechanism designed to enforce trust and collaboration. And very clever it is too.

Free software and economics

As well as being an interesting case study for those who are interested in co-operation, free software has received a lot of attention for its similarities with various economic systems. A good example of this is Bill Gates, who in 2005 said: "There are some modern-day sort of communists who want to get rid of the incentive for… software makers under various guises."

Now, of course, it's possible that Gates was less concerned with making a serious economic point than scaring free-market loving, capitalist American firms away from using free software; it's an observation that comes up frequently enough that it's worth considering.

The first point to note is that free software has little to do with Soviet communism, in which central planning and a huge police state, complete with prison camps and forced labour, were key features. Those who have followed free software for long enough will know central planning rarely, if ever, happens: the proliferation of packaging formats, distributions, office suites, desktop environments, web and mail servers is evidence enough for this.

What's more, no one is forced to work on free software or to use it. In fact, since all our data formats are implemented in open code, anybody could re-implement them in a competing program without batting an eyelid. Many have seized on these arguments to suggest that - much to Gates' frustration, we should imagine - free software has less in common with Soviet communism than do many proprietary companies.

Businesses such as Apple and Microsoft are renowned for their top-down planning, even praised for it; they're also infamous for the way they lock people in to their software and hardware packages by defaulting to closed, proprietary data formats that competing programs aren't able to implement easily themselves.


Eben Moglen

If free software has little to do with Soviet communism, perhaps it has more in common with Marxism.