Until you destroy your user base.
Previous prominent example was Amarok, which was almost perfect as of version 1.4. But no, they wanted to make it better, and made drastic changes in 2.0, which rendered it next to unusable.
Today's example is the Missed Call Android application, by The Pixels. During its early development, the user interface was changed literally a dozen times, if not more, then UI changes stopped, and application started getting mature - stability and predictability improved, UI has become polished without unnecessary changes. Good, I though, and bought it. Apparently, no good deed goes unpunished, for shortly thereafter the author has allowed several bugs to slip into the new version (in particular, very annoying one - when the missed call LED notification will stay on forever no matter what you do, short of disabling that particular service altogether - and even then some).
But today the reality has exceeded the worst expectations. Another UI redesign - and I honestly liked the old one better. That was the last straw that made me sit down and write this message. Apparently, I'm not the only one - read harsh comments on entries above, and see the application ratings go down.
So I'm thinking - what if we all get together and ask the author nicely to stop fidgeting and make it work, will [s]he listen?
Oh, and you, yes, you, the developer reading this: stop fidgeting and ask your users what they really want.