minilop.net/ Open Source in Libraries: Philosophy and Tools

Denise and Jamey Sharp
February 2004

Jamey: I'm Jamey Sharp, an undergraduate at PSU studying computer science, and I'm here today with my mother Denise. My mom is on the staff of the Bonneville Power Administration's library and a Master's of Library Science student at Emporia State University.

We think libraries should be using free and open source software, and we'd like to tell you why. We want to tell you

what Free Software is

Let's start with a definition of free software. The Free Software Foundation gives four requirements: the software must provide the freedom to

This definition has to do with freedom more than with price.

By contrast, proprietary or closed-source software prevents you as a customer from doing any of these things. Squishysoft products, for example, may only be studied and modified by people who are Squishysoft employees. That's because only those people are given access to the source code, those instructions that tell the reader and the computer how the program works.

You know, I used to be a huge fan of Microsoft and Windows. When I was 12 I spent $300 of my own money to buy the newest, coolest version of Windows NT Workstation 4.0. Over time I had some reliability problems and I decided I was ready to try something else. Linux, a free software alternative, was that something else. Linux was newer and cooler, even if I didn't know how to do much with it. But somehow, as each new version of Windows has come and gone, free software has always had something newer and cooler to offer me.

As much as I was enjoying playing with Linux in 1998, I wasn't too sure about giving it to my parents. I kept Windows on my mom's computer for several months before deciding that I was tired of dealing with it. She went to Linux kicking and screaming, but...

Denise: ...Jamey set me up with a Windows-like interface and I saw that I was able to use it to do most of what I wanted. I also noticed benefits to using free software. Prior to 1998, my husband and I spent a lot of money on computer hardware, software, and books for Jamey. After he got into open source, anything he wanted he could download from the Internet. We were amazed at how much money we saved! Also, when something broke Jamey could (and did) fix it. Jamey wouldn't fix our Windows, because he couldn't: the information he needed wasn't available.

a library example

The way I got involved in free software for libraries was that I found out that my library at work was spending $9,000 per year on library software in the middle of a budget crunch. I suggested that we try free software, such as an Integrated Library System (ILS) I had found called Koha, but I was told that free software was "too new and untested". So I took that as a challenge and decided to test it myself. Well, to make Jamey test it, really.

There were a bunch of different things I found when I did a search for free software for libraries. Besides ILSes like Koha, Emilda, Avanti, and OpenBook, there are lots of other library systems being developed as free software for libraries. There are systems to manage collections, MARC record readers and writers, bar code printers, Z39.50 searchers, web-based ILL, and many others. A long list of projects can be found on the oss4lib web site. I was excited by all of these choices.

After some study, Jamey and I decided to try the Koha ILS software for our cataloging task. Choosing which Free Software to try can be a tough decision: there are often several good-looking alternatives available. One of the advantages of going with Free Software is that a full evaluation can be done without spending any money or making a long-term commitment. There were several good options for us to choose from. In the end, it came down to the fact that I had read an article about Koha, and so I knew that someone out there liked it. I was looking for something that would work similarly to what I was used to working with. We ran down Koha's feature list, and it looked like it would do the job. We were ready to give it a try.

Koha demo

I have worked in libraries long enough to know there are always bugs you have to work through when you install a new system. I was also struggling to understand Koha's powerful but extremely complex cataloging system. I wasn't surprised that I made a mistake on my first attempt to input some bib records into the first version of Koha we tried, but I couldn't find a way to correct my mistake and I was frustrated. Jamey couldn't figure it out either. What's more, as we read posts to the Koha mailing list, we saw that others were having some of the same problems.

Jamey: I assumed the problem was that we were using the latest unstable version, but we had no better luck with the stable version. Normally you would expect that the last “stable” version of software would be pretty well set. There would maybe be a few small bugs to fix or work around, but no great changes would be needed. Where development is really done is in the unstable versions. At the time we were testing Koha, this didn't seem to be the case.

