The Software Development Cycle
Without software applications, it would be very hard to actually perform any meaningful task on a computer unless one was a very talented, fast, and patient programmer. Applications are meant to make users more productive and get work done faster. Their goal should be flexibility, efficiency, and user-friendliness.
Today there are thousands of applications for almost every purpose, from writing letters to playing games. Producing software is no longer the lonely profession it once was, with a few random geeks hacking away in the middle of the night. Software is a big business and the development cycle goes through certain stages and versions before it is released.
Applications are released in different versions, including alpha versions, beta versions, release candidates, trial versions, full versions, and upgrade versions. Even an application's instructions are often included in the form of another application called a help file.
Alpha versions of software are normally not released to the public and have known bugs. They are often seen internally as a 'proof of concept'. Avoid alphas unless you are desperate or else being paid as a 'tester'.
Beta versions, sometimes just called 'betas' for short, are a little better. It is common practice nowadays for companies to release public beta versions of software in order to get free, real-world testing and feedback. Betas are very popular and can be downloaded all over the Internet, normally for free. In general you should be wary of beta versions, especially if program stability is important to you. There are exceptions to this rule as well. For instance, Google has a history of excellent beta versions which are more stable than most company's releases.
After the beta stage of software development comes the release candidates (abbreviated RC). There can be one or more of these candidates, and they are normally called RC 1, RC 2, RC 3, etc. The release candidate is very close to what will actually go out as a feature complete 'release'.
The final stage is a 'release'. The release is the real program that you buy in a shop or download. Because of the complexity in writing PC software, it is likely that bugs will still find their way into the final release. For this reason, software companies will offer patches to fix any major problems that end users complain loudly about.
Applications are distributed in many ways today. In the past most software has been bought in stores in versions called retail boxes. More and more, software is being distributed over the Internet, as open source, shareware, freeware, or traditional proprietary and upgrade versions.