introduction to foss

31
1 | Internal use only Introduction to FOSS Presented By: Islam Wazery

Upload: islam-wazery

Post on 12-Dec-2014

1.225 views

Category:

Technology


0 download

DESCRIPTION

Introductory session for Free and Open Source Software

TRANSCRIPT

Page 1: Introduction to FOSS

1 | Internal use only

Introduction to FOSS

Presented By: Islam Wazery

Page 2: Introduction to FOSS

2 | Internal use only

Agenda

• What's FOSS?

• Pre-history

• History

• GNU Project

• FSF and FOSS Licences

• OSI Licences

• Free software vs. Open Source

• Why use FOSS?

• Famous FOSS projects

• FOSS in the Industry

• Why people contribute to FOSS?

Page 3: Introduction to FOSS

3 | Internal use only

What is FOSS?

• FOSS stands for Free and Open Source Software

• Free as in freedom, not necessarily price

• FOSS is an inclusive term which covers both free software

and open source software which are usually the same,

but the motivations are different, we will discuss the

difference later on.

• Their are alot of Alternative terms for free software like

FOSS or F/OSS or FLOSS.

Page 4: Introduction to FOSS

4 | Internal use only

Pre-history

• In the early days of computing, software was free.

• Free as in freedom, not necessarily price

• Source code was easily accessible.

• A “Hacker” is:

– Someone who loves to program and enjoys being clever

about it.

• In the early eighties, software companies began to restrict

access to the source code of their software.

Page 5: Introduction to FOSS

5 | Internal use only

How it was all started?

• No restrictions on software till late 1970s

• Angry with the increased restrictions imposed on access to

source code, Richard Stallman, an engineer at MIT AI

lab, decided to take action.

• Stallman wanted to preserve what he believed is a natural

human right: freedom.

• The GNU Project was born. Richard Stallman founded the

Free Software Foundation and the GNU project in 1983.

Page 6: Introduction to FOSS

6 | Internal use only

The GNU Project

• Stallman decided to build a new operating system that mimics the functionality of UNIX, but with one

major difference, it will stay free!

• The new OS name was derived from a hacker tradition: “GNU is Not Unix”.

• Development of GNU was initiated by Richard Stallman in 1983.

• An OS contains several components: Kernel, Text Editors, Compilers, etc.

• In September 1984, Stallman started the development of the Emacs text editor.

• GDB debugger was first written by Richard Stallman in 1986 as part of his GNU system

• GCC 1.0 was released in 1987, and the compiler was extended to compile C++ in December of that year.

• GNU Hurd kernel: which has been under development since 1990!

GNU

EmacsGCCHurd GDB

Result

Page 7: Introduction to FOSS

7 | Internal use only

The Free Software Foundation (FSF)

• The GNU Project was growing, many people started to

participate and to develop free software.

• The growth required funding to keep the momentum going.

• The Free Software Foundation (www.fsf.org) was established in

1985.

• FSF employees have written a number of GNU software

packages.

• In 1990, GNU was almost complete, the only missing

component was the kernel!

Page 8: Introduction to FOSS

8 | Internal use only

Alix, Hurd and Linux

• Stallman intended to develop a kernel for the GNU operating system

which was to be named after his sweetheart at the time: Alix.

• However, it was agreed that Hurd would be a more suitable name.

• Hurd stands for HIRD of Unix-replacing daemons, where HIRD stands for

HURD of interfaces representing depth!!

• During the early stages of the kernel development, another event was

underway in a different part of the world: Linus Torvalds was building

the Linux kernel.

Page 9: Introduction to FOSS

9 | Internal use only

Linux Kernel

• In 1991, Linus Torvalds, a student at the University of Helsinki in

Finland, released the source code for a very simple OS kernel

he developed under the GPL.

• Shortly after, many developers showed interest in the new born

kernel and started contributing to its development.

• But remember, Linux is only a kernel!

• Stallman and the folks at the FSF decided to adopt Linux as the

kernel of the GNU OS, which will be known from now on as

GNU/Linux.

Page 10: Introduction to FOSS

10 | Internal use only

FOSS Licences

• What grants that GNU will be free?– To preserve the freedoms that accompany any piece of free software, and to prevent the

misuse of these software, a legal structure was required. So, we need licences that

grants that.

• Hundreds of licences are available for FOSS

• FSF-approved licenses:

http://www.gnu.org/licenses/license-list.html

