Are Betas Taking On Lives of Their Own?
Ant writes "CNET News.com's Paul Festa thinks the final stage of software development, beta versions, are taking on a life of their own, as companies tinker endlessly with their products in public according to a recent article. Google is one of the companies that keep using "beta" term for years for its products."
Whatever happened to the good old days when users *expected* version 1 to be the unstable version and that version 2 or 3 is when the good stuff comes out? In the time it took for Phoenix/Fire(bird|fox) finally exited beta, Netscape had gone from version 1 to version 2 to version 3... anyway, my thoughts on this...
1/ Overuse of betas will lead to a diminishing of the meaning of beta. Favorite examples would be ICQ and Firefox. I used Firefox since 0.6, and it's worked beautifully for me ever since. But *despite the fact that it worked fine enough to serve as my primary browser*, it was considered beta. As more and more people discover this little fact that "beta doesn't really mean beta" then its meaning will diminish. Next thing we know, we'll be talking about long alpha periods.
2/ The versioning system is supposed to give people a good idea of what kinds of changes there have been. The use of beta names diminishes and distorts that. Once again, I return to Firefox. The amount of changes made between 0.6 and 1.0 of FF is tremendous. Based on what is seen on paper, it was more substantial than what 1.0->1.5 would be. With perpetual betas, people have that magical 1.0 barrier that they can't break. So there is a compression and thus distortion of version numbering.
3/ It's a cute new way to push aside blame. Well, it's a beta product, so if it's broke, it's not our fault. Of course, there are time when this *should* have been used (and not used), like Netscape 6. But it's being overused.
4/ This is just pure nostalgia, but I miss the good old days when version numbers would leap ahead and people would be in anticipation of exciting new features. Now, version numbers creep from beta1 to beta2 to beta3 and while there are still cool and exciting changes, they seem marginalized.
I strongly believe that betas should be used for things that are legitimately under development. As soon as it's stable enough that the developer would feel comfortable with using it on a regular basis without it completely blowing up, it's 1.0. Save the perfection and endless tweaking and bugfixing for 1.1 or 2.0; I have yet to see a perfect 1.0, even if eons of time have been funneled into perfection.
to a computer scientist, a hacker is someone who tinkers with access to a supposedly secure system, for not necessarily malicious intent... in fact, such testing of the defenses can even be construed as beneficial
to the general public, a hacker is tantamount to an online terrorist, period
to a computer scientist, p2p is an evolving paradigm, where everything from spare processor cycles to segments of larger files that can be reassembled on the fly can be traded to amplify the power of the internet
to the general public, p2p is where you get free music, period
to a computer scientist, beta connotes a program that isn't ready for final release yet
to the general public, beta connotes an offering from a large computer company/ gateway portal that is just unsupported
now some may see these changing word definitions as some sort of repugnant dumbing down of vital concepts, concepts important to areas of endeavour that some care passionately about, and they resent it
but i assert, from the standpoint of a realist, that since the internet is a phenomenon whose impact reaches beyond the realm of ivory tower computer scientists, such a dumbing down effect of certain terms previously secluded to the realm of computer science is just inevitable, unavoidable, and shouldn't be a reason for any reaction except a rolling of the eyes and maybe some laughter
all words evolve in terms of meaning and usage over time, and computer scientists, even if they invented the terminology, don't own word definitions
intellectual property law is philosophically incoherent. it is your moral duty to ignore it or sabotage it
I've always had a (slightly) different definition (and number of letters) for the various "greek letter" status elements (which I use in my Open Source project, the jSyncManager):
The problem I run into isn't the never-ending beta -- it's the never-ending alpha stage :P. A big part of this tends to have to do with trying to fit in user requests for enhancement, and simply not having the time nor manpower to get it all done in a timely manner (as we're not a project that attracts a lot of developers willing to contribute to the core). Our beta phases tend to be fairly short, in large part because once we hit beta, we've typically hit a feature freeze as well, and are only going to fix bugs.
IMO, if it's not feature complete, you have no right calling it a "beta", as much of your high-level testing is going to be useless if you're going to be adding code during the beta phase. Adding new features effectively "resets" the status back to the beginning of "beta" -- making the term effectively meaningless.
But I guess I'm just old fashioned that way...
Yaz.