The Open Source Option
Frank Cervone discusses why librarians should—and shouldn't—use open source software
Frank Cervone (netConnect) -- netConnect, 7/15/2003
Included in this article:
Link List
Guidelines for Evaluating OSS
The Criteria for OSS
An Open Source Dozen
We've heard a lot about open source in recent years, and the buzz is steadily increasing. But what exactly is open source software (OSS)-and why, as librarians, should we really care? More critically, we need to determine if it really represents a new model for creating software or whether it is just the latest trendy thing. Libraries as institutions need to determine if they want to invest significant time and effort in this software rather than in commercial solutions. We'll look at some of the pros and cons of this new technology and provide a framework and guidelines for librarians to use when considering whether or not to implement open source software.
GNU Project
Opensource.org
Operating System Vulnerability Statistics
OSS4LIB
Peter Gutmann's Homepage
Open source software is not shareware, freeware, public domain software, or any of the 'free' readers or viewers for proprietary software, such as Adobe's Acrobat Reader.
Where the 'free' software movement all started.
www.gnu.org
WA comprehensive resource for all things open source.
www.opensource.org
securityfocus.com
The comprehensive listing of open source programs specifically related to libraries.
www.oss4lib.org
A world renowned expert on computer security.
www.cs.auckland.ac.nz/~pgut001
OSS is a model for software distribution that differs from all of the above methods. With open source you get both the executable version of a program and the source code-text files that contain the programming language statements to perform various operations within the program.
Why you might want the source code forms the critical component of the OSS movement. If you have the source code to a program, you can do a lot that you cannot do with the 'closed source' programs used for almost all commercial software. With OSS, you can review the program code to make sure it is actually doing what you intend it to do. You can modify the program to suit your own needs. You can incorporate the software into another program to perform new functions.
None of this is possible with closed source programs. For example, you cannot modify the source code of your copy of MS Word to meet your particular needs. Nor can you take parts of MS Word and incorporate it into a new program that you've developed. Theoretically, you could change or adopt code with the word processor program in an open source office suite, such as the one developed by OpenOffice.org.
In practice, working with OSS is often more complex than defined above. Over the years, it has come to mean software that conforms to ten general philosophical principles (see 'The Criteria for OSS,' p. 9). Nowhere is 'free' mentioned, although most people assume OSS will cost no money. This is where most of the confusion about open source begins.
The conundrum of licensesThe greatest philosophical debate within the open software movement is whether or not the software should be 'free.' Frequently, the position that it should be free is incorrectly interpreted to mean that it is unethical to charge for software, or that all open source software must be offered without any type of charge. This stems primarily from misunderstandings related to comments made by Richard Stallman, founder of both the GNU project (a 'free' UNIX-like operating system) and the Free Software Foundation. Stallman's definition relates more to liberty than price; in his definition, free relates to the users' freedom to run, copy, distribute, study, change, and improve the software. It is not related to a particular economic system, although there are some hints at that.
Not surprisingly, the ensuing philosophical debates regarding the meaning of free have generated significant disagreement. There are many different takes on the issue of licensing and what is and is not permissible in the open source model. The most popular and well-known license is the GNU Public License (GPL). The GPL enforces the concept of free to its fullest extent. Close to the GPL is the BSD-style license, which originated from the Berkeley Systems Distribution, an early variant of the UNIX operating system. The main difference between the GPL and the BSD license is that source code modifications under the BSD license can be kept private and do not have to be redistributed as part of the package. At the opposite end of the open source continuum is the Apple Public Source License. Many people do not consider Apple's approach an open source license. It includes restrictive clauses that require all changes to the source code be given to Apple and all modifications disclosed to Apple before release of the code, and it allows Apple to revoke or change the license at any time-all of which fly in the face of any open source philosophy.
Open source benefitsThe arguments on behalf of OSS often relate to the many benefits it offers organizations. Although some of these can be questioned-we'll get to those-two undeniable benefits are cross-platform simplicity and an easing of licensing restrictions. These increase the computing flexibility of an organization.
Cross-platform simplicity means that the software does not depend on a specific hardware or operating system platform in order to function. With OSS, it should be possible to run your library management system modules (such as cataloging, acquisitions, and circulation) on any operating system-Windows, OS X, Linux, or anything else-because you have the source code. If your vendor doesn't provide an executable version for your particular needs, you can create an executable version for your computing environment locally with little trouble.
Eased licensing restrictions are a major boon to organizations, particularly those with people working from home or in transit. Using OSS, people can have copies of programs on their machines at home, at work, and on the road and the organization is not penalized for doing so by licensing restrictions.
Free kittens
|
However, this is similar to getting a 'free' kitten-you don't pay for the cat immediately but you certainly do so over the course of the cat's lifetime. All software needs to be supported on an ongoing basis, and OSS is no different. In many cases, the support costs for OSS can be more than the costs for equivalent commercial software. First, installing and maintaining OSS generally requires a higher level of technological sophistication than that required for commercial software. Second, most (but not all) OSS is not as fully developed as commercial software with similar functionality. This results in a general lack of sophisticated tools for the administration of OSS programs, tools that commonly come with commercial software packages.
Other drawbacksSuch lack of functionality carries over into the end user side as well. OSS can be less user-friendly than commercial software. In many cases, this is because of the lower level of maturity of the OSS product. For example, MySQL (an OSS database) does not have the sophisticated end user tools that a commercial database product (such as Oracle) does have. As a result, MySQL can be more difficult to work with than Oracle. This does not mean, however, an open source product will not eventually catch up with a commercial package. It's just that commercial software tends to have an edge in functionality over OSS solutions.
Similarly, user unfriendliness can be the result of a lack of functionality in an OSS that may be taken for granted in commercial software packages. For example, the differences in functionality between MS-Office Powerpoint and OpenOffice.org's Impress products are quite striking. It is clear from even a cursory look that the Impress is a developing product. Similar situations exist with OSS library management systems (LMS). Several are off to interesting starts (such as Koha, Avanti, and Learning Access), but none of these systems comes close to competing with commercial LMS. Yet.
Safe systemsThe most raucous debate surrounds reliability and security. On the pro-OSS side, much has been made about the peer review process of OSS. Since the source code is available, it is possible for many people to view the code, spot errors, and fix them quickly. Linus Torvalds, the original developer of the open source operating system Linux, has a 'law of software engineering' that states, 'Given enough eyeballs, all bugs are shallow.' But that's one of the major problems-the assumption that a thorough peer-review process is in place and working.
Inherent to the peer review process is the principle that there is a peer community and that it is qualified to evaluate the software. Although this has certainly been demonstrated in some projects (such as Apache and Linux), there is no evidence that this is a universal condition for all open source projects. That the peer-review process is compromised has been raised by Peter Gutmann, a noted expert in the area of computing security. Gutmann reports that he planted a comment in some code he released years ago, saying, in effect that 'something really suspicious could happen here.' According to Gutmann, no one has asked him about this, which is a little scary since the comment isn't in there just to annoy people; you could actually build a rather nasty backdoor there.
The other major misconception is that OSS, by its very nature, is less susceptible to hackers. Although this may have once been true, it is certainly no longer the case. The most likely reason for this change is status. Open source systems, since they are now so prevalent, are much more attractive targets than they used to be. According to Securityfocus.com, Linux, and not proprietary operating systems such as Windows, heads the list of operating system vulnerabilities reported in the last several years.
Support variesThis feeds into management-level concern about the quality of OSS and the availability of support. OSS typically does not come with a vendor to support the software.
But just as is the case with commercial software, OSS offers a wide range of quality and support options. At the upper end, the Apache web server has proven its enterprisewide capabilities through, if nothing else, the sheer numbers of adopters. Well over 60 percent of all sites on the Internet run on an Apache-based server. The support for Apache rivals and often surpasses what is available for commercial software. Quite remarkable, considering that support for Apache is freely available at the Apache web site and other places on the web. Furthermore, several companies have emerged that provide support and maintenance services for OSS that is similar in quality and scope to that of higher-end commercial software.
There is OSS that is poorly or simply not supported. Support for OSS depends on many variables, most importantly the level of commitment to the project on the part of the developer and the adoption rate of the software. In general, software that is used by a small niche market is not as well supported as software that enjoys wider use.
Philosophical dimensionsThe OSS movement is based on a fairly strong philosophical base. There is a natural fit, it seems, between many of the principles of OSS and the professed core values of librarianship. As with most things in life, there are tradeoffs between a philosophically pure stance and how we actually perform our mission.
One of the major common-good benefits of OSS is that it can significantly help bridge the digital divide. Libraries in developing nations are able to support electronic access and resource sharing because they can use OSS. Even libraries in wealthier nations are able to provide better services because of OSS. In both cases, it would not be possible for libraries to exist as they do today if they were forced to rely solely on commercial software. They either could not afford it, or the functionality simply doesn't exist in the commercial market.
However, some of the debates in the OSS community serve to divide rather than unite. The strong stances of some open source advocates-that programs should never be sold, that open source licenses are morally superior, that intellectual property should not pertain to programming, and that software should not even exist as an industry-can be chilling. They are often used to quash disagreement or enforce a particular world view. These arguments have slowed the adoption of OSS rather than helped it.
What to do?This philosophical debate should not impede libraries from adopting OSS in circumstances where it will benefit the overall mission of the library. As more people get involved in the open source movement and a larger user base develops, the strident stances of a vocal minority are being moderated by the wisdom of the larger group of users. This is good, because reasoned debate is what will win the day for open source, not proselytizing or bullying.
On the other hand, beware of the argument that declares something inherently good just because it is open source. A case in point, the OpenOffice.org application suite is an excellent first start in competing with the proprietary Microsoft Office application, but OpenOffice still lacks significant functionality that Office users take for granted (compare Microsoft PowerPoint to OpenOffice's Impress to see the most dramatic differences in functionality). In order to make a wise choice, use the checklist (see 'Guidelines for Evaluating OSS') as a starting point in your examination of an OSS package.
OSS has a lot to offer libraries, including an unparalleled opportunity to experiment with 'proof of concept' technologies and services. If you heed the guidelines given and use some common sense, you can use OSS to great effect, enabling a level of functionality that is not possible using only commercial software. Since delivering quality service is one of the profession's most important goals, open source is well worth investigating.
|
|


















