open source and the bazaar method. history of software development 1944, harvard and ibm build first...

19
Open Source and Open Source and the Bazaar the Bazaar Method Method

Upload: penelope-randall

Post on 17-Dec-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

Open Source and Open Source and the Bazaar the Bazaar

MethodMethod

Page 2: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

History of Software History of Software DevelopmentDevelopment

1944, Harvard and IBM build first 1944, Harvard and IBM build first computer bundling Hardware and computer bundling Hardware and Software togetherSoftware together

1969, IBM begins to bundle Hardware 1969, IBM begins to bundle Hardware and Software separately keeping source and Software separately keeping source code secretcode secret

1981, Separation of Hardware and 1981, Separation of Hardware and Software becomes final when IBM Software becomes final when IBM partnered with Microsoft and Intel to partnered with Microsoft and Intel to develop the first Personal Computerdevelop the first Personal Computer

Page 3: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

Open SourceOpen Source

Early 1970’s, AT&T Bell Labs developed Early 1970’s, AT&T Bell Labs developed the Unix operating system, a portable the Unix operating system, a portable operating systemoperating system

Unix source code and licenses were given Unix source code and licenses were given away to universities and AT&T published away to universities and AT&T published two books containing the source codetwo books containing the source code

University of California altered the Unix University of California altered the Unix Source code to create many new enhanced Source code to create many new enhanced features and then freely released the features and then freely released the enhanced versions to the publicenhanced versions to the public

Page 4: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

Rise of FreewareRise of Freeware

Lawsuits ensued over which parts of Lawsuits ensued over which parts of Unix source code could be freely Unix source code could be freely distributed to the publicdistributed to the public

As a result, Linus Torvalds created the As a result, Linus Torvalds created the new operating system Linux in the early new operating system Linux in the early 1990’s1990’s

The Linux source code was freely The Linux source code was freely distributed to the public where the distributed to the public where the hacker community could freely alter and hacker community could freely alter and improve upon the existing code improve upon the existing code

Page 5: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

Development CommunityDevelopment Community

A new community of hackers and A new community of hackers and programmers emerged on the internet as a programmers emerged on the internet as a result of open source softwareresult of open source software

These programmers took part in the These programmers took part in the development and maintenance of new development and maintenance of new programs by altering and improving upon programs by altering and improving upon existing source codeexisting source code

The Development Community allowed Linus The Development Community allowed Linus Torvalds to use limited funds to create a fully Torvalds to use limited funds to create a fully capable operating system with thousands of capable operating system with thousands of debuggers and codersdebuggers and coders

Page 6: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

Open Source Definition: Open Source Definition: Social ContractSocial Contract

In 1997, Bruce Perens published a book of In 1997, Bruce Perens published a book of guidelines to articulate the developers’ guidelines to articulate the developers’ commitment to open source and its userscommitment to open source and its users

The Debian Free Software Guidelines The Debian Free Software Guidelines were incorporated into and became the were incorporated into and became the basis of the Open Source Definition basis of the Open Source Definition

The Open Source Definition became a The Open Source Definition became a social contract between developers and social contract between developers and users allowing the users to use and alter users allowing the users to use and alter source code freely and keeping the source code freely and keeping the developers free from liabilitydevelopers free from liability

Page 7: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

AutonomyAutonomy

A level of Autonomy exists in OSS A level of Autonomy exists in OSS Development that does not exist in Development that does not exist in the corporate fieldthe corporate field

Developers are free to pick and Developers are free to pick and choose which projects they wish to choose which projects they wish to take part in and for how longtake part in and for how long

Programmers have the freedom to Programmers have the freedom to take OSS software in their own take OSS software in their own directiondirection

Page 8: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

Quality: For Better or Quality: For Better or Worse?Worse?

Critics of OSS software claim that Critics of OSS software claim that programmers will produce a lesser quality programmers will produce a lesser quality product when there is no monetary value product when there is no monetary value and proper documentation is non existentand proper documentation is non existent

