Computing Ethics
Software is an easy thing to steal. As a result, computer piracy has become a big problem to the computer software industry. Often, computer piracy is intentional, like buying a program and then selling copies of it to many different people. Computer piracy can also be unintentional as well, however. For example, many large organizations have thousands of computers and employees may have violated a legal agreement with their software supplier by accident. No matter whether you downloaded it, bought it illegally, or it was given to you, using software that has not be legally acquired by you or for you is stealing and illegal. The university has taken a firm stand on the illegal downloading of software in addition to music, movies, and other illegally obtained materials via the Internet. As such the university will take immediate action when notified of alleged copyright infringements.
Below you will find links to the NC State Copyright Infringement website as well as a link to a letter from the Chancellor - discussing illegal file sharing and copyright infringement. The website has very detailed information on what is and is not copyright infringement.
Understanding Software Licensing
Computer software takes a lot of time, energy, and funds to develop properly. Depending on the particular software, the developer has the ability to attach a License Agreement to the software stating the rights the user of the software has with that particular application. One common thing that this License stipulates is the compensation the developer should receive for the use of his/her software.
There are many different kinds of software licenses that you can possess. Here are a few:
- Freeware
Freeware is software that is written and distributed (largely by the Internet) by an individual or a company solely out of the kindness of their hearts. Freeware is totally free to possess, use, and distribute as long as the programmers' names remain on the software and as long as the software is in its original form. Freeware was created because many individual programmers felt that people should not have to pay money for certain software tools that you must use on a computer. For example, tools that let you manipulate files, or compression utilities, or certain other packages that everyone needs. There is a large selection of freeware available for Linux. In fact, there is a complete set of freeware tools by GNU (GNU's Not Unix is what that stands for) available on the Eos/Unity system.
- Shareware
Shareware is software that is distributed with a limited license. Usually with shareware you can use it on your computer for a limited amount of time before you have to pay to purchase the full version of the software. In addition, shareware programs may have certain features (like saving or printing) disabled until you purchase the license.
Shareware is a concept developed from the idea that software is expensive, and you don't want to buy an expensive software package that you are going to continue to use for a long time without knowing what you are getting yourself in to. It is like taking a test drive in a new car. Shareware programs can be found on the Internet or they may be purchased (usually for the price of the floppy or compact disc) from software stores.
- Buyware
Buyware is software that can be purchased for the full software price, and, by opening it, you are the owner of the license. Buyware may not be copied or distributed to other people. In addition, buyware can usually only be used by one individual on one computer at a time.
- Network Licenses
Most licenses are designed with the idea of one user or one computer in mind. There are special licensing schemes that are agreed upon by the software companies and the network owners for network software. For example, on Eos we have different types of licenses for some of our different software packages. Some may only be used by a limited number of people at one time.
Software Testing
Before software is released to the public, it is important that it be tested on many different levels. In today's model of software testing, there are two main phases, alpha and beta. Below is an explanation of each:
- Alpha
Alpha testing is a phase in which the developing company will employ directly a team of people to use the software as intended, find any potential bugs, and report them. This is the first phase of testing a select piece of software will go through, followed by the beta phase. Software may withstand multiple rounds of alpha testing before they are ready to release it to a more public form. The key thing to note about alpha testing is that it is done internally within the company.
- Beta
Beta testing is the second phase of software. In this phase, internal testing by the developing company is over, and the software is released (usually using a lottery system, or some form of first-come, first serve) to the public. In this phase of testing, the company does not hire the software testers directly, but instead, allows them to use the software for free in return of the user submitting reports on bugs he/she encounters. Afterwards, the developers take into consideration all the submitted bugs, apply appropriate changes, and release the software in its stable version.




