19 May 2006

What is NOT beta software

From Wikipedia:

"A beta version or beta release usually represents the first version of a computer program that implements all required features although additional features may be added. It is likely to be unstable but useful for internal demonstrations and previews to select customers, but not yet ready for release."

Yes, we all confuse terms from time to time but, come on, this one is easy. Isn't it?

What is NOT beta software:

  • An idea you had while having some beers with a couple of friends at the local pub which led to a wonderful (but empty) web site to announce it. (Great way to confuse and disappoint people).
  • An attempt to show how cool you are in a new language or framework by creating a new, incomplete and buggy implementation of a useless program which you never think to finish or mantain. (Does it make sense to call something beta if you're not following a development cycle?).
  • Three lines of code at sourceforge.net that you want other people to develop and finish for you without event knowing exactly what you want. (Do the words 'analysis', 'design' or 'specification' mean something to you?).
  • A program which constantly shows error messages when you're using it as expected. (That's not unstable, that's crap).
  • Desktop software without any kind of documentation, tips or hints on how to install it or use it, that only works on your computer. (Great way to distribute it!).
  • A way to publicize other products or projects by means of a powerpoint presentation about a non-existing program which shows a couple of screenshots you designed the day before. (No comments).
Software development is hard and anyone can do whatever he wishes, but fortunately English is a very rich language. Some other useful terms that may describe some programs more accurately include (from Wikipedia again):

"Pre-alpha: Sometimes a build known as pre-alpha is issued, before the release of an alpha or beta. In contrast to alpha and beta versions, the pre-alpha is usually not "feature complete". At this stage designers are still determining exactly what functionalities the product should have. Such builds can also be called development releases or nightly builds."

"Alpha: The alpha version of a product still awaits full debugging or full implementation of all its functionality, but satisfies a majority of the software requirements. It often lacks features promised in the final release, but demonstrates the feasibility and basic structure of the software."

"Vaporware (...) is software or hardware which is announced by a developer well in advance of release, but which then fails to emerge (...). The term implies deception, (...) it implies that the announcer knows that product development is in too early a stage to support responsible statements about its completion date, feature set, or even feasibility."

Snake oil is a Traditional Chinese medicine used for joint pain. However, the most common usage of the words is as a derogatory term for medicines to imply that they are fake, fraudulent, and usually ineffective. The expression is also applied metaphorically to any product with exaggerated marketing but questionable or unverifiable quality."

So could we all please stop spreading the wrong meaning of 'beta'?


Scott Berkun said...

Good post - I find it interesting how no other industry has been able to get away with this. You don't see beta movies, meals, homes or books.

Anonymous said...

Nice wikipedia entry, thanks for pointing to it.
Oh and by the way, it still a good blog. I just which you'd publish more article :)

Betawriter said...


Sure. This post and my thoughts have a lot to do with your superb post on "machines and innovation"

It's a pleasure to read you here, I'm a great fan of your blog and your book on project management :)


Thanks a lot, I try to do what I can... Currently I don't have a lot of spare time to write :(