The allure of software unencumbered by licence fees and restrictions on copying and redistribution is strong, given today’s restrained IT budgets. Properly implemented, open source software is a great solution, but you need to know what you’re dealing with.
Although most people associate open source with Linux, the free software movement has a long history harking back to the days of hairy hippies using Unix in US universities.
The Massachusetts Institute of Technology (MIT) in Boston has a special place in open source history. In 1971, Richard Stallman (or “RMS” as he prefers to be known), started at MIT’s Artificial Intelligence Lab as a “staff system hacker”, tasked with improving the in-house-written ITS (incompatible timesharing system) operating system.
At MIT, the hirsute and humorous hacker was exposed to software sharing that had been around for years. Being of strong civil libertarian bent, RMS decided to further the concept of “free software”, defining it as freedom for people, not the price thereof.
In 1984, RMS quit MIT and founded the GNU Project. GNU stands for “GNU is not Unix”, as the latter is a trademark owned by AT&T, but the software RMS produced aimed to be compatible with Unix. RMS is the principal author of GCC (the GNU C compiler) and GNU Emacs editor, and is working on the glibc (GNU C library) and much more software, efforts without which it’s doubtful there would be an open source movement today.
GNU defines “free software” as allowing anyone to run it, to modify it (hence the requirement for open source), to copy and redistribute it, for free or for a charge, in original form or modified.
Although proprietary software vendors often accuse RMS and GNU of being anti-capitalists, RMS always intended free software to make money. His first business venture consisted of mailing out tapes with Emacs on them, for a fee of $US150.
Despite RMS’ ground-breaking work, it’s fair to say that open source didn’t take off until 1992, when Linus Torvalds, a young computer science student in Helsinki, Finland, decided to release a free version of a non-free Unix clone (Minix), for Intel 386/486 computers.
Torvalds named the OS after himself — Linux — and soon picked up a loyal following of users and developers around the world. Thanks to an extremely active developer community and fervent evangelism, Linux is today the face of open source, a fact that some of the older free software generation isn’t always comfortable with. Linux is strongly associated with GNU, and some critics feel that the “embrace and extend” strategy results in non-portability; for instance, a script using non-POSIX GNU Bash instructions might not run on a bare-bones POSIX shell.
You know you’re soaking in it?
You probably don’t know it, but chances are that you come into contact with open source software every day, especially if you use the internet.
When you request a web page, it’s very likely that a BIND (Berkeley Internet Name Domain), server translates the domain name to an IP address for your browser. Web content has a 50% chance of being served by an Apache server, often running on a Linux variant such as Red Hat, Debian or SuSE.
The open-source BSD variants are popular with seasoned administrators, who appreciate their holistic development approach; unlike Linux, which is really an operating system kernel with a “user land” of shells and utilities bolted on by distributors, the BSDs are complete operating systems. In fact, many in the BSD camp refer to Linux somewhat contemptuously as “one big hack”.
Many e-commerce sites secure their transactions with OpenSSL, an open source implementation of the secure sockets layer protocol. The sites might be built with open source development tools such as Perl, PHP, or a plethora of other utilities, languages and databases.
The internet itself is based on open standards, which in turn are often implemented as open source free software.
At the office, you might think your Windows desktop is hooked up to an Microsoft Windows NT or 2000 server, when in fact file and printer sharing is handled by Samba running on a free Unix clone.
Open source is making inroads on the desktop too. Although still lagging behind Windows and Macintosh GUIs in polish and features, many users are turning to environments such as KDE, Gnome and XFCE for their graphical user interface needs.
Another form of licence, The GNU public licence, or GPL, and variations thereof were created to make programs free and unencumbered. However, the licence also requires programs and code derived from work previously released under GPL to remain as free software — that is, source code must be released and there can be no restrictions on its use.
It’s easy to see the reasoning behind GPL: it’s there to protect open source authors’ work from being hijacked, and to ensure the continuity of free software. Nevertheless, GPL is a thumb in the eye for many, especially for commercial entities that wish to release proprietary code derived from open source programs.
The BSD licence has no such requirement. You are free to use code as long as a copyright notice accompanies binaries and source code.
The Developer: A boon for the hands-on
The biggest advantage to working in Linux for Wellington-based software developer John Hurst: “simply having the source code”. This ranks above any slight technical advantages in working with the operating system day to day.
The User: The freedom to grow
Global Online Promotions has been using Linux as the platform for its Kachingo rewards scheme, though it is considering moving to Unix if it expands to the UK.
Housing set to push Linux further
Housing New Zealand has been “kicking around Red Hat [Linux] for a couple of years”, says IT manager Steve Bain. He and his staff have been pleasantly surprised by its stability, the availability of skilled Linux staff and the openness of help and support channels.
Aboard the open source bandwagon
Here’s a short list of some high-profile open source supporters.