NBA 600: Session 17 Free and Open Source Software 25 March 2003 Daniel Huttenlocher.

Slides:



Advertisements
Similar presentations
Overview of Free/Open Source Software for Librarians Eric Goldhagen
Advertisements

Free Beer and Free Speech Thomas Krichel
Open Source Software Development & Commercialisation Developing Lifelong Learner Record Systems and ePortfolios in FE and HE: Planning for, and Coping.
A Lawyer Looks at the Open Source Revolution Robert W. Gomulkiewicz Director, Intellectual Property Law & Policy Program Associate Professor of Law University.
GNU / Linux A free operating system. Summary History What can you find on a Linux OS Linux Economy.
Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together.
Copyleft and cathedrals How the counterculture is changing the way we do business.
6/2/2015SIMS1 Linux Adoption in the Public Sector An Economic Analysis Hal R. Varian Carl Shapiro UC Berkeley
University of Utah 1 “Free software” Remember... In the beginning, all software was free -Just a means to sell hardware.
Open Source. Operating System  Application Program Interface (API) Scheduling: Defines which application to run, when to run it, and how much time. Memory.
Open Source Applications Mikko Mustalampi DAP02S.
Free Software “Free” software “is software that can be used, studied, and modified,” copied, changed with little or no restriction, and which can be copied.
GNU, Linux and Open Source GNUKernel GNU/ Linux OpenSource.
1 Open Source Code Steve Chenoweth CSSE 375, Rose-Hulman Based on Don Bagert’s 2006 Lecture.
Introduction to Linux Chapter 1. Operating Systems Operating System (OS) - most basic and important software on a computer Performs core tasks Organize.
Brief History of C and Unix Systems Programming Concepts.
COMP 6005 An Introduction To Computing Session Two: Computer Software Acquiring Software.
Linux Introduction. Overview What is Unix/Linux? History of Linux Features Supported Under Linux The future of Linux.
Free Yourself from © and Get Creative with Presented for PNLA Annual Conference by Connie Strittmatter and René Tanner Reference Librarians, Montana State.
Introduction to Computer Administration System Administration
OPEN-SOURCE SOFTWARE BY: SAMANTHA HERALD  Otherwise known as OSS, is computer software that is available with source code: normally reserved for copyright.
Sl.NoUnitContents 1.Unit - 1 What is Open Source?, Why Open Source? 2Unit – 2 What is Open Standard? - Why Open Standards? 3Unit – 3 Peek into history.
CHAPTER 6 OPEN SOURCE SOFTWARE AND FREE SOFTWARE
What the hell is. Free software is software that anyone is free to use, copy, improve, examine or distribute, either free of cost or for a price. More.
Open Source Software Development (Adapted from Dr. Kostadin Damevski) Sung Hee Park Department of Mathematics and Computer Science Virginia State University.
Linux Basics CS 302. Outline  What is Unix?  What is Linux?  Virtual Machine.
Open Source Software Development. Overview  OSS  OSSD  OSSD vs PSD  Future.
Introduction Purpose This training course introduces the free GNU tools that can be used for debugging embedded system application software in the Renesas.
Copyright and Software and You. What is copyright? The Copyright Act of 1976 prevents the unauthorized copying of a work of authorship. – However, only.
 Open-source software ( OSS ) is computer software that is available in source code form: the source code and certain other rights normally reserved.
