Saturday, March 24, 2007

LEVERAGING OPEN SOURCE SOFTWARE

(Text of talk delivered at the 9th e-Governance conference on 3rd February 2006 at Kochi, Kerala)

FUD is an abbreviation of fear, uncertainty and doubt; it is often a salesman's strategy: spreading false rumours regarding others' products. Open source software (OSS) is its victim. In our country FUD for OSS arises out of ignorance. I am glad that, we are discussing OSS as it has crucial role to play in the IT world.



WHAT IS OSS?
A computer programme consists of two parts: Source Code and Object Code. Nowadays, computer programmes are written in high level computer languages using compact English words. This part is known as source code. These languages also have a programme called compiler and with their help, source code is compiled into machine language so that computers may understand it. When it is so done, it is called object code or machine code.

Description―if it complies with certain conditions―is protected as a Copyright. Source code is a kind of description and can be protected as copyright provided it is published or disclosed. In the proprietery software, source code is generally not disclosed and in such a situation it is protected as a trade secret or undisclosed information. There was a debate whether object code is protected as a copyright or not but after TRIPS, it has to be protected as a copyright and now object code is so protected.

Everyone is not using copyrights to have rights in computer programme. Some are using copyrights so that every one may have rights. They are copylefting it. In order to copyleft a software, the owner publishes/discloses the source code; states that it is copyrighted; and grants permission to everyone to freely use, modify, and redistribute the computer programme in the original or modified form only if the similar permission is granted in redistribution or distribution of the modified version. Thus, copylefting ensures that :
  • The software is royalty free;
  • The source code is disclosed;
  • There is freedom to modify the software; and
  • Anyone who redistributes the software, with or without changes, must pass along similar freedom to others i.e. disclose the source code and permit further modification.

Free Software, GNU and GPL
Copylefted software is also known as free software. In fact the term free software was used much before the term copylefted or open source software was used. It all started in 1984 when Richard Stallman, a researcher at the MIT AI Lab, started the GNU (a recursive acronym for GNU is Not Unix) project to create a Unix-compatible system of copylefted software. Free Software Foundation (FSF) was formed to coordinate, develop, and maintain the GNU project. Stallman preferred to call it free software for the reason that there is freedom to modify the software. According to him, free software is a matter of liberty and not price and one should think free as in free speech and not as in free beer.

Stallman, with the help of lawyers, drafted the General public licence (GPL); it contains a condition that copylefts the software. Software, released under a GPL licence, is also known as GPLed software.

Open Source Initiative (OSI)
The philosophy of FSF conveyed an anti business message. In the spring of 1997, a group of leaders in the free software community assembled in California. They thought of a new term to describe it: Open Source Software. Open Source Initiative (OSI) was started and about ten guidelines were drafted to describe when software can qualify as an Open Source Software? These criteria1 are:
  1. Free Redistribution: 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. The license shall not require a royalty or other fee for such sale.
  2. Source Code: The program must include source code, and must allow distribution in source code as well as compiled form. Where some form of a product is not distributed with source code, there must be a well-publicized means of obtaining the source code for no more than a reasonable reproduction cost–preferably, downloading via the Internet without charge. The source code must be the preferred form in which a programmer would modify the program. Deliberately obfuscated source code is not allowed. Intermediate forms such as the output of a preprocessor or translator are not allowed.
  3. Derived Works: The license must allow modifications and derived works, and must allow them to be distributed under the same terms as the license of the original software.
  4. Integrity of the Author's Source Code: The license may restrict source-code from being distributed in modified form only if the license allows the distribution of 'patch files' with the source code for the purpose of modifying the program at build time. The license must explicitly permit distribution of software built from modified source code. The license may require derived works to carry a different name or version number from the original software.
  5. No Discrimination against Persons or Groups: The license must not discriminate against any person or group of persons.
  6. No Discrimination against Fields of Endeavour: The license must not restrict anyone from making use of the program in a specific field of endeavour. For example, it may not restrict the program from being used in a business, or from being used for genetic research.
  7. 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 by those parties.
  8. License Must Not Be Specific to a Product: The rights attached to the program must not depend on the program's being part of a particular software distribution. If the program is extracted from that distribution and used or distributed within the terms of the program's license, all parties to whom the program is redistributed should have the same rights as those that are granted in conjunction with the original software distribution.
  9. License Must Not Restrict Other Software: The license must not place restrictions on other software that is distributed along with the licensed software. For example, the license must not insist that all other programs distributed on the same medium must be open-source software.
  10. License Must Be Technology-Neutral: No provision of the license may be predicated on any individual technology or style of interface.

