Paper No: 05Principal ICT forInvestigator Libraries Director & Dr. Jagdish Arora, INFLIBNET Centre, Gandhinagar Module : 16Subject Open Coordinator Source Library Software and Applications

Development Team

PrincipalPaper Coordinator Investigator Dr. Jagdish Arora, Director & INFLIBNET Centre, Gandhinagar Subject Coordinator Content Writer

Dr. Usha Mujoo Munshi, Librarian,

Paper Coordinator Indian Institute of Public Administration Content Reviewer

Dr. Parveen Babbar, Content Writer Deputy Librarian Jawaharlal Nehru University

Dr. Usha Mujoo Munshi, Librarian, Content Reviewer Indian Institute of Public Administration

PaperContent Coordinator Reviewer

Open Source Library Software and Applications

I. Objectives • To learn basics of Open Source Movement • Study the History of Open Source • Enumerate the Advantages and Disadvantages of Open Source Software • Open Source Software available for library automation • Open Source Library Applications

II. Learning Outcomes After completion of this lesson, learners would be acquainted to the concept of open source software. They would learn about evolution of concept of open source and popular open source software that are available for automating libraries. III. Module Structure 1. Introduction 2. Open Source: Evaluation 2.1 History of Open Source 2.2 Open Source Platforms 2.3 Common OSS licenses 2.3.1 GNU General Public License (GPL) /Affero General Public License 2.3.2 Creative Commons 2.3.3 GNU Lesser General Public License (LGPL)/ Artistic License 2.3.4 Berkley System Distribution License (BSD)/ Apache Software License/ MIT License/ NCSA License 2.3.5 OCLC Research Public License 3. Open Source Software 3.1 Open Source 3.1.1 Free Redistribution 3.1.2 Source Code 3.1.3 Derived Works 3.1.4 Integrity of The Author's Source Code 3.1.5 No Discrimination Against Persons or Groups and against the fields of endeavour 3.1.6 Distribution of License 3.1.7 License Must Not be Specific to be a Product 3.1.8 License Must Not Restrict Other Software 3.1.9 License Must Be Technology-Neutral 3.2 Advantages of Open Source Software 3.3 Disadvantages of Open Source Software 3.4 Some examples of general use popular Open Source Software's 4. Open Source Library Software (Integrated Library Systems) 4.1 Open Source Integrated Library Systems 4.1.1 4.1.2 4.1.3 OpenBiblio 4.1.4 NewGenLib (NGL) 4.1.5 SOPAC (Social Online Public Access Catalog) 5. Digital/Electronic Library Softwares 5.1 Dienest 5.2 DSpace 5.3 EPrints 5.4 Fedora 5.5 Greenstone 5.6 6. Some important popular Library Management Applications 6.1 ATutor 6.2 CORAL 6.3 CUFTS 6.4 Drupal 6.5 GODOT 6.6 Joomla 6.7 Manhattan 6.8 Moodle 7. Summary 8. References

1. Introduction Open Source Software (OSS), term was coined by Eric Raymond, it is the software for which the source code is freely and publicly available, though the specific licensing agreements vary as to what one is allowed to do with that code. Open source software (OSS) has gained importance worldwide and in the last few years open source has triggered a vast volume of research and has entered the mainstream software market, with the adoption of packages such as (), mySQL (relational database), PHP, Perl, Python (scripting and programming languages), Apache Web Server and the Zope content management system and many more. However the Free software [FS], term was given by Richard Stallman in 1984, is the software which can be obtained at zero cost i.e. software which gives the user certain freedoms. FS provides only executable file to the end user, through public domain and end user is free to use that executable software in any way, but the user is not free to modify that software. Similarly the alternative term Free/Libre and Open Source Software (FLOSS) refers to software licenses which give users four essential ‘freedoms. These include running the program for any purpose, studying the workings of the program, and modify the program to suit specific needs. One can also redistribute copies of the program at no charge or for a fee, and finally to improve the program, and release the improved, modified version.

