Maybe it also is partly due to what users want.
Experience tells me that if a user requests a certain change or feature, I'll try my very best to implement it.
Maybe F/OSS users aren't as demanding.
-Gothi[c]
for context:
i'm not saying 'OSS software is allowed to suck, because...'
i'm saying: 'just give it some thought'
you can only demand so much without giving something in return.
(most) FOSS people are highly idealistic (most of the time) about the work they do.
so imagine you put your sweat and time into a little pet project that you think solves a task better than something else (that might not even exist at the time) and in the end you feel like:
hmmm, i benefit from this, maybe just let others have some fun with it too.
...and along comes a demanding someone who's like: dude, implement this!
so, imho a lot of the open source community honors this (it might not be perfect, but it's free) and isn't as demanding as you might be if you payed for something.
it's community, not revenue.
...one of the reasons that make me cringe every time someone goes into "(software|usability|service) sucks"-mode over some OSS project.
meh.
don't want it? don't use it. there are tons of folks writing stuff you can pay for if you like ;-)