Software fulfilling the aforesaid criteria are marked OSI Certified. OSI has also created a graphic certification mark (see here) to indicate it as an open source software.


A software having either of these means that the software is being distributed under a license that conforms to the Open Source Definition by OSI. They are called open source software. They are also referred to as Free Open Source Software (FOSS) and as sometimes as the word free causes confusion, they are referred to Free/Libre Open Source Software (FLOSS). In the open source software, atleast,
  • The source code is disclosed.
  • There is freedom to use, distribute and modify it; and,
  • No royalty can be charged for the software.

OSS are copylefted but the degree of copyleftness varies. GPL is on one extreme and the least copylefted licenses are BSD type licenses. The rest are in between. At present 58 licenses1 have been categorised as fulfilling OSI Criteria. Among these licenses most popular license is GPL.

Popular - Open Source Software
Some of the popular open source software are
  1. Linux (GPL License): It is an operating system and is GUI. It is as easy as windows.
  2. Apache (Apache Software License): It is the most popular HTTP (Web) server.3
  3. OpenOffice.org suite (LGPL License): Office suite provides bundle of software that are used in an office. The most popular office suite is Microsoft office suite. OpenOffice.org suite is similar to it.
  4. Mozilla Firefox Mozilla Thunderbird and Mozilla Sunbird (Mozilla Public License): Software which permits one to access Internet is called web browser. There are many such software: Opera, Internet explorer etc. Mozilla Firefox is a web browser. Mozilla Thundrbird is a program for sending and receiving emails. It can perform functions of Outlook express. Mozilla Sunbird is e-manager; it manages one’s calendar. It can work perform functions of Microsoft outlook.
  5. Ximian Evolution (GPL License): Microsoft Outlook is an electronic manager. It manages ones email, calender, appointments etc. Ximian Evolution is also an electronic manager. It is similar to Microsoft outlook
  6. GIMP (GPL License): It is GNU Image Manipulation Program and is suitable for such tasks as photo retouching, image composition and image authoring.

OpenOffice.org suite, GIMP, Mozilla Firefox, Mozilla Thundebird and Mozilla Sunbird can operate in Linux as well as in Windows however Ximian Evolution works in Linux only. I have been writing articles as well as making presentations in OpenOffice.org suite on a Linux laptop. The ease in writing and making presentation is not less in wrting and making a presentation on a proprietary software. LAMP is an acronym that refers to the four fundamental open-source software: The Linux operating system, Apache Web server, MySQL database and, collectively, the Perl, PHP and Python programming languages.

ADVANTAGES OF OSS
In order to appreciate the advantages of OSS we should first understand the differences and similarities between the OSS and proprietary software. It is indicated below in a table.

Sl. No.
Open Source Software
Proprietary Software
1.
It is copylefted or copyrighted satisfying 10 conditions of OSI; atleast permits modification and free use.
It is copyrighted.
2.
Source Code is always disclosed and is always protected as copyright.
Source Code is generally never disclosed and is mostly protected as a trade secret.
3.
Freedom to modify source code thus programme also.
No freedom to modify source code or the programme.
4.
Software is royalty free.
Software is generally not royalty free and costs money.
5.
Money can be charged for services.
Money can be charged for services.