2. Open Source: Evaluation 2.1 History of Open Source The open source movement started in the 1980s with Richard Stallman who resigned from MIT founded GNU project. Unix is an operating system, whose functionality, he wanted to copy and build upon, but it required community effort. Wanting it to be a free software, he created a different kind of copyright licence, which he termed “copyleft”. “ Milestones in the history of open source software are: • 1983 - Richard Stallman formed GNU project; • 1985 - Creation of Free Software Foundation; • 1991 - Development of Linux kernel by Linus Torvalds; • 1998 - Open Source Initiative (OSI) formed by Eric Raymond. 2.2 Open Source Platforms a. Open Source Initiative [http://opensource.org/]- The Open Source Initiative (OSI) is a non-profit corporation with global scope formed to educate about and advocate for the benefits of open source and to build bridges among different constituencies in the open source community. b. SourceForge [http://sourceforge.net/ ] - SourceForge is an Open Source community resource dedicated to helping open source projects, be as successful as possible. It thrives on community collaboration to help create a premiere resource for open source software development and distribution.

2.3 Common OSS licenses Some of the most common licenses used for Open Source are: 2.3.1 GNU General Public License (GPL) /Affero General Public License- GNU is the most common of OSS licenses, the GPL implements a concept known as “copyleft” that attempts to negate copyright for the purposes of collaborative software development. Under the GPL license, the code for a GPL-licensed application can be used anywhere in any situation; it can be distributed to anyone as long as the code is included and the GPL license is retained; and anyone can create a derivative work from the code and redistribute it, as long as the resulting code is made available and also licensed under the GPL. The Affero General Public License is almost identical to the GPL but includes additional provisions for network access. 2.3.2 Creative Commons - Creative Commons licensing is similar to that of the GPL, but is not designed around software. The Creative Commons license was originally designed for other creative works such as music and film, though it is increasingly utilized within software projects. 2.3.3 GNU Lesser General Public License (LGPL)/ Artistic License- LGPL is normally used to designate source code that can be used by applications for which a charge is levied, so that this code can be used in commercial products, hence “lesser”. The Artistic License is similar and also attempts to mitigate the fear of using code for commercial purposes. 2.3.4 Berkley System Distribution License (BSD)/ Apache Software License/ MIT License/ NCSA License - The BSD license is basis for many other licenses, including Apache Software License/ MIT License/ NCSA License. It is mainly concerned that the copyright of the code be recognized as belonging to the creators and that this copyright be promulgated to applications built with the source code. The BSD license, like almost all OSS licenses, also specifies that the copyright holder is not liable for the consequences of using the source code. 2.3.5 OCLC Research Public License - The OCLC license ensures that modifications are reported back to OCLC if the intent is to redistribute the changes externally. 3. Open Source Software Open source software is where the source code of programs is made freely available for anyone to change and distribute, provided they abide by the accompanying licence. This differs from closed source or propriety software which may only be obtained by some form of payment, either by purchase or by “leasing”. The difference between open and closed source can be characterised by the word freedom: users of open source software have the freedom to alter the source code while users of closed source software do not. Open Source Proprietary

Provides support Commercial Open Yearly License + Yearly and legal Source Maintenance Maintenance indemnification Community Open Freeware or Normally no Free Source Shareware formal support

Fig.1: Open Source is a licensing or business model 3.1 Open Source Open source is the access to the source code and its distribution terms must comply with the following criteria: 3.1.1 Free Redistribution: By free distribution it is meant that the license shall not restrict any party from selling or giving away the software as a component of an aggregate software distribution containing programs from several different sources. Royalty or any other kind of fees cannot be charged for the sale of such software. 3.1.2 Source Code: The open source software includes the source code. If the source code is not provided the downloading via the Internet without charge must be allowed in that case. The source code must be preferred form in which a programmer would modify the program. 3.1.3 Derived Works: The modifications and derived works must be allowed under the same terms as the license of the original software. 3.1.4 Integrity of The Author's Source Code: The license may restrict source- code from being distributed in modified form with different name and version only if the license allows the distribution of "patch files" with the source code for the purpose of modifying the program at build time. 3.1.5 No Discrimination Against Persons or Groups and against the fields of endeavour. 3.1.6 Distribution of License: The rights attached to the program must apply to all, to whom the program is redistributed without the need for execution of an additional license. Similarly the rights attached to the program must not depend on the program's being part of a particular software distribution. 3.1.7 License Must Not be Specific to be a Product. 3.1.8 License Must Not Restrict Other Software. 3.1.9 License Must Be Technology-Neutral: No provision of the license may be predicated on any individual technology or style of interface. 3.2 Advantages of Open Source Software The benefits with Open Source Software are as follows: • Lower Software Costs: Open source solutions generally require no licensing fees. Expenditures can be for media, documentation, and support, if required. • Simplified License Management: Obtain the software once and install it as many times and in as many locations as you need. There’s no need to count, track, or monitor for license compliance. It provides collaborative, parallel development involving source code sharing and reuse. • Lower Hardware Costs: In general, Linux and open source solutions are elegantly compact and portable, and as a result require less hardware power to accomplish the same tasks as on conventional servers (Windows, Solaris) or workstations. So they are less expensive. • Scaling/Consolidation Potential: Open source applications and services can often scale considerably as they have multiple options for load balancing, clustering. • Support: Open source support is freely available and accessible through the online community via the Internet. Many tech companies also support open source with free online and multiple levels of paid support. • Escape Vendor Lock-in: Frustration with vendor lock-in is a reality and with ongoing license fees, there is lack of portability and the inability to customize software to meet specific needs. Open source exists as a declaration of freedom of choice. • Unified Management: Specific open source technologies such as CIM Common Information Model) and WBEM (Web Based Enterprise Management) provide the capability to integrate or consolidate server, service, application, and workstation management for powerful administration. • Quality Software: The peer review process and community standards makes the open source softwares, a quality software. It gives shared approach to problem solving through constant feedback and peer review. The fact that source code is out there for the world to see, tend to drive excellence in design and efficiency in coding of these softwares. 3.3 Disadvantages of Open Source Software • Possibility of slower results due to the rapid development environment leading to the absence of formal management structures. • Open source software can tend to evolve more in line with developers’ wishes than the needs of the end user. • Strong user involvement and participation throughout a project become problematic as users tend to create bureaucracies which hamper development. • Rapid releases and typically more iterations than commercial software creates more management problem. Version control systems are required to track multiple revisions. • The user interfaces of open source products are not very intuitive. Can be less “user-friendly” and easy to use because less attention is paid to developing the user interface. • No single source of information, so users have no ‘definitive’ answers to problems. • System deployment and training is often more expensive with OSS as it is less intuitive and does not have the usability advantages of proprietary software. 3.4 Some examples of general use popular Open Source Software's

