In software engineering, development stage terminology expresses how far through the development sequence things have progressed and how much further development a product may require.
An alpha version or alpha release represents the first version of a computer program or other product, likely to be very unstable but useful for demonstrating internally and to select customers. Some developers refer to this stage as a preview, as a technical preview or as an early access.
Alpha is the first letter in the Greek alphabet.
The beta version of a product still awaits full debugging or full implementation of all its functionality, but satisfies a majority of the requirements. Beta versions (or just betas) stand at an intermediate step in the full development cycle. Developers release them to a group of beta testers (or, sometimes, to the general public) for a user test. The testers report any bugs that they found, features they would like to see in the final version, etc. When a beta becomes available to the general public it often becomes used almost as widely as the finished product (when developers subsequently complete that product). Usually developers of freeware or open-source betas release them to the general public while proprietary betas go to a relatively small group of testers. Recipients of highly proprietary betas may have to sign a non-disclosure agreement.
Since this is the second major stage in the development cycle, following the alpha stage, it is named after the Greek letter beta, the second letter in the Greek alphabet.
The term release candidate can refer to a final product, ready to release unless fatal bugs emerge. In this stage, the product features all designed functionalities and no known showstopper class bugs. Microsoft Corporation often uses the term release candidate. Other terms include gamma, (and occasionally also delta, and perhaps even more Greek letters) for versions that are substantially complete, but still under test, and omega for final testing of versions that are believed to be bug-free, and may go into production at any time. Gamma, delta, and omega are, respectively, the third, fourth, and last letters of the Greek alphabet.
The gold or release version of a product is the final version of particular product. It is typically almost identical to the final release candidate, with only any last-minute bugs fixed. In commercial software releases, this version may also be signed (used to allow end-users to verify that code has not been modified since the release).
The term gold anecdotally refers to the use of "gold master disks" which were used to send the final version to manufacturers (who use the gold master to create the mass-produced retail copies.) It may, in this context, be a hold-over from music production.
Microsoft and others use the term "RTM" (Release to Manufacturing) to refer to this version (as in, "Build 2600 is the Windows XP RTM release").
In open source programming, version numbers or the terms stable and unstable more commonly distinguish the stage of development. In the Linux kernel, version numbers take the form of three numbers, separated by a decimal point. With regards to the second number, even numbers represent a stable release and odd numbers indicate an unstable release. The practice of using even and odd numbers to indicate the stability of a release has featured in many other open source projects.