Try to release something that is complete enough to be usable and incomplete enough to allow for flexibility.
New releases should be made when the software fulfills all of the following criteria:
Contains sufficient new functionality or bug fixest
Is spaced sufficiently far apart to allow users time to work with the latest release
Be sufficiently functional so that users can get work done (quality)