The advantages of OSS are as follows:

  1. No Copyright infringment in using or modifying it: There is copyright in the OSS. In fact, OSS is copylefted by using copyright. In case license conditions are violated then it will also amount to copyright violation (see decision of the US Court of Appeals for the federal circuit in Robert Jcobson Vs Matthew Katzer decided on 13. 8 2008). However in terms of the license conditions, there is no copyright infringment in merely using or modifying it. Copyright infingement due to unauthorised use is a global issue and adopting OSS will obviate this aspect of it.
  2. Lesser cost: OSS is royalty free; it does not cost anything. The only cost is for services or support for the same. Utilising OSS will reduce the cost of any project. The cost reduction has an impact on the proprietary software too. In order to be competitive, their cost is being reduced.
  3. Service sector: Due to historical reason, our English and Maths have always been a plus point. These subjects are necessary for providing services in the IT sector. Adoptions of OSS may open new job opportunities in the service sector.
  4. Customise software: Software can be modified if source code is disclosed and there is permission to modify the same. In OSS, source code is disclosed and there is permission to modify the software. This permits everyone to participate in the software movement and also provides opportunity to everyone to customise software. Today OSS is not only available in our national language but also in almost all regional languages; its adoption offers us opportunity to take IT movement to the grass root level.
  5. Avoids IPR: It is possible to have IPR in the modified software created from OSS but the authors of any OSS do not claim any IPR in using or modifying the OSS written by them. This is clear from the fact that they permit everyone to use/modify/distribute it without any royalty. This not only leads to reduction in the IT cost but avoids future conflicts in this area.
  6. Different licenses: There are many licenses that are certified by OSI. This creates some difficulties but different licenses have their advantages too. They can be adopted for different business models: GPL is viral - a business model centered around programming and support services should be adopted. BSD type licenses are at the other end - they permit creation of proprietary software. The Macintosh Operating System (a proprietary software) is partly based on BSD licensed code.
  7. The other licenses lie between these two and may be chosen by the companies/software developers according to their need.
  8. Stable: Virus is nothing but a computer programm which effects any other computer programme or computer data. In OSS there can be viruses however there have not been many viruses in OSS as its source code is open. Experts say that it is safe and provides stable environment. This is also strengthened by the fact that Apache web servers are the most popular ones.

The advantages of OSS are best described by Linus Torvalds—the man who gave us Linux—in his autobiography ‘Just for Fun: the Story of an Accidental Revolutionary’ (on pages 194, 210, and 213),

‘The GPL and open source model allows for the creation of the best technology. … It also prevents the hoarding of technology and ensures that anyone with interest won’t be excluded from its development.

So open source would rather use the legal weapon of copyright as an invitation to join in the fun, rather than as a weapon against others. It’s still the same old mantra: Make Love, Not War, except on a slightly more abstract level.

Imagine an intellectual property law that actually took other people’s rights into account, too. Imagine IP laws that encouraged openness and sharing. Laws that say sure, you can still have your secrets, whether they be technological or religious, but that doesn’t mandate legal protection for such secrecy.’


OVERCOMING―CHALLENGES AND DIFFICULTIES
Last year I was at Bhopal attending a colloquium on 'Law, Science and ethics'. The president of India also addressed us through video conferencing. During the question session, I asked him,

'Computers and information technology have an important role in reducing the arrears in the court as well as in helping in other areas. Broadly there are two kinds of softwares to do that. Proprietary and Open Source. Which one is better?'


He answered,

'First of all, I would like to clarify that the choice of proprietary vs. Open software is driven by the usage and requirements of the user at the operating system level. Since, proprietary software is predominantly used at the client level; many users are familiar and confortable with this. However, at the server level mature users choose the software as per their requirement. Open source operating system enables the development of language independent software's and also building one's own security algorithms to suit his requirement.
Indian IT industry is capable of providing a solution for the justice delivery system and its e-Governance to the justice administration on top of any proprietary or open source systems. What is important here is justice delivery system should be inter-operable system built on top of open standards such as web services.'

The challenges and difficulties in shifting over to OSS are apparent from the answer. The majority is used to proprietary software and is trained in it. The main challenge is,


  • in changing over;

  • getting used to the new environment; and

  • training the staff.

