To answer your first BTW: Yes we do automated testing. But you can’t test for every possible use case. Developers come up with some pretty interesting ways to do things.
I don’t believe it’s fair to categorize our public builds as beta tests. If you consider a product like Adobe’s Photoshop, they release roughly once per year. That gives them plenty of time to address bugs that are in their product todo/tofix list (known as the backlog). But people have to wait a full year to get new features and those fixes.
The mobile app world is dependent on the Operating Systems and third party features (i.e. Facebook, AdMob,etc.). It would be very bad for us to wait a year to release a new version of Corona SDK to the public. We release about every three months or so. We have to do this because sometimes the vendors force it on us, like Barnes & Nobel’s DRM changes last year, or Apple’s rejecting apps that use UDID earlier this year. If our public version doesn’t address those, then you the customer are broken if you can’t submit.
Sometimes we have important features that you really need like getting plugin support in. We can’t wait a year to deliver these. As such, there is only so much work, be it features, bugs, etc. that an be addressed in each public build cycle and the engineering team has to make decisions on what gets fixed/added and when.
Now for daily builds, yes, those could easily be considered beta builds. We do automated testing on them, but not to the level that we do a public build. When you choose to use a daily build, you understand that we may introduce some regression bugs or the feature may not be as rich as it will be in exchange for early access to features and fixes. We have never referred to those as stable builds.
If we were not in an industry that is evolving at break-neck speeds, a longer fix, add and release cycle might make sense. But in Mobile, you can’t wait a year to get features. In fact we probably should go faster, not slower. This is why the plugin system was critical because we can get features out to the public build faster than waiting on a release cycle.
Hopefully this will give you some insite into the engineering challenges that define how we work.