It's not. When sharing code, there is no obligation to do anything. More people will contribute and share if you have well-documented clean code, but if you just want to throw something up there, that's good too.
Too many people don't contribute at all because the Internet is full of people looking gift horses in the mouth and they figure it's safer to not share at all. And that's not good for anyone.
That's so true. Over a year ago, I put a crappy PHP snippet on snipplr and forgot about it. Last week, I came back and found that eight people had saved it and three had left a comment. It's literally just one line of PHP, but it solved a problem for a couple people.
So sharing a crappy piece of code with poor documentation is better than holding out until you can release a tested product? I don't buy it. Case in point: the many terrible suggestions in the PHP documentation comments.
Yes. It gives the next poor schmuck something to work from.
That's assuming a world, of course, where at least some people actually use free software as something to hack on, rather than as a product to bitch about.
IMHO, there is a difference between 'release' something and 'upload on github'. When you releasing stuff, yeah, it should be briefly documented at least, but when you just upload some new thing to hack on it, it's not the same at all.
Too many people don't contribute at all because the Internet is full of people looking gift horses in the mouth and they figure it's safer to not share at all. And that's not good for anyone.