• 7-Zip: file compression - 7-Zip is open source software and most of the source code is under the GNU LGPL license. It is a file archiver with a high compression ratio. • Apache - It is a leading server software and scripting language on the web. • Blender - It is a open source 3D graphics and animation software. • FileZilla - It is an FTP client with a fast and reliable cross-platform FTP, FTPS and SFTP client with lots of useful features and an intuitive graphical user interface. • FireFox - Mozilla Firefox (known simply as Firefox) is a free and open-source web browser a web browser. • Linux – Linux is a Unix-Based operating system used predominantly in server. Linux was created by a student in 1991 along with other developers around the world. Linux operating system is free to use and everyone has the freedom to contribute to its development. • MySQL - Mysql is the world's most popular open source database management system. • OpenOffice.org - an office suite software with word processor, spreadsheet, and presentation capabilities, now forked to LibreOffice after lock-in claims from companies which supported OpenOffice. • Perl - A programming/scripting language. • PHP - A widely used open source general-purpose scripting language. • SendMail - e-mail software. • Speak Freely- Internet telephony software. • Thunderbird - Thunderbird is a full-featured email, RSS and newsgroup client that makes emailing safer, faster and easier than ever before. • Wikipedia - Online encyclopaedia open for anyone to update and revise content.

4. Open Source Library Software (Integrated Library Systems) OSS represents an exciting opportunity for libraries rather than forcing a library to depend on products which may not fully meet its needs. Open source allows the library to participate directly in the development of its systems and innovate services in a manner consistent with the values of librarianship. Open source software is software licensed to users with freedom to run the program for any purpose, to study and modify the program and to freely redistribute copies of either the original or modified program (without royalties, etc.). Open source software are also termed as libre software, free software, FOSS, FLOSS and they are reciprocal to proprietary software, closed software (Bretthauer, 2002).

4.1 Open Source Integrated Library Systems

