Sunday, September 02, 2012

GIVEN ENOUGH EYEBALLS, ALL BUGS ARE SHALLOW

Open Source Software And 
Business Advantage
(Summary: The article explains what is open source; why it should be adopted; what are  the advantages in adopting it; and how money may be earned from it.
Picture courtesy OSI home page

This is text of the talk delivered by Justice Yatindra Singh, Judge Allahabad High Court, IIM Lucknow on 31.8.2012.
The text of talk in pdf format may be downloaded from here.)

नमस्ते।
Despite weather being hot and humid, wish you a very good afternoon to all of you and hope next one hour with me, will be enjoyable.

No royalty or other such fee can be charged for Open source software; unlike most of the proprietary software, it is royalty free: then the question is, how can it generate business much less earn any profits? Isn't it a contradiction in terms. After all, there is no free lunch.

There is an acronym F-U-D or FUD; it stands for fear, uncertainty, and doubt. It is a salesman strategy of spreading false rumours regarding others' products. Open source software (OSS) is its victim. If this was not so then companies dealing with OSS would have sunk and others wouldn’t be adopting it with open arms.

There is also a catch in the word 'free'. Money can be generated by OSS; profits can be earned. And I am here at IIM Lucknow to talk about it.

IIM, Lucknow is a premier management institute in the country: an institute that has the brightest young minds; an institute that is producing future CEOs of the best run companies. This makes me nervous and I am always apprehensive of accepting speaking assignments. But I accept them, unless I am pressed for time.

The reason is simple—a man is known by the company that he keeps, and who wouldn't like to be in the company of such a bright young group. Perhaps, I may be able to bask in your reflected glory. So here I am to talk about 'Open Source Software And Business Advantage'.

Oh, don't be misled by the title 'Given Enough Eyeballs, All Bugs Are Shallow'. It is Linus' law—named after Linus Torvalds, the creator of GNU-linux operating system and the most commonly known open source software.  Perhaps, it expresses best advantage of open source software. I will come back to it during my talk.

The talk is divided into four parts:
(i) Why - Open Source ;
(ii) What is it;
(iii) Its Advantages;
(iv) Business methods: earning money from it.

WHY- OPEN SOURCE
The beginning of the last century witnessed the emergence of a semi-clad Indian, referred to as 'half naked Fakir' by Winston Churchill. His philosophy was,
'Means are more important than the end: it is only with the right means that the desired end will follow.'
To the charge that 'means are after all means', he would say, 
‘means are, after all, everything’. 
His name was Mohandas Karamchandra Gandhi – known to the World as Mahatma Gandhi, father of the Indian nation.

Gandhi's philosophy is deep rooted in law too. Lord Denning, one of the greatest judge of 20th century, in R Vs IRC Exparte Rossminster Ltd 1979 (3) All ELR 385 held,
‘But it is fundamental in our law that the means that are adopted ... should be lawful means. A good end does not justify bad means.'
So is true of our laws.

Chapter IV of our constitution is titled 'Directive Principles of State Policy'. It contains the end or the goals to be achieved. Chapter III is titled 'Fundamental Rights'. It contains the means: they are the good means. Our constitution also envisages goals to be achieved by the laws that conform with the fundamental rights—the good means.

In the  World of information technology,
  • The end is dissemination, communication, and retrieval of information; and
  • The means are, how to achieve it, implement it; the kinds of software to use, the kinds of standards to adopt, the kind of formats to employ?

Is OSS good means? Before we consider it let's understand what is OSS.

WHAT IS OPEN SOURCE SOFTWARE (OSS)
The software consists of two parts
  • Source code; and
  • Object code.

Computers only understand ‘machine language’ or ‘machine code’ i.e. instructions that consist of a series of 0s and 1s. In the earlier days, a computer programme used to be written directly in machine language by punching a card. The punched slot or un-punched slot indicated requisite information to the computer. However, the process was slow and tedious. Such a programme, although intelligible to the computer, was virtually unintelligible to anyone except an equally skilled programmer.

Nowadays, computer programmes are written in high level computer languages using compact English words. This can be understood by humans though not by the computers. This is known as the source code.

The languages also have a programme called compiler and with its help, source code is compiled into the language that computers can understand. This is called object code or machine code. This runs the computer or any application therein.

