John L. Ries wrote:
I think there are a variety of reasons why people contribute to free software, including the failure of the market to provide software that people want at prices they are willing to pay.
... or which works the way they want. That's a main reason for me. Whenever I use some proprietary software, including embedded software on "consumer electronics" devices, I notice various minor issues where I think: a 5-line (or less) change in the source code and this or that would work so much better or less annoying. But without source available, the simple change becomes impossible.
With free software, I just make the change and usually submit it back, if only so I don't have to make it again in the next version if it's accepted, so actually for quite egoistic reasons. (Though, incidentally or not, I find such kinds of problems more rarely in free software -- probably because someone else found and fixed them before me; while with non-free software, thousands or millions can find the same problem and whine on the internet about them, but they can't fix them, even if they'd like to take a little time to do it.)
(Of course, this doesn't mean there aren't also bigger issues in both free and non-free software -- in particular my involvement with GPC was caused by the rather major issue of BP's 16 bit and Dos limitations. But getting rid of thousands of minor nuisances is very helpful.)
Frank