Open vs. Closed Source Software

Andrew Grant

The biggest burning question when choosing software: free or not free? Both
classes of software have major advantages and disadvantages. The two have a long
and winding relationship dating back over twenty years. A good place to start is
defining how they differ.

The term "Operating systems"
are mentioned frequently in this article. Most users tend to use applications
(i.e. Word), however every computer requires an operating system to function and
those who produce the very popular ones are in a great position of power.

Closed source software (i.e. Microsoft Windows and Office) is developed by a
single person or company. Only the final product that is run on your computer is
made available, while the all important source code or recipe for making the
software is kept a secret. This software is normally copyright or patented and
is legally protected as intellectual property. The owner of the software
distributes the software directly or via vendors to you the end user. You cannot
legally give it away, copy it or modify it in any way unless you have a special
licence or permission to do so.

Open Source software is almost the opposite (i.e. Redhat Linux, Open Office)
and is free to use and distribute provided that certain conditions are met (more
on this later).

Why do people create open and closed source software?

To gain a better understanding of some of the strengths and weaknesses of the
different types of software, it helps to understand why people or organisations
spend time and money creating the software in the first place.

The incentives for producing closed source software are fairly straight
forward. The producer creates a product that you can be sold. The buyers are not
allowed to distribute it further and the inner workings are kept secret. If
someone does anything they are not supposed to, the producer can take legal
action against them. Software is intangible, and once you have made your
program, you can replicate it as many times as you want. This is a huge leap
over building lets say car, where you need more materials for each car you churn
out.

The incentives for Open source software are not as straight forward. What you
have are developers writing commercial level software and effectively giving it
away. The reasons for writing open source software range from those who have a
passion for computing and who want to contribute to make a difference to those
who do not like having to rely on any single company to produce what is needed.
There have been a few cases where open software has been sponsored to act as
competition where another company has been seen to abuse its monopoly position.

Open source software and its authors are legally protected by the GPL
(General Public Licence). When you use software published under the GPL you can
use it for free and give it to as many people as you want - providing that you
do not pretend that you wrote it - this stops someone from hijacking your work
and benefiting as a result. You can make changes and then even sell the
software, provided you make available the modified source code specifying which
bits you changed - you're only likely to sell one copy. The person you sell it
to can then redistribute it freely. The software is provided without warranty,
so a user cannot sue anyone if it breaks.

Which one should I choose?

Unfortunately the decision is not clear cut and comes down to what you, the
end user needs. Below is a quick comparison of the strengths and weaknesses of
both open and closed software.

Closed Source software is created to satisfy a need in the market. In paying
for the software you get some definite perks. You can expect documentation to be
provided with whatever your purchase and you can expect the application to
perform in the way it was advertised. If the software does not work, you have
the option of legal action or some other recourse against the company who sold
you the software. As it is in the best interests of the company making the
software, you can normally count on being able to obtain help / support for the
software that you have paid money for.

On the down side software companies are under great amount of stress to
continually upgrade what they are selling. In most cases software is rushed out
the door before it is ready. This means that the software may not function
correctly in some cases and in the worst case, can compromise the security of
your computer. Most companies deal with this by producing patches that fix
problems that get discovered, however users have a poor record of applying these
patches resulting in thousands of computers around the world being left
vulnerable every time a flaw is discovered.

As mentioned above, closed source software companies are the sole people who
are allowed to build the products that they sell, so in the world there are
relatively few versions of popular software that people use, considering the
millions of computers being used today. For example, a security flaw affecting
the latest version of windows and in turn millions of computers was discovered
in June last year. Most users failed to apply the patch that was issued and
within a few weeks a virus was written to exploit this vulnerability. The result
was many networks around the world being brought to a crawl, clogged by the
traffic produced by this program spreading freely.

Open source software on the other hand is created normally for use by those
who want to use it. Many potentially useful programs are normally aimed at the
proficient user, making it too complicated and inaccessible to the average end
user. This situation has been remedied by organisations who tailor once
unfriendly software to suit end users. The big examples are the Linux operating
system (alternative to Windows) and Open Office (alternative to Microsoft
Office). Unlike closed source software, the software is normally provided
without warranty and you have no recourse should the software malfunction or not
perform, there is also no guarantee of good documentation or support.

On the positive side, the source code to open software is available by all to
read. The code for the bigger projects is therefore scrutinised by more people
than even the biggest software companies can hire and software flaws are
discovered as opposed to stumbled across. Most open source projects allow anyone
to contribute and problems are normally resolved quickly and cleanly.

Open source software packages have had a better security record than closed
source software. As open source programs normally originate for use by the
experienced people who write them, security takes precedence over convenience. A
good example is the way Microsoft's Outlook Express deals with email compared to
Linux or Unix equivalents. In Linux, you first have to save an attachment to
disk, mark it as executable (i.e. a program you want to run) and then run it.
Outlook Express has a preview pane running by default, so when you click on a
message, Outlook automatically goes sniffing around whatever's in the message -
if there's anything malicious in the message, you're probably going to get
infected.

The bottom line

Both open source and closed source software are far from perfect. If you are
new to computers then closed source software is probably for you, as the cost of
training and getting yourself competent will exceed getting the cost of buying
easier to use software. The support offered by closed source companies in Africa
tends to be better than its open source competitors. There are companies that
offer paid support for open source software, but again this is still relatively
small in Africa.

On the other hand, open source software is catching up quickly with its
closed source counterparts. Some versions or distributions of Linux can be
installed completely without having to touch a keyboard and projects are
currently running to improve the documentation available for open source
software. Also as overall computer literacy improves as computers become more
pervasive, open source software will become more appealing.

In the author's opinion, the abilities and friendliness of open and closed
source software are merging, and the real showdown will happen in five to ten
years when the only real difference between the two classes will be the cost.
This can already be seen by hints of the South African and Nigerian governments
considering open source products.

More information:

Andrew Grant is a support consultant in the Information Technology Division
at Rhodes University.

Glossary:

Operating System: The software at the heart of your
computer. It can be thought of as the soul of your computer and determines much
about the way it looks and behaves. It manages the different parts of your
computer and allows them to work together and provides a foundation to run the
applications (i.e. Word Processor / Games etc) that you want to use.
Source Code: This is the code written by a human being in a computer language.
It is the recipe / instructions used to make a program. The source code is
compiled into machine language and then used by the computer. Back

Further Reading:

South Africa considers Open Source:
http://news.com.com/2100-1001-983315.html

Nigeria and Others Consider Open Source:
http://www.infoworld.com/article/03/07/08/HNafrolinux_1.html