Advocates of OSS software claim that a Advocates of OSS software claim that a programmer has the freedom to pick and programmer has the freedom to pick and choose which projects to work on and choose which projects to work on and therefore will work hard on those projects therefore will work hard on those projects that interest themthat interest them

Advocated also claim that the pressure of Advocated also claim that the pressure of reputation in the OSS community pushes reputation in the OSS community pushes developers to produce higher quality workdevelopers to produce higher quality work

Page 9: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

Open Source and Open Source and AccountabilityAccountability

In her article Computing and Accountability, In her article Computing and Accountability, Helen Nissenbaum cites four barriers to Helen Nissenbaum cites four barriers to accountability accountability

The Problem of Many hands – when there are too The Problem of Many hands – when there are too many people working on a project, it can be many people working on a project, it can be difficult to identify who is accountabledifficult to identify who is accountable

Bugs – Believing software bugs are a way of life Bugs – Believing software bugs are a way of life creates problems with accountabilitycreates problems with accountability

Computer as Scapegoat – Blaming the computer Computer as Scapegoat – Blaming the computer when a program cannot be ran when a program cannot be ran

Ownership without liability – when a person Ownership without liability – when a person creates a program or develops code but is not creates a program or develops code but is not liable for the problems with its use liable for the problems with its use

Page 10: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

Solving Accountability Solving Accountability Issues in the OSS Issues in the OSS

CommunityCommunity The OSS Community handles each The OSS Community handles each

accountability issue in a different fashionaccountability issue in a different fashion Many Hands – In the OSS Community, Many Hands – In the OSS Community,

when a developer creates bad code, when a developer creates bad code, other developers are far less likely to other developers are far less likely to accept it, therefore an individual accept it, therefore an individual accountability is created accountability is created

Bugs – The OSS community handles bugs Bugs – The OSS community handles bugs with a group effort, with a group effort,

Page 11: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

Is Open Source a Public Is Open Source a Public Good?Good?

Can open source be considered a free source Can open source be considered a free source for research and the expansion of knowledge?for research and the expansion of knowledge?

Peter Kollack defines public goods as those Peter Kollack defines public goods as those things non-excludable and indivisiblethings non-excludable and indivisible

Kollack argues that because OSS is prohibited Kollack argues that because OSS is prohibited from discrimination it supports the idea of non-from discrimination it supports the idea of non-exclusion and because one user does not affect exclusion and because one user does not affect the others it is indivisiblethe others it is indivisible

Bertrand Meyer argues against Kollack that Bertrand Meyer argues against Kollack that there are often ulterior motives behind the there are often ulterior motives behind the development of OSS: “Microsoft Bashing”development of OSS: “Microsoft Bashing”

Page 12: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

The Cathedral and the The Cathedral and the BazaarBazaar

In the Cathedral, In the Cathedral, small groups of small groups of individuals work in individuals work in isolation developing isolation developing softwaresoftware

Beta is not released Beta is not released before a program before a program has been testedhas been tested

Debuggers and Debuggers and Coders work on Coders work on source code that is source code that is often kept secretoften kept secret

In the Bazaar, In the Bazaar, programs are programs are developed in a developed in a mass group effort mass group effort over the internetover the internet

Programs are Programs are released earlyreleased early

Debuggers and Debuggers and Coders consist of Coders consist of OSS developers OSS developers world wideworld wide

Page 13: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

Rules of the Bazaar Rules of the Bazaar MethodMethod

Eric Raymond developed the Bazaar Eric Raymond developed the Bazaar Method after analyzing the development of Method after analyzing the development of LinuxLinux

Raymond realized that the creation of Linux Raymond realized that the creation of Linux was unique and fundamental guidelines was unique and fundamental guidelines would allow the Bazaar method to be would allow the Bazaar method to be recreatedrecreated

Studying the process behind the design and Studying the process behind the design and creation of Linux, Eric Raymond created a creation of Linux, Eric Raymond created a few rules behind the Bazaar methodfew rules behind the Bazaar method

Page 14: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

Rule of the Bazaar Rule of the Bazaar Method, cont.Method, cont.

A few of the principles formulated by Raymond on the A few of the principles formulated by Raymond on the Bazaar Bazaar