Licenses A Legal Necessity Copyright © 2015 – Curt Hill.
LIS508 lecture 9: GNU & introduction to networks Thomas Krichel
Computers and Society Examine the extent to which Richard Stallman’s GNU manifesto has succeeded in challenging the dominance of conventionally distributed.
Open Source Software An Introduction. The Creation of Software l As you know, programmers create the software that we use l What you may not understand.
How I learned to stop worrying and love Open Source Software... Colin M. Sharples Advisory IT Specialist IBM Business Consulting Services SQNZ 21 October.
Overview of Linux Dr. Michael L. Collard 1.
Introduction to Open Source Imed Hammouda, adjunct professor Tampere University of Technology
Presented By: Avijit Gupta V. SaiSantosh.
The Open Source Movement Information Technology and Social Life Apr. 25, 2005.
A Comparison of Linux vs. Windows Bhargav A. Sorathiya B.E. 4 th C.E. Roll no:6456.
Software Licensing University of Palestine Eng. Wisam Zaqoot March 2010 ITSS 4201 Internet Insurance and Information Hiding.
Open Source Software Bangladesh University of Business and Technology Nizar Saadi Dahir M.Sc. Computer Engineering Computer Center- Kufa University
OPEN SOURCE AND FREE SOFTWARE. What is open source software? What is free software? What is the difference between the two? How the two differs from shareware?
Open Source Software In the beginning, all software was free –in the 1960s,when IBM and others sold the first large-scale computers, these machines came.
NBA 600: Session 18 Linux and Infrastructure Software 1 April 2003 Daniel Huttenlocher.
CPS 82, Fall Open Source, Copyright, Copyleft.
LIS508 background of GNU/Linux
Chapter 14 The Open Source Community. Agenda Types of Free Software Open Source Project Open Hardware Project Impacts.
Open Source Software Architecture and Design By John Rouda.
Library 2.06 February 2009 Linux for Librarians Nishtha Anilkumar Librarian Physical Research Laboratory Ahmedabad.
OPEN-SOURCE SOFTWARE BY: SAMANTHA HERALD  Otherwise known as OSS, is computer software that is available with source code: normally reserved for copyright.
Software Licences HSF Recommendations John Harvey / CERN 24 June 2015
Free and Open Source Software Aruna Lorensuhewa Contact Details:
10/07/2008 Open Source Software An Introduction to FOSS in Libraries and Information Centers Christopher Ritzo GSLIS PhD. Candidate IMLS Scholar, Youth.
CSNB334 Advanced Operating Systems 1. Introduction to Linux Lecturer: Abdul Rahim Ahmad.
Nursing Informatics. What is open source software? What is free software? What is the difference between the two? How the two differs from shareware?
The UNIX Time-sharing system
FP 501 OPEN SOURCE OPERATING SYSTEM CHAPTER 1: INTRODUCTION TO OPEN SOURCE SOFTWARE (OSS) TECHNOLOGY.
Open Source Software. Chris Moylan Group 5...I think.
Silberschatz, Galvin and Gagne ©2011 Operating System Concepts Essentials – 8 th Edition Chapter 2: The Linux System Part 1.
Linux Operating System By: Julie Dunbar. Overview Definitions History and evolution of Linux Current development In reality ◦United States  Business.
5 ٥ V new position ? 10 ^1 10 ^2 10 ^ : : : : 99.
INTRO. To I.T Razan N. AlShihabi
LINUX History In 1984 a project was launched by Richard Stallman to develop a complete Unix-like operating system that would be considered free software.
open source and free software Najeeb Ullah Student ID
Open Source Software Development
OPEN SOURCE.
Selected topic in computer science (1)
What is Copyright?.
Chapter 2: The Linux System Part 1
Presentation transcript:

NBA 600: Session 17 Free and Open Source Software 25 March 2003 Daniel Huttenlocher

2 Today’s Class  Announcements –Short paper #4 on digital goods –Return group case projects Thursday  Open source and free software –Some terminology and history –Overview of systems software architecture –Broad use of open source software –Differences between open and proprietary or closed source development –Differences within open source projects

3 Terminology: Free Software  Free software (FS) is a term introduced by Richard Stallman –Free as in freedom or liberty not as in no cost –Formed Free Software Foundation (FSF) in 1985  Protect rights to do following with software –Run –Study –Redistribute –Improve  Through FSF’s general public license (GPL) –Often referred to as GNU public license

4 What is GPL?  GPL is a license that limits the right to use a piece of software –The code is copyrighted and then the rights are governed by that license As provided in copyright law, holder can control how copies are made  Permits copies and derivative works to made and distributed freely provided –The GPL governs all such copies and works –The source is always available at cost of distribution –Other terms intended to preserve free nature

5 Effect of GPL  GPL is often called a “viral” license –Applies to all copies and derivative works Can only include GPL’ed code in a product if the product is governed by GPL –A limited form of GPL applies to code libraries A library is code that performs some basic function that might be employed in many different software products E.g., ability to send data over the Internet LGPL applies only to the library and not products using that library  GPL and related licenses are also referred to as copyleft

6 Terminology: Open Source  Open source software (OSS) is a term championed by Eric Raymond –Open Source Initiative (OSI) formed in 1998  Similar goals to FSF, to protect –Free redistribution –Distribution of source code –Creation of derivative works –Integrity of reputation  Through many different approved licenses –Specific licenses for large open source projects –Includes GPL

7 FS “vs” OSS  For all practical purposes FS and OSS are used interchangeably –Although proponents of each may argue passionately about fine points E.g., Stallman argues freedom more important than openness of the source code  OSS incorporates many OSI-approved licenses which are consistent with its goals –Thus a more general term  FS and OSS are both reactions against commercial software –With its generally restrictive licensing terms

8 Shareware/Freeware  Most shareware or freeware available on the net is not OSS/FS –Only the binary (executable) code is available –Continued usage of the software is supposed to be paid for –The author(s) retain standard proprietary rights over derivative works Same as any software company  This does not make shareware/freeware “bad” it is just very much like any other commercial software

9 Overview of Systems Software  Understanding FS/OSS movement requires some knowledge of software –Most systems have evolved similar architectures Separate software components that together provide functions users see Sometimes boundaries visible to users E.g., Windows operating system separate from Office tools Often component boundaries not visible Difference between operating system kernel and support such as device drivers –Component boundaries not fixed E.g., Web browser separate or not

10 Systems Software Schematic Operating System Kernel (Resource Allocation) Device Drivers (Control External Input/Output) System Libraries or API’s (Common Functions E.g., Rendering) Applications (E.g., Word Processor) Servers (E.g., Web Server)