4.1.1 Koha - Koha is a full featured open source library management system and it was initially developed by Harowhenua Library Trust, New Zealand in 2000. Now the project has grown as one of the popular Open Source Library management system by large group of volunteers from various parts of the world. The Software consists of several modules supporting all the activities of a library: on-line catalog (OPAC), cataloging, authorities management, circulation, user management, acquisitions, periodicals, reporting, and administration. It is translated in over 100 languages, and is implemented in more than 900 institutions around the world. 4.1.2 Evergreen- Evergreen is an open source Integrated Library System (ILS) which includes circulation and cataloguing features, OPAC, SIP2.0 support for interaction with management software and search/retrieval through Z39.50. It is a robust, enterprise level ILS solution developed to be capable of supporting the workload of large libraries in a fault-tolerant system. It too is standards compliant and uses the OPAC interface, and offers many features including flexible administration, work-flow customization, adaptable programming interfaces. It features the Open Scalable Request Framework (OpenSRF), that allows developers to create applications for Evergreen with a minimum of knowledge of its structure. It Operates on Debian or Ubuntu Linux servers.

4.1.3 OpenBiblio - OpenBiblio is an easy to use, open source, automated library system written in PHP containing OPAC, circulation, cataloging, and staff administration functionality for the particular interest to small libraries with limited technical expertise and resources of less than 50,000 volumes.

4.1.4 NewGenLib (NGL) - NewGenLib is an outcome of collaboration between Verus and Kesavan Institute of Information and Knowledge management in Hyderabad, India. NGL is developed and maintained by Verus Solutions and Kesavan Institute has provided the domain expertise. It provides many basic ILS functions as well as having several social media functions built in. NGL comprises many open source components, chief among which are , PostgreSQL Database and the well-known search engine SOLR. NewGenLib is licensed under the GNU version 3. It supports MARC21, OAI-PMH and z39.50.

4.1.5 SOPAC (Social Online Public Access Catalog) - SOPAC is a module for the Drupal CMS that provides true integration of library catalog system with the power of the Drupal content management system while allowing users to tag, rate, and review your holdings. User input is then incorporated into the discovery index so that SOPAC becomes a truly community-driven catalog system.

5. Digital/Electronic Library Softwares

5.1 Dienest- Dienest is a system for configuring a set of individual services running on distributed servers to cooperate in providing the services of a digital library. It has been written in PERL. It works more comfortably on Unix/Linux runwebservers.

5.2 DSpace - DSpace is a digital library system to capture, store, index, preserve, and redistribute the intellectual output of a university’s research faculty in digital formats. DSpace has been developed jointly by MIT Libraries and Hewlett-Packard (HP). It is now freely available to research institutions world-wide as an open source system.

5.3 Eprints - Eprints is generic archive software under development by the University of Southampton. It is intended to create a highly configurable web- based archive. EPrints primary goal is to set up as an open archive for research papers, but it could be easily used for other things such as images, research data, audio archives - anything that can be stored digitally by making changes in configuration. It works on Linux O/S and it needs MySQL, PERL modules and Apache webserver.

5.4 Fedora - Fedora is an Open-Source digital repository management system based on the Flexible Extensible Digital Object and Repository Architecture (Fedora). The Fedora repository system is open source software licensed under the Mozilla Public License. It requires Sun Java Software Development Kit, v1.4. Optionally one can use MySql or Oracale 9i to create relational database. It works both on Windows and Unix versions of O/S.

5.5 Greenstone - Greenstone is a suite of software for building and distributing digital library collections. It provides a new way of organizing information and publishing. It is available for both Windows and Linux O/S. It requires PERL software to build collections.

5.6 Invenio -Invenio software developed , maintained , and used at the CERN Document Server. It allows to run electronic preprint or digital library server, online library catalogue or a document system on the web. It complies with the Open Archives Initiative Metadata Harvesting Protocol (OAI-PMH) and uses MARC 21 as its underlying bibliographic standard. It is a free software issued under GNU-GPL license.

6. Some important popular Library Management Applications

