Here is my reason. I do it to excercise my skills on fery frequent basis and one major problem is motivation. As in why start a programming project in the first place when no one will really use it in anger. Yeh, I do have a job and it pays well.
Look at it another way. Why do people pay to jump out of a plane when nothing is wrong with it? Oh, don't forget the parachute!
Problem is that too many people are obsessed with money and those that do, well, their brain's get so totally cabbaged when they see something of quality and it's free. Sometimes to the point that such people have to pay lawyers loads of cash to stop the practive of using free software.
At the moment it seems in the commercial works there has begun a scramble to patent every possible idea possible. Research labs exist not really to innovate and discover, but to patent a programming idea before any one Joe Public beats the commercial world to it.
Criky, if corporations could charge the global population for breathing they would!
Look at Japan... Some placed in conjested areas there exist oxygen bars where the public can go and pay to breathe pure clean air! If that's not a warning, what is.
So, software. Reasons for `free`? Loads of them. From `Down with capitalism` right down to `It's there do be done, so why not`.
There is no definitave answer. Only thing for sure is that those who don't understand the concept of `free software` will do everything possible to compete and tear it all down.
Bottom line to your query? It's a better between those who are down right greedy (and hide behind a mask while being greedy) and those who want to do it to assist humanity.
Multi-million software companies really need to be banned globally. Sure, make a profit, if you built something up yourself, no problems, you deserve it, but at some point wealth transforms itself to utter and pure greed and power.
Besides, Bill Gates didn't invent MS-DOS. He purchased the rights off someone else outright, and in the process I think (correct me if I'm wrong) shafted the guy financially when MS-DOS became the hip thing.
I rest my case.