11 Some History of FS/OSS: BSD  Berkeley Unix – complete system –Berkeley Software Distribution (BSD) starting in the late 1970’s –Distributed in source form –Research community – universities and DARPA –License evolved over time; commercial at times Current BSD license is OSI approved  BSD included other widely-used programs –E.g., Sendmail remains the main program for delivering on the Internet Governed by BSD license

12 FS/OSS History: GNU and FSF  GNU project – “GNU is not Unix” –Goal of completely new Unix-like system, started in 1984 by Stallman Reaction against commercial control of other Unix versions (ATT, BSD) –Largely developed applications and API’s Text editor, C/C++ compiler, etc. Widely used by Unix software developers but short of goal  Free Software Foundation (FSF) –Outgrowth of GNU project in 1985 Developed and promoted GPL

13 FS/OSS History: Linux and Apache  Early 1990’s Linus Torvalds created the Linux kernel –Distributed widely under the GPL –A truly independent implementation of Unix- like system as in GNU project goals Together with GNU tools a complete system for software developers and other “experts”  Mid 1990’s Brian Behlendorf led creation of Apache Web server –Distributed under Apache software license Protects Apache name OSI approved

14 What is Linux?  Linux distributions comprise a fully usable system –Includes not only the Linux kernel but many other components –GNU tools, including text editor, compiler, etc. –X Windows system Desktop environment such as GNOME  The Linux kernel is about 3% of the source code in a Linux distribution –Critical resource allocation functions –More accurate term would be GNU/Linux

15 FS/OSS “vs” Proprietary Software  Some proponents of the FS/OSS movement argue proprietary software bad –On moral or other grounds  Some large software companies have tried to discredit FS/OSS –E.g., Microsoft in late 1990’s, though now appear to take seriously as valid competitor  FS/OSS software products are widely used –In mission critical commercial settings  FS/OSS presents very different models for software development and distribution

16 Apache Dominant Web Server  Monthly survey by Netcraft –Nearly 36M web servers polled –Apache even higher among “active” servers

17 Linux is #2 Server OS  Netcraft web server survey in 2001 –About 50% Windows, 30% Linux Solaris Unix about 7% BSD Unix about 6% –Includes sites such as Google and CNN  Surveys of OS sales put Linux around 25% –For server class machines –For desktops negligible –But hard to compare Windows and Linux sales Windows often pre-installed One Linux distribution often copied

18 Internet Runs on OSS/FS  Sendmail is the main mail delivery server –Distributed under BSD license (OSI approved) –A 2001 survey found 42% of Internet servers running sendmail Microsoft exchange next with 18%  Bind is the main Internet domain name server –Resolves names such as to IP addresses –A survey in 2000 found 95% of domain name servers running bind See

19 OSS/FS Projects  FS/OSS licensing is just one aspect  Reliable, widely used software requires more than just a licensing scheme –Plenty of FS/OSS projects have failed or have had limited impact Including large ones such as Mozilla  Internet had big impact on how FS/OSS teams work –Enabling qualitatively larger more dynamic groups and more feedback from users Torvalds led way with Linux kernel development

20 Cathedral and the Bazaar  Eric Raymond’s book on Open Source –Involved with GNU project since mid 1980’s  OSS/FS had been successful with smaller or less complex software –Tools such as those produced by GNU –C++ compiler while large was very well understood technology –Although emacs text editor was large and complex Stallman had written initial version  Complex software seemed to require more –Crafting a “Cathedral” using commercial development or individual super-star(s)

21 Linux Kernel Project  Torvalds’ development of the Linux kernel involved many people –Made active use of the Internet To coordinate contributions of many developers To interact with large number of users Often these were the same people –Torvalds’ “principles” Release early, release often Delegate anything you can Solicit input from anyone –Resembled a cacophonous bazaar Yet resulted in stable, quality complex software

22 Observations About Open Source  Based on the Linux project and his own experiences Raymond concluded –Every good work of (open source) software starts by scratching a developer's personal itch –Plan to throw one away; you will, anyhow. (Fred Brooks, The Mythical Man-Month) –When you lose interest in a program, your last duty is handing it off to a competent successor –Release early, release often, listen to users –Treating users as co-developers is your least- hassle route to rapid code improvement and effective debugging

23 Applicability of Open Source  The developers need to find the problem being solved exciting and personally useful –Tends to work better for Systems rather than applications software Widely used software (impact on the world) –Less appropriate to applications, particularly esoteric non-systems ones  Suggests potential of competition from OSS for vendors of systems software –Web servers already true – Apache –OS becoming true – Linux –Databases? – MySQL not major threat yet

24 Involve Many People  Get as many users as possible, early on –This works for proprietary development also, but requires mindset change from “cathedral”  Get as many developers as possible in your user base –They will be curious about things that don’t work for them and suggest fixes or extensions Requires source to be readily available  Recognize that code usually needs to be rewritten until it is easily understood –Like other creative works, revision and sometimes outright replacement

25 Sustainability Crucial  Many successful open source projects have “key personalities” –Stallman for GNU, Torvalds for Linux, Behlendorf for Apache  If OSS is to be viable alternative to commercial software need longevity –Users need to know that they don’t depend on one person for continued success –Different models Apache Software Foundation Commercial commitment to Linux