Open Source: A Community Approach to Software Development

Post on 11-May-2015

612 views 0 download

Tags:

Transcript of Open Source: A Community Approach to Software Development

Copyright © 2006 www.palinet.org

Open SourceA Community Approach to Software

Development

John HouserAugust 28, 2007

Topics

• Definition• In Practice…• Open Source Communities• Open Source vs. Free• Common Open Source

Technologies• Common Questions• The Bottom Line• Attitudes• LibLime and PALINET

Definition

• Open source software is computer software whose source code is available under a license (or arrangement such as the public domain) that permits users to use, change, and improve the software, and to redistribute it in modified or unmodified form. It is often developed in a public, collaborative manner.

–Wikipedia

In Practice…

• Community• Peer review• Collaboration• Users becoming designers

– Or even developers• Ownership and copyright issues• Free distribution

Community

• Website – Usually .org– FAQ– Wiki– A bug tracking system, often Bugzilla

• Lists– Where the users are

• CVS, SVN, or other code tracking repository

• IRC channel– Where the developers are

• Foundation

Characteristics of Open Source Communities

Benign Dictatorship

Meritocracy

Characteristics of Open Source Communities

• Reputation matters and is built by answering questions and contributing

• You don’t have to be a developer to contribute– Contributions can take the form of

code, documentation, wiki organization

Open Source vs. Free

• Open source licenses ensure that you have certain freedoms– Use– Change– Improve– Redistribute

• There are always costs associated with using any software, even if you don’t have to pay a license fee

Common Open Source Technologies

• LAMP – Linux, Apache, MySQL, Perl or PHP– Used by WordPress, Drupal, Koha

• AJAX – Asynchronous JavaScript and XML– Used by Evergreen

Widely Used Open Source Applications

Linux OS

Firefox Web browser

Apache Web server

OpenOffice.org MS Office alternative

MySQL SQL server

WordPress Blogging software

Audacity Audio file editor

MediaWiki Wiki software

Drupal Website content management system (CMS)

Pidgin IM/IRC

Browser Statistics

In the Library World

• Koha (LAMP)• Evergreen (AJAX)• DSpace• Fedora• Greenstone• OpenOffice.org• WordPress• Drupal• MarcEdit

Burning Questions

• Will I save money?• Where do I get help?• Is this software high quality?• Is it secure? • Reliable?

Will I save money?

• Maybe, maybe not• In a more typical scenario not

paying a license fee frees up money which is then invested into the software

• End result: you get more for your money

Where do I get help?

• Documentation• FAQ• Project mailing list

– Participation in the community matters here!

• Commercial vendor

Is this software high quality?

• Merely being open source, does not guarantee quality

• But, if the project is being actively developed by a community of developers, peer review will encourage quality

Is it secure?

Because the code is available for anyone to view, and because of the scrutiny of peer developers, security problems tend to be discovered quickly…and fixed quickly

Reliable?

• You should know the answer by now: Community!

• Look for the stable release

Advantages & Disadvantages

• Advantages– Speedy innovation– May be low cost depending on the feature fit

and level of support needed– Secure– Sometimes more standards-based than

commercial products• Disadvantages

– New skills are often required– Community involvement takes time– User interfaces tend not to be very polished

Attitudes

“That stuff is for geeks and techies. My staff can’t handle it.”

“We don’t have time to learn about open source. It’s too complicated.”

“Our patrons want Microsoft applications. They’re used to them.”

“Nobody I know uses open source. I don’t want to be out in front of the crowd.”

Quiz

What organization contributes the most code to Linux?

What operating system does Google use?

What is the most popular web server?

What popular browser is open source?

What open source technology does Moodle use?

What is the name of the open source ILS system that uses AJAX?

What is the name of the open source ILS that uses LAMP?

Quiz

What organization contributes the most code to Linux? IBMWhat operating system does Google use?

What is the most popular web server?

What popular browser is open source?

What open source technology does Moodle use?

What is the name of the open source ILS system that uses AJAX?

What is the name of the open source ILS that uses LAMP?

Quiz

What organization contributes the most code to Linux? IBMWhat operating system does Google use? LinuxWhat is the most popular web server?

What popular browser is open source?

What open source technology does Moodle use?

What is the name of the open source ILS system that uses AJAX?

What is the name of the open source ILS that uses LAMP?

Quiz

What organization contributes the most code to Linux? IBMWhat operating system does Google use? LinuxWhat is the most popular web server? ApacheWhat popular browser is open source?

What open source technology does Moodle use?

What is the name of the open source ILS system that uses AJAX?

What is the name of the open source ILS that uses LAMP?

Quiz

What organization contributes the most code to Linux? IBMWhat operating system does Google use? LinuxWhat is the most popular web server? ApacheWhat popular browser is open source? FirefoxWhat open source technology does Moodle use?

What is the name of the open source ILS system that uses AJAX?

What is the name of the open source ILS that uses LAMP?

Quiz

What organization contributes the most code to Linux? IBMWhat operating system does Google use? LinuxWhat is the most popular web server? ApacheWhat popular browser is open source? FirefoxWhat open source technology does Moodle use? LAMPWhat is the name of the open source ILS system that uses AJAX?

What is the name of the open source ILS that uses LAMP?

Quiz

What organization contributes the most code to Linux? IBMWhat operating system does Google use? LinuxWhat is the most popular web server? ApacheWhat popular browser is open source? FirefoxWhat open source technology does Moodle use? LAMPWhat is the name of the open source ILS system that uses AJAX?

Evergreen

What is the name of the open source ILS that uses LAMP?

Quiz

What organization contributes the most code to Linux? IBMWhat operating system does Google use? LinuxWhat is the most popular web server? ApacheWhat popular browser is open source? FirefoxWhat open source technology does Moodle use? LAMPWhat is the name of the open source ILS system that uses AJAX?

Evergreen

What is the name of the open source ILS that uses LAMP? Koha