Today there was a post on Slashdot about a new image format: FLIF (Free Lossless Image Format). It's an attempt at producing an image format that has better compression for lossless images than existing formats that have not been optimized for that particular task. The project itself is a good idea, and having the format be unencumbered by royalties and patents is also good. But that's not what I'm mostly here to talk about.
In the discussion there have been a lot of comments about the merits and demerits of the GPL (GNU Public License) and GPLv3 (the newest version of the GPL) in particular. People have argued about whether it protects or limits freedoms. It really comes down the question of WHOSE freedoms are being protected, and the same question is also key to many other public debates such as the question of gay wedding cake bakers.
Conservatives, and libertarians in particular, are mostly concerned with freedoms of the SELLER. That is, the people who make goods and services should be free to sell or not sell them to whoever they wish. Liberals are mostly concerned with freedoms of the BUYER; that is, people who want to buy goods and services should be free to buy what they want.
Libertarians claim that they are interested in the freedoms of both sides; that no commercial transaction should take place unless both sides consent. This argument is mostly disingenuous because the situation is not symmetrical; people being compelled to buy a product is rare. (The Affordable Care Act is a notable exception, and to be fair to libertarians they oppose it on those grounds.) In most cases the relatively small number of sellers have more power individually than the large number of buyers do, and it is easier for them to act collectively. I don't think any rational person could argue that black people in the days before civil rights legislation were not harmed by the fact that many white people chose not to sell goods and services to them.
These two freedoms are inherently in conflict. It is impossible to fully satisfy both sides. Society needs to balance the conflicting positions and choose a stand that minimizes the social damage of the conflict.
To my mind it comes down to the question of whether a good or service is offered to the public or is a one-to-one transaction. I believe that if you offer a good or service publicly, the seller, by the action of offering the good publicly, waives the right to be selective about who can buy it. The wedding cake maker must make the cake for all customers, because although the cakes are made to order they are a standardized good; bakers generally offer a few basic designs with minor options for customization. Furthermore, the baker is not an active participant; there is no need for the baker to be present at the ceremony. But I would allow a minister or a photographer to choose not to offer services to a gay wedding because that is a one-to-one transaction where the seller is an active participant in the wedding. (The photographer's role typically goes beyond just lurking and taking pictures; he or she also organizes the standard photo shoots, and sometimes other events such as the cake slicing.)
Going back to the software question: how does this framework apply? The GPL protects the freedom of software users (buyers isn't usually an accurate term because most GPL software is offered free of charge) to use the software in whatever way they wish, including modifying it and offering the modifications to others. But the GPL denies some rights to software authors, notably the ability to keep the software secret. If you use GPL software in your project you are also compelled to release your work under the same terms, and that limits your ability to make money from your work. But the GPL also gives software authors an important right. the right to build on the work of others: you are denied that when people keep their work secret.