Definition of beta, and other software development terms

com_beta-badge.jpgThere was a time, "back then," when a piece of software that was in Beta meant that the application was feature complete, and the developer was simply releasing the software to a small group of users in order to fix any remaining bugs before releasing the app to the general public.

Google changed all that a few years ago when it released GMail to the general public as a beta. To this day, it's still a beta - even though there are millions of users.

That being said, I thought it would be nice to take a look at the definition of some typical software development terms, and what they meant "back then," and what they really mean "now." Read on for the definitions.

Alpha
Back then:

  • The stage of development where there is no user interface, just a file full of code. Features are there, just not usable at this point.

  • The application is only used by the developer himself.
  • Generally, the existence of the app is only known by the developer.
  • No time-frame is set, therefor no expectations are had by anyone.

Now:

  • This is the stage of development where nothing really exists beyond a Photoshop mockup and a not-to-well thought out idea.
  • The developer gets all his buddies to start hyping up the application.
  • A ship date of "soon" is promised to the general public.
  • Little details are given at this point, other than it's the coolest thing anyone will ever see.


Beta
Back then:

  • Application is released to a small control group of users.
  • Features and user interface are complete.
  • A time-frame for the beta is set.
  • Bugs are reported by users to the developer.
  • The developer is busy fixing any remaining bugs, or visual imperfections in the interface.

Now:

  • Application is released to the entire world. Everyone on the planet downloads the heavily-hyped application and begin using it in their every-day work.
  • The application is FREE - as in: if it doesn't work, it's not our problem because you didn't pay for it.
  • Beta time drags on for months, or even years.
  • The developer begins adding this feature and that because a single person said "they would buy it, if only it had..."


Release Version
Back then:

  • After months of thorough beta testing, the product is finally released.
  • Application is bug-free and feature complete.
  • Developer starts working on new features to add to next version of application.

Now:

  • The application, though it made it through the beta stage and didn't get discontinued, sucks horribly and is filled with bugs and missing most of the hyped-up features.
  • The application is overpriced by at least 30-70% - at least, according to the vocal minority of users.
  • Developer announces he doesn't provide support because he can't charge enough (because you guys said you wouldn't pay more than $5 for it when it was in beta) - instead, we direct your to our "support forums" where we hope another user can help you for free.
  • Application breaks two days later after a minor OS security patch.


Discontinued or EOL (end of life)
Back then:

  • After years of active development, the application either no longer makes the developer money, or it has been made obsolete by other technology.
  • Developer posts the application on his site for free, possibly even including the raw code for others to pick-up development.
  • Developer notes that he will no longer develop the application, but will continue to support it for X amount of time.
  • Application dies a slow but dignified death.

Now:

  • Developer is tired of the misplaced user expectations and complaints and simply stops working on the app.
  • Developer still charges for the half-done application.
  • Developer announces that the current version will be the last release due to "technical problems" that are the fault of the OS.
  • Developer announces there will be no bug fixes, so you're on your own.
  • Developer literally disappears off the face of the earth - with your $29.95.

I hope this clears up any questions you may have had about some of the terms you see in regards to software development. The next time you come across a Web site that's hyping some application and has a giant Web 2.0-style Beta badge at the top in a bright orange burst, you can refer back to this post to remind yourself what it means.




LMAO!

That's hilarious. Though I know it's a joke, it's kind of sad that in some cases, it's completely accurate.





That's totally true

I know some Delicious Generation developers that subscribe to these new "definitions."





Good stuff

I think all new developers should read this. I'm tired of betas. Fix the app, THEN release it.





is Google a Delicious

is Google a Delicious Generation developer?....they must be since all their freaking apps are Beta.......bastards.



Post new comment

The content of this field is kept private and will not be shown publicly.
CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
3 + 10 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.