OK, just a small point on making money from software (or computers in general).
Just take this example.
- The government needs a program to make geographical charts.
- One of it's institutes gets an amount of money to do it
- Said instituted has programmers/designers working for it, who do the job.
- They release the result under the GPL
- Any other government body can also use the resulting software
- I, the taxpayer who funded the development in the first place can also download the software and even improve it if I had a use for it. This benefits me and the program maker (maybe the modifications I made ar usefull for the government too).
The other alternative is to pay a commercial vendor who keeps the code.
- I fund the goverment which pays the company
- the company pays the programmers (most likely in a low-wage country)
- The goverment has a license to use the program. If another service wants it, it costs money all over again
- I cannot use nor enhance the product I helped pay for. So the possible benefit for myself and others is lost.
The number of paid programmers is about the same, yet the benefits to society as a whole are much greater with Free Software.