method include:method include: Every good work of software starts by scratching a Every good work of software starts by scratching a

developer’s personal itchdeveloper’s personal itch Treating your users as co-developers is your least-Treating your users as co-developers is your least-

hassle route to rapid code improvement and effective hassle route to rapid code improvement and effective debuggingdebugging

Release early. Release often. And listen to your Release early. Release often. And listen to your customers.customers.

Given a large enough beta-tester and co-developer Given a large enough beta-tester and co-developer base, almost every problem will be characterized base, almost every problem will be characterized quickly and the fix obvious to someonequickly and the fix obvious to someone

If you treat your beta-testers as if they’re your most If you treat your beta-testers as if they’re your most valuable resource, they will respond by becoming your valuable resource, they will respond by becoming your most valuable resourcemost valuable resource

Page 15: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

Applying the Bazaar Applying the Bazaar Method: PopmailMethod: Popmail

Eric Raymond applied the principles Eric Raymond applied the principles behind the Linux creation to an OSS behind the Linux creation to an OSS POP3 client called PopclientPOP3 client called Popclient

Using the Bazaar principles he created Using the Bazaar principles he created a large base of debuggers and coders a large base of debuggers and coders by releasing early and oftenby releasing early and often

By creating a large base of debuggers, By creating a large base of debuggers, Raymond believed all problems could Raymond believed all problems could be found quickly and solved efficientlybe found quickly and solved efficiently

Page 16: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

Popclient becomes Popclient becomes FetchmailFetchmail

Listening to the thoughts and ideas of his Listening to the thoughts and ideas of his users, Raymond redesigned Popclient to users, Raymond redesigned Popclient to forward mail through the SMTP portforward mail through the SMTP port

This change in design drastically This change in design drastically improved the program’s efficiency and improved the program’s efficiency and throughputthroughput

Raymond came to the belief that the Raymond came to the belief that the most valuable resource available in the most valuable resource available in the Bazaar Method are the ideas of the userBazaar Method are the ideas of the user

Page 17: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

Social Context of Open Social Context of Open SourceSource

The Bazaar method allows co-developers to The Bazaar method allows co-developers to come and go as their interests changecome and go as their interests change

In the Cathedral, as developers leave and are In the Cathedral, as developers leave and are added, the release dates of programs become added, the release dates of programs become later later

Raymond found that when developing in the Raymond found that when developing in the Bazaar method, developers could come and Bazaar method, developers could come and go without delaying the release of a programgo without delaying the release of a program

A lead developer in the Bazaar must have a A lead developer in the Bazaar must have a strong leadership ability that allows him/her strong leadership ability that allows him/her to attract co-developers to attract co-developers

Page 18: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

Raising the Question: The Raising the Question: The Maginot LineMaginot Line

After Raymond released his findings on the After Raymond released his findings on the Bazaar Method, skeptics criticized the Bazaar Bazaar Method, skeptics criticized the Bazaar methodmethod

Skeptics believed that the driving force of Skeptics believed that the driving force of management increases the performance and management increases the performance and efficiency of softwareefficiency of software

Raymond countered this claim by citing the Raymond countered this claim by citing the examples of the GNU Emacs and Linux which examples of the GNU Emacs and Linux which have been running and updating for several have been running and updating for several yearsyears

Raymond also indicated that traditionally Raymond also indicated that traditionally managed software projects do not meet managed software projects do not meet reliable execution by deadline, on budget, or reliable execution by deadline, on budget, or to all features of the specification to all features of the specification

Page 19: Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together

Future of Open SourceFuture of Open Source

Since, Eric Raymond’s release of “The Since, Eric Raymond’s release of “The Cathedral and the Bazaar” several Cathedral and the Bazaar” several companies have embraced the Bazaar companies have embraced the Bazaar methodmethod

Netscape released their source code for the Netscape released their source code for the Netscape communicator to the public in Netscape communicator to the public in 19981998

Mozilla, a popular internet browser in the Mozilla, a popular internet browser in the hacker community, uses OSS and the design hacker community, uses OSS and the design and added features are designed by users and added features are designed by users worldwideworldwide