There's a lot of talk about the idea of releasing software early and often. The idea is that you get software out to your users faster, so you can get their feedback faster. Releasing software often also has the benefit of keeping your users constantly involved in the development of the application. In general, "Release early, release often" is a great idea... if you do it well.
The caveat is that people need to be really careful with what they release. It is okay to release a new version of your software with just one new feature. Releases lacking features are fine. Quality, on the other hand, should never be compromised. That is, you should never release untested software or software with major known problems. You should never think "That's okay, we'll just fix the bugs in the next release. We release often anyways". I find this incredibly annoying behaviour from software companies. Not only is it very frustrating, but it also makes me question the professionalism of the company. Releasing untested programs is never acceptable. It makes a very negative impact on the user's view on the company's stance on application quality. Users understand when your program is still in it's infancy and is missing features, but they shouldn't have to deal with bug-filled applications.
Keep that in mind when you are considering a release of your software. Quality should never be something that is put off for a later release.