This is a vicious circle. There are difficultied in changing over and if you chose not to shift then you rely on proprietary software and more you have to pay. Perhaps what is required is to change our perception regarding OSS and increase its awareness. We may consider the following points:


  • The awareness regarding OSS should start from the school level: Computer education is already in curriculum of the schools and colleges. There is hardly any representation of OSS in their curriculum. Most of the topics that are there belong to proprietary software. The operating system of computers are in proprietary software. Curriculum of schools and colleges should have compulsory courses on OSS and the computers should have operating system in OSS.

  • Greater awareness among the Experts: There should be long term policy of training experts in open source. Scarcity of experts inhibit use of open soruce.

  • Build Service Sector: Indian companies may not be successful in new open soruce venture: it may still be in the realm of the western world. Nevertheless there is one field where we can do very well and that is the service field. This sector should be strengthened. In fact this is the best way to earn money in open source.

  • Utilisation of grant: The government gives grants for purchasing computers and for different projects. The government grants may be utilised for purchasing computers having OSS operating system. Apart from operating systems there are applications. Many applications are on OSS and run on all kinds of operating systems including the proprietary ones. Even if the operating system is the proprietary one, then at least it should have applications that are on OSS.

  • Linux/OSS Compatible: The biggest challange is finding drivers for the hardware. Irrespective of the operating sytems or the applications programmes on a computer, the government while purchasing computers may ensure that the hardware is Linux/OSS compatible. This will ensure that the manufacturers are making drivers available in the market. And if the need arises computers may be made dual boot or on Linux/OSS.

  • Exclusive OSS cell: It is true that we are leading IT community in the world but many IT experts in government organisations work exclusively with proprietary software. It will be a good idea to create separate cells in government and semi government departments to develop applications exclusively in OSS.

  • Solution in OSS first: A policy decision may be taken to find solutions of projects first in OSS and in case it is not possible only then it may be sought in the proprietary software.

The Allahabad High Court has taken a policy decision to work in Open Source Software and store documents in open document format. All new computers have linux as operating system. Apart from it, OpenOffice.org suite, Firefox, Thunderbird, Sunbird have been adopted as applications software. A chart mentioning others details and the projects undertaken is appended as Appendix-1.


CONCLUSION
Michael Lewis wrote a book in 1999 entitled. ' The new new thing: a Silicon Valley story'. It is success story of the Silicon Valley told through the biography of Jim Clarke. The most quoted line from this book is, 'the definitive smell inside a Silicon Valley start-up was of curry'. If we are able to harness and utilise the potential of open source software then not only inside a Silicon Valley start-up, but also inside the Information Technology and Cyberspace will there be the smell of curry.



Appendix-1


1. The following Things are being done at Allahabd High Court on Open Source Software:
(i)Web Server System.
OS: Linux
Server Software: Apache HTTP Server
(ii) Mail Server System.
OS: Linux
Mail Server Software: Sendmail
Webmail package: SquirrelMail
(iii) Web Diary: A web-based application to manage event database.Server Software: Apache HTTP Server
Java solutions: Apache Tomcat
Database: MySQL
(iv) Library System: A web-based library information system (under development).
Server Software: Apache HTTP Server
Java solutions: Apache Tomcat
Database: MySQL
(v)Service Record System: A web-based service record system containing service profiles of personnel related with the Court (under development).
Server Software: Apache HTTP Server
Java solutions: Apache Tomcat
Database: MySQL

2. Servers in which judicial work is being done are running under Linux OS. More than 100 GIST terminals are connected to the network from where Bench Secretaries, fresh filing counter staff and other users feed information.

3. Desktops and Laptops at the Allahabad High Court are provided with Open Office.org suite, Firefox web browser, Mozilla Thunderbird e-mail application and Mozilla Sunbird e-calendar application software.

4. All new computers at Allahabad High court and district courts in UP are being provided with Linux as operating system.
Enhanced by Zemanta

No comments:

Post a Comment

Adopt More Active Role

This is the fourth post of the series 'Advice to Young Judges'. It invites them to adopt more active role like King Solomom in decid...