What we learned from working with Koha is that it's still new, but one of the cool things about free software is the rapid pace of development. In the last month, the Koha developers have put out three "release candidates" for the upcoming stable version 2.0.0. That means that while each one was released to fix more bugs, the developers believe they're about ready to announce version 2 of Koha.

strengths (and weaknesses) of Free Software

We believe that libraries everywhere should be seriously considering using free software. Hopefully now you've seen some of the reasons for that. But there are more. Free Software is adaptable. Free Software tends to have free, strong, consistent support over the long term. Free Software is cheaper, both directly and in other ways. Free Software is secure.

Denise: With free software, since the source code is open, the software is adaptable to the needs of any library. For instance, people are working on translations of Koha to French, Chinese, and Polish. Who better to translate a piece of software to a new language than someone who has been speaking that language all of his or her life? No proprietary software vendor can afford to offer a wide range of language translations. The free software community can do it at no cost and for exactly the communities that want it.

On the Koha discussion list, there was a recent query by a Systems Librarian in Africa who wants to promote Koha to libraries in Eastern and Central Africa. He wanted to know if Koha is going to be around for a long time, because he has to train librarians who are spread out miles from each other to use the system. He needs it to be easy to use and well supported. The folks who wrote Koha and the folks who maintain it assured him that they use it themselves and thus are committed to it for their own sake.

As long as others are interested in using the software you're using, support and development will never end. With proprietary software, if the company decides to no longer support the version of software you're using or the company goes out of business, you're out of luck. In the news recently were reports that Microsoft has extended the period of time they will offer tech support on their older software (see Microsoft: Windows 98, Windows 98 Second Edition, and Windows Millennium Support Extended and ZDNet UK News: Windows 98 gets support reprieve). Some have speculated that the reason is because developing countries are becoming increasingly interested in using free and open source software (see "Microsoft Extends Support for Older Windows Versions", in WinInfo Daily UPDATE, January 13, 2004).

There are developers all over the world maintaining and improving free software. When the source code is open for everyone to see, more people are looking at the code and any defects have a better chance of being found and fixed. The open source community is very good about sharing fixes they've found and the bug is usually solved quickly.

You don't tend to have to pay as much for free software as you do for proprietary software. There are a couple reasons for this. With proprietary software, you have to buy a license for every computer you plan to install the software on, whereas with free software there is no license fee. Sometimes there are other charges for free software such as paying for a CD for easy installation or hiring a consultant to install and maintain the software. However, studies have shown that these costs are lower than the cost of proprietary software in a number of market segments.

Another thing to consider, as far as cost is concerned, is that open source software, old and new, can run on older hardware so you don't have the expense of continually upgrading your software or of upgrading your hardware to support your software. A wonderful example of this is that Koha was originally developed for use on old 486 and Pentium computers, hardware from the early '90's!

There's a perception that if the source code is open for everyone to see and anyone to make changes to, bad people could break in more easily and violate patrons' privacy. Sure, a hacker - or the government! - could conceivably gain access to patron records, but that's true regardless of whether you're using proprietary or free software. There are two forms of risk management. You can reduce the risk by regularly auditing your code, which you can do with open source code or hope your vendor is doing with proprietary source code. The other form of risk management is to reduce the amount of information an outside person could get from hacking into your system. An example of this is making records of books in a patron's record history disappear as soon as they're checked in.

why Koha exists

You might wonder where all of these projects came from. What kind of people would just give away this software that our libraries are paying thousands of dollars for each year? I'm glad you asked! Let me tell you a story.

In 1999 Horowhenua Library in New Zealand had a problem. They had a library system that ran quickly on a dial up modem, but it wasn't going to be Y2K compatible. They started looking around for another library system, but they were getting discouraged. Not only would it be expensive to switch to a new system, but the ongoing expenses for maintenance and connectivity were going to be expensive too.

Katipo was a computer consulting company that had worked with the Horowhenua Library for a few years, and as Katipo watched them go through the search process, they came up with a solution. Katipo would build a library system that would work over the Internet for the Horowhenua Library. The two groups worked closely together for several months, and on January 3, 2000, Koha debuted.