• OSI-approved licneses: http://opensource.org/licenses

• Most licences are approved by both.

• We'll concentrate on GPL, LGPL, and BSD licences

Page 11: Introduction to FOSS

11 | Internal use only

FSF Licence: GPL

• GPL stands for General Public License

• The GPL is a smart hack to use the traditional copyright

law to serve an opposite purpose.

• This method is called “Copyleft”.

– Most famous, and most commonly used

– Grants most freedoms for users

– Most demanding in terms of guaranteeing those freedoms

– Not very enterprise-friendly

– Guarantess project-viability nevertheless

– There are alot of versions for GPL; 1.0, 2.0, 3.0, LGPL, AGPL

Page 12: Introduction to FOSS

12 | Internal use only

GPL Freedoms

• Basic freedoms in Free Software:

– Freedom 0 to run the program, for any purpose.

– Freedom 1 to study how the program works, and change it to make it

do what you wish. Access to the source code is a precondition for

this.

– Freedom 2 to redistribute copies so you can help your neighbour.

– Freedom 3 to improve the program, and release your improvements

(and modified versions in general) to the public, so that the whole

community benefits. Access to the source code is a precondition

for this.

Page 13: Introduction to FOSS

13 | Internal use only

FSF Licence: LGPL

• LGPL stands for Lesser General Public Licence

– Modified version of GPL

– Almost the same as GPL with less restrictions

– Designed mainly to be a licence for libraries

– Allows non-free applications to link against the LGPL-

licences software

Page 14: Introduction to FOSS

14 | Internal use only

Free Beer vs. Free Speech

• "Free software is a matter of liberty, not price. To understand the

concept, you should think of free as in free speech, not as in free

beer."

– —Richard Stallman

• Free Beer is just like the freware which is given to you at no cost; like

Adobe Flash. But you can't access its source code.

• Free Speech is the free software which usually is licensed under GPL

and the libre part of it is that you must have the 4 freedoms.

Page 15: Introduction to FOSS

15 | Internal use only

The Open Source Initiative (OSI)

• The semantic confusion implicit in the use of the term “Free”

scared businesses and software companies as they believed

that it means “No Cost” or “Free Beer”.

• This was considered a hindrance to the growth and potential of

Free Software.

• In 1998, Linus Torvalds, with a handful of other prominent Free