Protection—Object Code
There was some debate as to how the object code is protected but Article 11 of the TRIPS mandates its members to provide authors with the right to authorise or to prohibit commercial rental of at least computer programmes and cinematographic works. This has also been so provided in our laws. In our country, as well as in almost all other countries in the World, the object code is protected as a copyright.

Protection—Source code
Copyright lies in a description. Source code is a kind of description and being a description, it is a literary work within the meaning of Copyright Act. If it is published it is protected as a copyright.  If it is not published then it is protected as a trade secret.  Under certain conditions, it may also be protected as a patent.

Copylefted, Free, and GPLed software
Everyone is not using Intellectual Property Rights (IPRs) to hoard rights in a software. Some are using them in such a way that no one is able to hoard them. Using copyright, they are doing just the opposite. It is for this reason it is called copylefting. This happens if software license has the following conditions:
  1. The software is royalty  free;
  2. The source code is disclosed;
  3. There is freedom to modify the software; and
  4. Anyone who redistributes the software, with or without changes is required to pass along similar freedom to others i.e. disclose the source code and permit further modification.

Copylefted software is also called free software as there is freedom to modify it. In fact the term free software was used much before the terms Copylefted or open source software were 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 for an operating system under the umbrella organisation of Free Software Foundation (FSF). They say,
'Think of “free” as in “free speech”, not as in “free beer”'.

A program is free software if the program's users have the following four  freedoms:
  1. The freedom to run the program, for any purpose;
  2. The freedom to study how the program works, and change it so it does your computing as you wish. Access to the source code is a precondition for this;
  3. The freedom to redistribute copies;
  4. The freedom to distribute copies of your modified versions to others. Access to the source code is a precondition for this.

Richard Stallman, with the help of lawyers, drafted the GPL. It contains the  conditions that copylefts a software. Most of the software under the GNU Project are under GPL.

Software, released under a GPL licence, is also known as GPLed software.

Open Source Software (OSS)
The philosophy of copylefted conveyed an anti-business message. Though, it is not so: it is merely a way of doing business. However it was necessry to change this perception.

In the late 1990's, Eric S. Raymond (known for 'fetchmail', a software for downloading emails), Bruce Perens  (former project leader of the Debian distribution) and other free software enthusiasts got together in California to start a consortium – called Open Source Initiative (OSI). They also drafted ten guidelines and if the license or conditions under which the software has been released satisfies these guidlines then they called it Open Source Software (OSS).

Among the  ten conditions, the three important ones are,
  1. The software is royalty  free;
  2. The source code is disclosed; and
  3. There is freedom to modify the software.

The guidelines do not contain the fourth condition of copylefted Software. Thus OSS is more comprehensive. All Copylefted is OSS but all OSS is not Copylefted software. The sphere of OSS is bigger than Copylefted/  free/ GLed software.
Logo - software with logo certifies that it is open source software

At present, sixty seven licences have been identified as satisfying these ten conditions. All the licences copyleft the software to a degree: GPL coplefts to the maximum; whereas, Berkeley software distribution (BSD) licence does it to the minimum. The rest of the licences lie in between.

ADVANTAGES OF OSS
Linus' law
Raymond presented a paper titled 'The cathedral and the bazaar' at the Linux Kongress on May 27, 1997 in Würzburg, Germany with the vision of open source development. It was later  published in 1999 as part of a book of the same name with answers to the sceptics.

In the book, while  tracing his journey of  'fetchmail', Raymond visualises the rules for the development of open source software. He contrasts the two different software development models namely:
(i) The Cathedral model, where (in the words of Raymond) software is
'carefully crafted by individual wizards or small bands of mages [magicians] working in splendid isolations, with no beta to be released before its time.'
Proprietary software is developed in this fashion. Some OSS (GNU Emacs and GCC) is also developed like this however source code is available with each software release, but code developed between releases is restricted to an exclusive group of software developers.

(ii) The Bazaar model, in which the code is developed over the Internet in view of the public. In the words of Raymond,
'Linus Torvalds style of development—release early and often, delegate everything you can, be open to the the point of promiscuity … the Linux community resembles a great babbling bazaar of different agendas and approaches … who would take submissions from anyone...'

In the book he opines that the bazaar model is better as more time and energy is spent in finding out the bugs in the cathedral model; whereas, in bazaar model bugs are easily discovered or become shallow, as source code is widely available.

