What is open source? Why use open source software?
Many consider "free" software to be either stolen, low-featured,
problem-ridden, poor quality and/or unusable software.
It is often said that free software can't compare to commercial
(and especially expensive) software.
This article quickly dispels these myths.
A software's quality (performance, usability, function, stability)
is not related to its monetary cost.
This article also shares some information and thoughts about the
open source and free software movements.
What is open source?
Ready-to-run or packaged software is created by programmers.
Software is built (written) by using computer
languages. The original building blocks of the software is called the
source or source code.
Open source, basically, means that the source code is available -- or
open -- for users and other programmers to read, use and possibly re-use
in different projects.
Open source promotes software quality and reliability by allowing
peer review and advancement and improvement of source code.
In addition, by providing source code, standards and ideas are easily
shared, reviewed and help foster community use.
Although "open source" is now a buzz term, in fact, it has its origins in
development over thirty years old. A variety of code has been written
and shared as freeware, public domain or using a variety of free or near-free
distribution licenses.
For example: BSD, the software and the license used
by a variety of university researchers starting in the late 1970's to
rewrite the proprietary and commercial Unix.
Over the years, the BSD projects developed complete, usable and free
operating systems. They developed ideas, protocols and freely provided the
source code for TCP/IP and other networking technologies that now
power the internet. In fact, due to its generous license,
a lot of BSD source code and ideas are now used in a variety of
commercial (such as Mac OS X), proprietary (like miscellaneous
firewalls) and free software.
Another example is the GNU project. The GNU project, started around 1985,
has the goal of providing free software -- with free referring to freedom,
not price. For example, you have the freedom to run the software for any
purpose, the freedom to modify the software to match your needs,
the freedom to redistribute the software (for free or for a fee), and the
freedom to distribute your own modified versions of the software.
Why use open source software?
A lot of open source has been under constant development for several
years -- a lot of open source software is very mature.
Developers and users have numerous reasons for using open source software:
No or Low-cost --
Free software and operating systems can save hundreds of dollars on just one
simple home computer. And it can save thousands of dollars for a small
office. The lack of licensing fees can literally save hundreds of thousands
to millions of dollars for large organizations and businesses.
There is a total cost of ownership when you include support fees, but these
should be comparable or a lot less than normal mainstream technical support
fees (due to the high security, quality, reliability and stability of
open source systems).
Software Quality, Reliability and Stability --
Software that has freely-readable and usable source code can
be modified, improved, reviewed, tested, and sampled.
Experienced developers and even beginning programmers can
add ideas, take ideas and improve code in many ways. This improves
quality and, in the long run, improves reliability and stability.
For example, numerous open source-based operating systems have shown that
they can literally run for years.
(This code stability can also save money.)
Improved Security --
Open source code encourages review. It encourages users and programmers
to find bugs and security flaws. And when problems are found,
a variety of developers can share ideas and quickly fix and distribute fixes.
Often fixes (patches) are available before the security flaws are officially
announced.
Open source code can have bugs just like closed-source, proprietary software.
Nevertheless, although some problems are harder to find in proprietary,
no-available-source software, these problems usually take a lot longer to
be announced, fixed and the updated software distributed.
Crackers take advantage of problems in open source and closed-source software,
but it has been proven numerous times, that open source software
is fixed faster and is more secure. Due to the open peer review,
open source software bugs are usually fixed before they are exploited.
In addition, due to the Unix nature and peer review of source code, computer
viruses and trojan horses are rare (and mostly non-existent). And
most popular viruses do not work under open source platforms.
Encouragement of open standards and protocols --
Open source code promotes the sharing of ideas. This improves
computer ease-of-use. For example, the internet's and world wide web's
recently rapid growth is based on open standards and open source code, such as
BSD's TCP/IP and DNS (domain name system) code, the NCSA and Apache web
servers, and the Sendmail email routing software.
Companies and individuals who want to promote their software or
ideas make their ideas and software code freely available.
Open source fosters innovation by protecting and sharing intellectual
property.
By using open source software, platforms can be consolidated -- saving money
by enhanced interoperability.
Quick Development --
Open source developers believe in reusing ideas; they believe in
sharing code and not reinventing the wheel.
Nevertheless, they also believe in doing the task correctly.
Ideas and code are rapidly shared and reused in a variety of similar
and different projects.
Thousands of advanced software projects are in active development.
Well Documented / Variety of Support --
Most popular open source solutions are extremely well documented
and a variety of free and commercial technical support options
are available. Due to the nature of community development, documentation
and instructions are often written from a variety of viewpoints -- creating
well-rounded information, instruction and tutorials.
In addition, open source projects can't hide usage techniques, due to the free
availability of the code. Free technical support is often available in
the form of mailing list or newsgroup discussions; nevertheless some
background research, knowledge or experience is often required.
(Puget Sound Technology is commercial technical support option for
open source software.)
Encourage Software Freedom --
The open source model improves consumer choice;
it helps reduce major software companies' monopolies, domination and control.
Quantitative measures for why you should consider open source software
This compilation of studies at
http://www.dwheeler.com/oss_fs_why.html notes the following:
What are some more examples of freely-available open source software?
Open source software is available for eye-pleasing and
easy-to-use graphical, windowing interfaces. And open source
software is available for behind-the-scenes, important server tasks.
Thirty-percent of the server market runs on the Linux kernel and GNU
applications. The Apache web server powers over 6 million web servers
and 70-percent of all websites.
The Berkeley Internet Name Domain software is used by the vast majority
of name servers. Sendmail and other open source mail servers transfer
and route almost all of the world's email.
Yahoo! and even Microsoft's HotMail are powered by BSD.
(It is interesting to note that a variety of open source projects
are developed to run under both Unix-like systems and Microsoft Windows
systems; for example: Apache, Ogg Vorbis and AbiWord.)
Open source software exists for almost every possible computer need;
the following is a short list of categories and popular and interesting
open source programs:
Supercomputers / Clustering --
Free software is used to create low-cost (like $3000) supercomputers
that can compete with computers costing hundreds of thousands and millions
of dollars. Examples: Beowulf, Parallel Virtual Machine, Harness.
Publishing / Document Processing --
Roff/troff/groff, docbook, LaTeX, TeX, ghostscript (postscript).
Office / Desktop Applications --
Star Writer, Open Office, KOffice, GNOME Office, AbiWord (AbiSuite),
The GIMP, Emacs, Gnumeric.
Audio / Video --
XMMS, Amp, festival, Ogg Vorbis, MPEG, MP3, cdparanoia, fxtv, gphoto.
Databases --
Sleepycat DB, Postgresql, MySQL, OpenLDAP, InterBase (Borland),
mSQL (Hughes).
Literally, tens of thousands of open source programs and projects
are available, providing simple to advanced software.
Interesting articles
File Servers for Free: Samba for Small Businesses
... Instead of paying thousand of dollars
for a Windows server, Samba - a free, easy to
administer and stable file server, could be the only
one you ever need!
Linux Server Operating Environment Shipments Posted a 666.3% Yearly Increase in Japan
... IDC predicts ... Linux should grow as a server operating environment at a 44.8% CAGR, capturing a
12.0% share and taking the No.2 position by 2004 following the Windows NT/2000 platform.
Linux Is Red Hot in the Server Market
"... it will become an important area of growth
within the server market as more and more branded vendors come out with Linux server offerings and as end users select Linux servers not just because of
price but because of reliability, availability, and performance as well."
IDC Predicts Linux to be Asia's Fastest Growing Server Platform over the Next 5 Years
Open source code: A corporate building block
The Register: How many ways canst thou measure Linux shipments?
For further information about how using open source software
can meet your needs or improve your organization, be sure to ask us.
Also consider reading our article
"What
is Linux? What is BSD? Why use BSD and/or Linux?".
Puget Sound Technology provides
professional technical support services
(implementation, developing, installation, configurations,
administration and maintenance) of open source-based operating
systems and open source software.
|
Home | About | Services | Training | Contact |