a) people make stuff that they need themselves and share it so in a way it is need-based.
b) yes it doesn't work in situations where there is need but no ability. I am guessing such situations are rare, because projects in many cases are willing to make modifications to help a large portion of their users. Also because there are usually enough people able to do these things to fit most needs. Finally, if you are a part of this microcosm, you can probably code yourself.
a) "need" in the Communist/Marxist sense is definitely not the same as "want". I know that need and want exist on a continuum, but most software development is pretty firmly in the "want" neighborhood. When Marx used the word "need", he was talking about safety, food, shelter, clothing, etc. Porn and video games aren't the modern day equivalent of those things. That's part of the reason why the Marx philosophy doesn't necessarily match up with FOSS.
b) Even ignoring "need" vs "want", tell that to my mom's quilting club. The venn diagram of quilters and coders has an extremely small intersection. The same can be said for tons of activities that old ladies and women in general enjoy.
a) people make stuff that they need themselves and share it so in a way it is need-based.
b) yes it doesn't work in situations where there is need but no ability. I am guessing such situations are rare, because projects in many cases are willing to make modifications to help a large portion of their users. Also because there are usually enough people able to do these things to fit most needs. Finally, if you are a part of this microcosm, you can probably code yourself.