Raymond says,
'[T]he future of the open source belong to the people ... who leave behind the cathedral and embrace the bazaar.
...
[T]he open source culture will triumph not because cooperation is morally right or software hoarding is morally wrong … but simply because closed source world cannot win an evolutionary arms race with open source communities that can put … more skilled time into a problem.'

He also proposes a law in the book:
'Given enough eyeballs, all bugs are shallow'
And credits this to Linus Torvald—the creator of GNU-Linux operating system. He dubs it as Linus' law. This is the soul of OSS; its best advantage.

Other Advantages Of OSS
Here are its advantages; some of them played in our mind for shiting over to open source at the Allahabad High Court:
(i)  Stable: Virus is nothing but a computer programme which effects any other computer programme or computer data. In OSS there can be viruses however there have been only a few. This is because its source code is disclosed. Experts say that it is safe and provides stable environment. This is also strengthened by the fact that Apache (an OSS) web servers are the most popular ones.
(ii) No Copyright infringment in using or modifying it:  There is copyright in the OSS. In fact, OSS is copylefted by using copyright. Anyone who uses OSS contrary to the conditions governing the license, not only breaches the contract but also infringes the copyright. This has also been so held by the US Court of Appeals for the federal circuit in Robert Jcobson Vs Matthew Katzer 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.
(iii)  Lesser cost: OSS is royaltee 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.
(iv)  New jobs - 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. In OSS money is earned by providing service. Adoptions of OSS opens new job opportunities in this sector.
(v)  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.
(vi)  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 the OSS in anyone using and modifying it  (though there are some conditions). 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 the IPR area.
(vii)  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:
(a) GPL is viral: By adopting this licence, a business model centered around programming and support services can be adopted.
(b) 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.
The other licenses lie between these two and may be chosen by the companies/software developers according to their need.


BUSINESS METHODS: Earning Money from OSS
In the proprietary software, money is earned by charging royalty for the same but if, distribution of OSS is royalty free then how can, money be earned, business be done? This situation has given rise to new business modules and opened new avenues.
(a) Paid warranted distribution:  It is a misconception that money cannot be charged for OSS.
The first condition of OSS is titled 'Free Redistribution'. It does not prohibit a licensee from selling or giving away the software as a component of an aggregate software distribution containing programs from several different sources. There is nothing that requires the distribution of a particular  open source product free of charge. All open source licenses recognised by OSI allow for paid distributions of software. It only restricts the licensor from charging a royalty or a fee for such sale. A licensee is free to sell without any payment to the licensor.
The GPL also permits a licensee to charge a fee for the physical act of transferring a copy or for offering a warranty protection. The free software foundation explains it as follows1:
'Many people believe that the spirit of the GNU Project is that you should not charge money for distributing copies of software, or that you should charge as little as possible — just enough to cover the cost. This is a misunderstanding. Actually, we encourage people who redistribute free software to charge as much as they wish or can. ... Free programs are sometimes distributed gratis, and sometimes for a substantial price. Often the same program is available in both ways from different places. The program is free regardless of the price, because users have freedom in using it. Non free programs are usually sold for a high price, but sometimes a store will give you a copy at no charge. That doesn't make it free software, though. Price or no price, the program is non free because users don't have freedom. '
It is for this reason that many commercial entities are able to sell packaged distributions of open source software.  Most open source software companies follow this model, selling a branded and  tested version of otherwise available code.
(b) Charging for services: Services for maintenance can be charged.
(c) Customising or writing additional component of the software: OSS can be customised to the customer's requirements, or some component of existing software can be added.
(d) Writing Hardware drivers: Hardware devices cannot be used without the appropriate software. The companies are realising the potential of OSS. There is sufficient investment for writing drivers of the devices.
(e) Providing Information: Money can be charged for information. Books, Manuals, software. More popular the open source projects are, more popular would be the need for hardware drivers.
(f) Publishing Magazines or news services: They provide required information about open source software for a reasonable price.

Let me explain the OSS and its advantages with the help of a story from 'Panchtantra': this has common thread in all cultures. It is a story of a hare and a tortoise.

THE TORTOISE AND THE HARE
A tortoise and a hare were friends. One day, the hare and the tortoise decided to race against each other. The hare obviously took the lead; he thought of relaxing and went off to sleep. The tortoise, walking slowly but steadily, overtook the hare and won the race. The moral is,
'Slow but steady wins the race'.
In recent time, some new chapters have been added.