6.1 ATutor [http://atutor.ca/] - ATutor's is a Open Source technology and cost effective tool for both small and large organizations, presenting their instructional materials on the Web, or delivering fully independent online courses. It is a Open Source Web-based Learning Content Management System (LCMS) designed with accessibility and adaptability in mind.

6.2 CORAL [https://erm.library.nd.edu/] - CORAL is an open source Electronic Resources Management System developed at the University of Notre Dame licensed under a GPLv3 license. It is web-based and runs in an Apache, MySQL, PHP environment. It delivers modules to manage resources, licensing, organizations (publishers, vendors, societies, etc.), and statistics. These modules link resources to licenses and providers, but they can be implemented independently. It also allows integration with different link resolvers (currently only SFX).

6.3 CUFTS [http://researcher.sfu.ca/cufts] - CUFTS is open source software developed at the Simon Fraser University Library. It was designed for use in a consortial environment, but can also be used by individual libraries. CUFTS is an Online Serials Management System, which includes a knowledge base of full-text journal collections, a searchable A-Z database of databases (the CUFTS Resource Database or CRDB) and A-Z journal database (the CUFTS Journal Database or CJDB), MARC records for each title, direct to article OpenURL link resolving (GODOT), and electronic resource management (ERM) tools.

6.4 Drupal [https://www.drupal.org/]- Drupal is a free and open-source content management framework written in PHP and distributed under the GNU General Public License that allows to easily organize, manage and publish content, with an endless variety of customization. It is a content management platform powering millions of websites and applications. It’s built, used, and supported by an active and diverse community of people around the world.

6.5 GODOT [http://researcher.sfu.ca/godot] - GODOT is open source software developed at the Simon Fraser University Library. It is Full-text Links from CUFTS, Interlibrary Holdings Locator. GODOT provides direct links to fulltext collections, using the CUFTS knowledge base, and also reveals holdings in the library catalogue or in other locations. It also embeds links in library's citation databases or other resources.

6.6 Joomla [www.joomla.org/] - Joomla is a Content Management System (CMS), which enables to build Web sites and powerful online applications. The core Joomla framework enables developers to quickly and easily build Inventory control systems; Data reporting tools; Application bridges; Custom product catalogs; Integrated e-commerce systems; Complex business directories; Reservation systems and Communication tools.

6.7 Manhattan [http://manhattan.sourceforge.net/]- Manhattan was developed by Steven Narmontas, head of the Educational Technology Center at Western New England College. The first version of the system was used at the college back in 1997. In October 2000, the software was released in its entirety on the Internet for free under the GNU General Public License. Manhattan Virtual Classroom is a fast, stable and effective Course Management System that runs on Linux and other Unix-like systems. It's written entirely in the C programming language and is a database-free software. Today, Manhattan is in use around the world, and continues to be actively developed.

6.8 Moodle [https://moodle.org/] - Moodle is freely Open Source software for learning, under the GNU General Public License designed to provide educators, administrators and learners with a single robust, secure and integrated system to create personalised learning environments. Moodle is built by the Moodle project which is led and coordinated by Moodle HQ, an Australian company of 30 developers which is financially supported by a network of 60 Moodle Partner service companies worldwide. It provides the most flexible tool-set to support both blended learning and 100% online courses.

7. Summary Open Source Softwares are dominating the infrastructure of Internet and Web services and present libraries also. OSS has continued to grow and so come the open source applications in libraries. These softwares and applications are more stable, secure, auditable and extensible than the commercial alternatives. Moreover using OSS guarantees that the standards and protocols used in the library will be open to examination and helps the library community to build upon previous success.

8. References 1. Barahona, J.M.G. (2008), “The advantages of openness”, El professional de la information, Vol. 17 No. 1, pp. 5-7. 2. Feller, J. and Fitzgerald, B. (2002), Understanding Open Source Software Development, Addison Wesley,London. 3. Open Source Initiative http://opensource.org/osd 4. Open Source Softwares- E-Learning Resources [http://www.grayharriman.com/open_source.htm 5. Parminder Kaur, Hardeep Singh. Open Source Software Development Models – A State of Art 2nd International Conference on Methods and Models in Science and Technology (ICM2ST-11) AIP Conf. Proc. 1414, 128-132 (2011); doi: 10.1063/1.3669943 6. Perens, B. (1999). The open source definition. In M. Stone, S. Ockman & C. Dibona (Eds.), Open sources: Voices from theopen source revolution. Sebastopol, California: O'Reilly & Associates.