This attitude is why so many open-source projects are shit. That said, the habit of shipping often is a good one to have. But I think it's important to follow through and deliver something of quality every time you ship.
just because you're trying to improve doesn't mean you have to share your bad code with the world.
there's nothing wrong with writing code and trying to improve, but there's something to be said for being a good editor and not releasing every keystroke you type. why release that which isn't good or useful?