The hare, perturbed by the defeat, asked the tortoise to race again. This time he did not take rest and won the race easily. The moral is,
'It is better to be fast and reliable'.
But, this is not the end of the story.

After some days, the tortoise asked the hare to race once again but with a condition that the course will be chosen by him. The hare, who was confident of his victory, gave him the free hand. This time the course included a river. The hare ran up to the river and then stopped. The tortoise came and swam across the river to win the race. The moral is,
'Every one has weak and strong points – play on your strong side.'
However, the story still does not end here.

After some days, the tortoise and the hare repeated the race over the same course but the rules were changed. This time they decided run it as a team. On the ground, the hare carried the tortoise on his back and on the river, the tortoise carried the hare on his back. The result was that both of them reached the destination quickly, saved time and enjoyed the race too. The moral is,
'It is best to consolidate everyone's strong points'.

CONCLUSION
Open source,

  •  Use the IPR to prevent the hoarding of technology;
  •  Invite others to participate in its development;
  •  Permit us to customise the software;
  •  Consolidate strong points.

They are good means within Gandhi's philosophy: they are not only steps in the right direction but it is more advantageous to use them.

Let me end my talk with refrence to the book ‘The new new thing: a Silicon Valley story‘, published in 1999, by Michael Lewis. It is a 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 the strength of Open Source Software (OSS) then I have no reason to doubt that not only inside a Silicon Valley start-up but, there will be the smell of curry in cyberspace too.  And we will be able to change the second last word  ‘होंगे’ to   ‘हैं’ in the song.
सुनो गौर से दुनिया वालों,
बुरी नजर न हम पर डालो|
चाहे जितना जोर लगा लो,
सबसे आगे होंगे हिंदुस्तानी|

Endnote-1: All pictures except the first one, punch card, and the book covers are from the Wikipedia.

APPENDIX-1
Popular open source programmes
Apart from Linux, Apache and Android, all other programmes run on all operating system except Infra recorder. K3B is good substitute for Infra recorder in Linux.
  1. Linux (GPL): It is an operating system.
  2. Apache (ASL): It is the most popular HTTP (Web) server software.
  3. Android (ASL): It is operating system for mobile phones.
  4. Audacity (GPL): It is programme for recording audio files. It permits editing of the audio files too. One can copy, paste, or mix the audio files.
  5. Libre Office and OpenOffice.org suite (LGPL License): It provides bundle of software that are used in an office. It is similar to MS office suite and contains similar programmes.  The default format of different programmes of this suite are  Open Document Format maintained by Organisation for the Advancement of Structured information Standards (OASIS). It was approved by the International Standardisation Organisation (ISO) on May 3, 2006. They can open and save files in default format of MS Office suite or Power Point Presentation as well as in any other format too. It can export any file into pdf format.
  6. Firefox, Thunderbird, and Sunbird (all from Mozilla Foundation) (Mozilla Public License):  Firefox is a web browser: Window equivalent to Internet Explorer. Thundrbird is a program for sending and receiving emails. It can perform functions of Outlook express. Mozilla Sunbird is e-manager and manages C-calender. It is similar to Microsoft outlook and can be integrated with Thunderbird or Firefox.
  7. GIMP (GPL): It is GNU Image Manipulation Programme and is suitable for such tasks as photo retouching, image composition and image authoring. It is similar to photoshop.
  8. Infra Recorder    (GPL): It is programme for burning CDs and DVDs. It works in the windows only. However, K3B is a similar programme that works in Linux.
  9. VLC Media Player and Mplayer (GPL): They are media player. They  can play audio and video files of any format.
  10. Ximian Evolution (GPL): 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.

If you have a Window based computer then do try them.  They are easy to install and use: in fact easier then the other closed source programmes.

Some say that they are not as good as the proprietary ones. I do not wish to debate about it but they are sufficient for our needs. They are not only open but are free of cost and can be used without any guilt of copyright violation.

Once you are used to them in Windows there would be no difficulty in shifting over to Linux based computer as their functionality in Linux is similar.

No comments:

Post a Comment

Good Judges – Open Till The End

A Judgement is not final till it is signed and sealed. It is important for a judge to be open till it is sealed.  This post explains the sam...