Aaron Swartz in his response to Nick Bradbury's post on software piracy is trying to imply that all software should be free.
On Aaron's home page he refers to GNU's Free Software Definition. This definition lays down four freedoms:
-The freedom to run the program, for any purpose (freedom 0).
-The freedom to study how the program works, and adapt it to your needs (freedom 1). Access to the source code is a precondition for this.
-The freedom to redistribute copies so you can help your neighbor (freedom 2).
-The freedom to improve the program, and release your improvements to the public, so that the whole community benefits (freedom 3). Access to the source code is a precondition for this.
Where as I agree with the first two (0, 1). I find it hard to believe that the programming community can sustain itself, if freedoms 2 and 3 are aloud. The problem is that these two fail to protect the value of the software.
You might argue that this is no different from your right to sell a car second hand. The difference is that when selling a second hand car there is a two-way exchange of value. Not only does the buyer give up value by handing over cash, the seller gives up value by handing over the car. As a result, there is an incentive for the seller to charge a reasonable price. The incentive that sellers have to keep prices up maintains the value of cars as a whole and means that car manufacturers can keep selling cars.
With software, the equation is a little different. As it costs nothing to duplicate software, when you give someone a copy, you suffer no loss. If there is no loss, there is no incentive for the seller to make a charge. Put another way there is nothing to stop two sellers undercutting each other until they are giving the software away free.
An example:
A developer works on a project for three months. It costs him 10,000hmu (hypothetical monetary units) to sustain a reasonable standard of living for this period. 10,000hmu is rather a lot to pay for a piece of software so he decides to sell it for 100hmu in the hope that he can sell it to 100+ people.
The person A decides to buy the software, and decides to sell copies to regain his 100hmu loss. Because in a free market with two people selling the same product the cheapest man wins, he decides to sell it for 1hmu. The 99hmu difference between the 100hmu, person A bought the software for, and the 10hmu it is being sold for does not hurt as the software is not lost in the transaction.
Because of person A's decision, the developer can now only sell his software for 10hmu.
Applying the same logic person B having bought the product from person A might sell the product for 0.01hmu. This not only hurts the developer but it also hurts person A as neither of them can get what they wanted for the software and so the price cutting goes on!
There is a flip side to copyright; it gives authors a potential monopoly. If society grants authors total copy protection, it is easy for a seller to charge way in excess of what a product cost to develop. In most cases, the buyer has a choice of other products that he can use for the same purpose thus generating competition. In other instances, Operating Systems, for example, he may not and this is when the monopolies start.
In conclusion, while there will always be sources of free software, this model of software funding will not scale to the development industry as whole, but until another form of value protection is developed, there will continue to be a risk of monopolisation.
P.S. Is it a coincidence that most producers of free software are academics (funded by government) or students (funded by their parents)?