Software developers (including Eric Raymond and Bruce

Perens, decided to address this issue.

• The Open Source Initiative was born.

Page 16: Introduction to FOSS

16 | Internal use only

The Open Source Initiative (OSI) (2)

• The Open Source Initiative (www.opensource.org) is based

on a bill of rights for computer users called the Open

Source Definition (OSD).

• OSI reviews different licenses for compliance with the

OSD, and if compliant, the licenses will be approved as

Open Source licenses. Examples: MPL, BSD, MIT.

• As of the 1st of May 2007, OSI has approved 58 licenses.

Page 17: Introduction to FOSS

17 | Internal use only

OSI licence: BSD Licence

• BSD Licence was first used by BSD OSs

– Less restriction on derived works

– BSD network stack modified and closed by Microsoft in

NT systems due to the relaxed restrictions

– Can be regarded as more enterprise-friendly

– Not FSF-approved but OSI-approved

Page 18: Introduction to FOSS

18 | Internal use only

Dual Licencing

• Some companies choose to release their software

with multiple licences

• This way they can leverage having a diverse developer

community, yet also have the perceived benefits of

closed-source distribution and licencing

• Example– Until recently, Qt – a C++ GUI library – had an open source edition released under the GPL,

and a commercial edition that contains additional libraries -e.g. Libraries to access

commercial DBs such as Oracle and MS SQL, which are not covered under the GPL.

Page 19: Introduction to FOSS

19 | Internal use only

Open Source Licenses• Educational Community License

• Eiffel Forum License

• Eiffel Forum License V2.0

• Eclipse Public License

• GNU General Public License (GPL)

• GNU Library or "Lesser" General Public License

(LGPL)

• Historical Permission Notice and Disclaimer

• IBM Public License

• Intel Open Source License

• Jabber Open Source License Lucent Public License

(Plan9)

• Lucent Public License Version 1.02

• MIT license

• MITRE Collaborative Virtual Workspace License

• Mozilla Public License 1.0 (MPL)

• Mozilla Public License 1.1 (MPL)

• NASA Open Source Agreement 1.3

• Naumen Public License

• Nethack General Public License

• Nokia Open Source License

• OCLC Research Public License 2.0

• Open Group Test Suite License

• PHP License

• Python license (CNRIPython License)

• Qt Public License (QPL)

Page 20: Introduction to FOSS

20 | Internal use only

Free vs. Open Source

• The distinction between Free Software and Open Source Software should be clearly

noted.

• Free Software is any software that is distributed under the GNU General Public

License (GPL).

– Free software movement (Free software foundation) is more concerned with

user's freedoms.

• Open Source is any software that is distributed under any of the licenses approved

by the OSI, including the GPL.

– Open Source is more about the shareability of the code. More enterprise-

friendly.

• The Open Source initiative allows more flexibility in defining the licensing terms.

• BSD license is regarded as non-free, yet open source. So that BSD is not FSF-

approved but OSI-approved.

Page 21: Introduction to FOSS

21 | Internal use only

Free vs. Open Source (2)

• Open Source Definition– Free Redistribution

– Access to source code

– Permitting Derived Works

– Integrity of The Author's Source Code

– No Discrimination Against Persons or Groups

– No Discrimination Against Fields of Endeavor

– Distribution of License

– License Must Not Be Specific to a Product

– License Must Not Restrict Other Software

– License Must Be Technology-Neutral

Page 22: Introduction to FOSS

22 | Internal use only

Distributions

• A Linux distribution is a collection of the Linux kernel, one or more of the desktop

environments available like Gnome and KDE styled in a specific way, some pre

installed packages … etc.

• Such distributions (often called distros for short)

• Because most of the kernel and supporting packages are free and open source

software, Linux distributions have taken a wide variety of forms

• Each distro have a goal; some want to be simple, some are made for server … etc.

• Ubuntu is JUST a Linux distro which its goal is: ”To create an easy-to-use (freedom

for users rather than freedom for programmers) Linux desktop with new releases

scheduled on a predictable six-month basis, resulting in a more frequently

updated system.”

• For Comparison on Linux distros see: http://bit.ly/NsfuQ

Page 23: Introduction to FOSS

23 | Internal use only

Famous FOSS projects

• Linux kernel

– 4 March 2011 - Linux 2.6.38 was released (14,294,439 lines of code).

Source: http://bit.ly/eEyWe2

• Apache Web server

– As of February 2011 Apache served over 59.13% of all websites and more

than 66.62% of the million busiest. Source: http://bit.ly/fOjC0M

• OpenJDK

• BSD operating systems (not Free but Open Source)

• Eclipse

• PHP

• Mozilla Firefox

Page 24: Introduction to FOSS

24 | Internal use only

Why use FOSS?

• The availability of the source code.

• The right of code modification, improvement and redistribution.

• No black box.

• Have an alternative.

• Low cost software (TCO).

• Free marketing and support for your project.

• Quick improvement.

• Large base of developers and users.

• Decreased number of open defects. (We should report bugs)

Page 25: Introduction to FOSS

25 | Internal use only

Why use FOSS? (2)

For you - as a student - FOSS is an immensly benficial educational tool.

Suggestion: A good idea is to integrate it within our educational curricula.

Page 26: Introduction to FOSS

26 | Internal use only

FOSS in The Industry

• Linux represents 12.7% of the overall server market share.

Source: http://bit.ly/ffcOQN

• Other estimates 60% share of the server market Source: http://bit.ly/9544md

• Netcraft reported in September 2006 that eight of the ten

most reliable internet hosting companies ran Linux

distributions on their web servers.

• Nevertheless, Linux has a great market share of

Supercomputers, cloud computing providers, and embedded

devices

Page 27: Introduction to FOSS

27 | Internal use only

FOSS in The Industry (2)

• Mozilla Firefox has celebrated a billion downloads on July

2009.

• Reported to have more than 20% of the market share

– Source: http://bit.ly/X1eL

Page 28: Introduction to FOSS

28 | Internal use only

Why people contribute to FOSS

• Most of OSS developers are paid, one way or another.

• Peer-recognition

• Personal Learning

• Use in personal projects

• Companies invest in the project to deliver it to a customer

• Provide training and support.

Page 29: Introduction to FOSS

29 | Internal use only

Why people contribute to FOSS

You should contribute too! ;)

Page 30: Introduction to FOSS

30 | Internal use only

Questions?

Page 31: Introduction to FOSS

31 | Internal use only

Thank You! :)