Why I use open source

By   |  April 21, 2001

I started using Linux almost two years ago. At the time I was experimenting

with a number of operating systems including FreeBSD, BeOS and Linux.

FreeBSD appeared to be the most stable of the group and was obviously

better suited to a server environment. BeOS, on the other hand, was clearly

built for a multimedia environment but lacked the power and configuration

options of both Linux and FreeBSD and also suffered from a relatively small

application base. Of the group, Linux was the only one with a highly

configurable yet stable kernel, a broad range of both console-based and

graphical applications as well as a very strong support community.

From its early origins as a university project in the early 1990s and its

subsequent release as an open source operating system in the mid-1990s,

Linux has benefited from the collaborative efforts of thousands – even

millions – of largely Internet-based programmers. Being an open source

project, programmers and users have access to the source code and are free

to alter, re-distribute and extend the operating system or any part of it.

Likewise, the many applications that run on Linux systems are developed

using an open source model.

Unlike proprietary software which usually remains a closely guarded secret

throughout much of its development phase, open source software is generally

released early, making it possible for interested programmers to contribute

their skills and talents to improving the code base. While some may see

this as a potentially chaotic state of affairs the advantages of such a

development process can best be described by the phrase “peer review”. With

a ever-expanding group of users assessing and fixing application code, the

speed at which open source projects can react to bugs and code errors is

unprecedented. Contrary to the fear of such a system creating inferior

software, the process actually fosters the development of more advanced

software with new tools being built on previous generations of code. Code

can be “re-cycled” by a broad range of developers making for a quicker time

to market and better products. The best example of this is the Apache

webserver which serves almost 60 percent of the Internet. Despite its

status as a commercial strength application, Apache is still freely

available on the Internet and anyone can contribute to its development.

Choosing to use Linux over any other operating system is not difficult for

users eager to expand the range of their work environment. While Linux was

initially seen as an operating system suitable for server environments,

recent developments have seen the OS establish itself as a desktop OS as

well. Distributions such as SuSE, RedHat and Mandrake have simplified the

installation of Linux and have put Linux well within the reach of the

average user.

For users who require a powerful yet highly configurable operating system,

Linux is a natural choice. Linux is not a monolithic offering and can

easily be tailored to meet both user requirements as well as hardware

constraints. A Linux distribution can just as well be built to run on

pre-Pentium grade computers as it can on high-end server machines.

It’s pedigree as a hacker’s system has ensured that Linux users have access

to an almost endless supply of development applications. Tools such as gcc,

vi and emacs have become standards within the open source programmer’s

toolset and offer programmers a range of development options from C

programming through to Python and Java. Likewise, for Internet developers

Linux offers a production environment second to none. Having access to

commercial strength webservers such as Apache, open source database

applications like MySQL and PostgreSQL and the very powerful PHP scripting

language makes for a comprehensive development environment – all at little

or no cost.

Despite the strength of console-based applications, most users are

accustomed to using graphical interfaces and in this sphere Linux is well

up to the task. In fact, the range of desktop options for Linux is far

greater than on most other operating systems. Most Linux users make use of

the X window system together with a Window Manager such as KDE, Gnome or

Black Box to offer a graphical interface. KDE and Gnome, for example, offer

users a more “traditional” desktop view. In turn, Black Box and AfterStep

offer a less conventional, but more configurable, interface for experienced

users. Recent developments have also seen support for most hardware being

built into the kernel.

But while the brute strength of the Linux operating system is enough to

suit most individuals and companies, it is the community of users that

brings out the true finesse of Linux. Using Linux is an ongoing process of

learning and experimentation. Unlike the products of companies such as

Microsoft, open source development hands software control back to users.

Users are free to experiment, develop and expand their software world

without constraints and use applications best suited to their needs.

Likewise companies can benefit from reduced software costs while still

benefiting from the convenience of tailor made software.

Mail your comments and thoughts to me at alastair@tectonic.co.za.


Comments are closed