Katipo suggested, "Look, we're a small company and we may go out of business some day. Neither you nor we want to be in the business of selling software, so let's make this open source. Then other libraries can use it and developers around the world can maintain it for you. The more libraries adopt it, the better for you."

Free Software: community and philosophy

Before I got involved with the free software community, I thought of them as an idealistic and advanced class of alien life forms. What I found was that techies are human too. Sometimes you need to massage techies' egos to get the help that you need. At the least you should be polite when asking for assistance: I've seen free software developers ignore obnoxious requests just like anyone else would.

Remember, free software developers need to feed their families too. For many, their free software work is a spare-time labor of love. If you're not helping to feed their families, and you're not providing encouragement for the labor of love, they have no incentive to help you.

This also means that they have limited time, and need to use the time they have as efficiently as possible. The more help you can give them in understanding your problems and needs, the less time it will take them to help you and the more willing they will be to do it. Requests for help should include the specific names and versions of software you're using, the problem you're having including error messages if possible, and the things you've done and read to try to solve the problem yourself. Be cautious about speculating what the problem is. If you don't know what the problem is, just say so.

Some people in the free and open source software community care a lot about what the community, the philosophy, and the software are called. In particular, advocates of free software often want to make sure that it is kept distinct from open source software. You may notice that I have difficulty calling it free software because over the years I've always heard Jamey talk about open source. My mentor, MJ Ray, requested that I talk about free software, but I had a hard time understanding the distinction. I asked Jamey, who asked his advisor, and together this was what we figured out.

First, a brief history. In the 1950s and 1960s, source code to computer programs was commonly given away---some was sold in source form. In 1983, the courts ruled that executable software is copyrightable. By then, the "shrink wrap" market had already developed pretty well, and most proprietary source was locked up. In 1985 Richard Stallman founded the Free Software Foundation (FSF), dedicated to the idea of giving away source under a license that required others to share it also. In the 1990s, Eric Raymond popularized the term "Open Source" for "just giving away source" in the old style, and founded the Open Source Initiative (OSI).

There is essentially no difference between free and open source software in their philosophy of whether money may be charged for the software. The name “free software” is intended to evoke ideas like “free speech” rather than “free beer”. Free software has a stricter license than open source software. The difference is that the free software people expect you to keep the code free when you pass it on to other people, and they have to keep it free too. With open source, you can restrict parts of the code that you write from being open for other people.

Thus the FSFers and the OSIers largely agree on goals and methods, but disagree on the details. Richard Stallman and the FSF believe that "If we don't attach restrictions, people will hide (`hoard') the source they are given." Eric Raymond and the OSI believe that "If we attach restrictions, our source won't be widely adopted." Both positions have merit.

conclusions

There's a whole philosophy of openness that's springing up in all sorts of places these days. You see it in periodicals such as PLOS Biology, a publication of the Public Library of Science, which is a low cost, peer reviewed periodical that makes the latest research more affordably accessible. You see it in the free and open source communities. And it's been in libraries for years. The philosophy manifests itself in free access to information, in giving back to the community (for instance, the name "Koha" means "gift" in Maori), in improving the state of society, and in using peer review to ensure the quality of the information.

Jamey and I think free software like Koha has tremendous potential for libraries. Free Software fits with libraries in important ways. The philosophies match, and the communities are compatible. Most of all, the needs of libraries are well met by Free Software systems. The low cost, high quality, openness, maintainability, well-adapted feature sets that come naturally with Free Software are welcome attributes for libraries currently struggling with their software systems. We urge you to explore the world of Free library software.

acknowledgments

My Koha mentor, MJ Ray, of the British consulting firm Turo.

Professor Bart Massey of Portland State University's Computer Science Department.

Brunson Moody, graduate Computer Science student at Portland State University, for his insights into the relative merits of free software as compared with proprietary software.

Participants on the oss4lib mailing list, including Chuck Bearden and Ed Summers, for their comments on security and patron privacy issues in free software.

more information

You might enjoy the quotes we didn't use.