opensource
DESCRIPTION
TRANSCRIPT
Open Source / Free Software
GNU's Not Unix!
first open source software
Ada Lovelace
Firstcomputer programmer
Firstopen source software
Difference engine
Charles Babbage
Like similar designs
by
Pascal (1650-ish)
And
Liebniz (1700-ish)
the ‘Pascaline’ - around 1650
Leibniz's ‘Reckoner’, around 1700
Charles Babbage
Analytical Engine memory: store maths unit: mill programme: punched
cards input/output system printer to display results steam-driven
‘Analytical Engine’ - around 1833( never made - this is a model)
First computer program
1843: translated Italian article on Analytical Engine into English with extensive notes, including some complicated programs of her own, the most complex being one to calculate the sequence of Bernoulli numbers.
punch cards
how Open Source works
pirates?‘The modern computers of the era … had their
own operating systems, but none of them were free software: you had to sign a nondisclosure agreement even to get an executable copy. This meant that the first step in using a computer was to promise not to help your neighbor. A cooperating community was forbidden. The rule made by the owners of proprietary software was, “If you share with your neighbor, you are a pirate. If you want any changes, beg us to make them.” ’
— Richard Stallman
Richard Stallman
FREE SOFTWARE
as in
free speechnot
free beer(although that too)
GPL (Gnu Public License) protectionism for free software
code may be copied and modified without restriction, but that both copies and derivative works (that is, modified versions) must be distributed under the same license as the original, with no additional restrictions.
Uses copyright law to achieve an effect opposite that of traditional copyright: instead of limiting the software's distribution, it prevents anyone, even the author or copyright holder, from limiting it.
Better than putting code into the public domain, where any particular copy could be incorporated into a proprietary program - benefiting the 'enemy' of free software.
prevents nonfree programs from taking advantage of any GPL'd code, while allowing all GPL'd programs to cooperate among themselves by sharing unrestrictedly.
four kinds of freedom
0. The freedom to run the program, for any purpose.
1. The freedom to study how the program works, and adapt it to your needs.Access to the source code is a precondition for this.
2. The freedom to redistribute copies so you can help your neighbor.
3. The freedom to improve the program, and release your improvements to the public, so that the whole community benefits.Access to the source code is a precondition for this.
source code
the set of
human-readable
instructions that define
how a program behaves;
to study or modify a
program, you need its
source code.
free software is:
software that may be modified and redistributed freely by anyone, with no significant restrictions on how the code may be changed, the uses to which it
may be put, or the parties with whom it may be shared.
Scratching your own itch
Because they are their own users, (Open Source developers) know the correct answers to 90% of the decisions they have to make. I think this is one of the reasons folks come home after a hard day of coding and then work on open source: It's relaxing.
— Dave Thomas, The Pragmatic Programmers
you mean they code for fun?scratching an itch
One or more developers (programers/hackers) get an idea about creating software to solve a problem and start writing code to create a solution. This is frequently called "scratching an itch."
freeing the codeThe developers put their projects where other developers can download it and play with it, like SourceForge.com. The source code is usually published under one of several popular open source licenses that ensure that the code and any derivative works remain open source.
enough eyeballs"with enough eyeballs, every bug is shallow " - Eric Raymond. Through an informal process of sharing ideas, fiddling with each others' code, and trial and error, the software gets better and better, sometimes changing direction to solve new problems as new people discover the software.
active or dormantAt some point, the software gets finished or doesn't. As time goes on, developers come and go, and projects become popular, stay obscure, or fade away. Programs like Linux and Apache have had thousands of contributors. Other projects have been created by one or two people.
the reaction (1)
‘Linux is a cancer that attaches itself in an intellectual property sense to everything it touches’
- Steve Ballmer, Microsoft
http://www.theregister.co.uk/2001/06/02/ballmer_linux_is_a_cancer/
The reaction (2)
The Linux kernel
Created byLinus Torvaldsin 1991.
GNU/Linux
The Linux kernel - a Unix-like operating system kernel best known for its use in the Linux operating system.
Released under the GNU General Public License (GPL) and developed by contributors worldwide, one of the most prominent examples of free and open source software.
how / why Linux grew, and grows
At the time, the GNU Project kernel, GNU Hurd, was incomplete and unavailable.
The BSD operating system had not yet freed itself from legal encumbrances.
This left a space for the Linux kernel to fill. Despite limited functionality in early versions, rapidly
accumulated developers and users. Early on, the Minix community contributed code and
ideas. Today it has received contributions from thousands of
programmers.
‘business-friendly’ Open Source
Open Source Initiative
1998allow free software movement to enter
the mainstream
keep: the licenses collaborative practices
lose: talk of freedom and
ideology
Tim O'Reilly & Eric Raymond
A group of people including Eric Raymond and Tim O'Reilly came together and started using the term open source instead of free software. Many people now use the terms separately, or the combined term free and open source software, abbreviated as FOSS.
HT Vulnerability? Hyperthreading??Read this (it won’t help, though… :)
http://www.onlamp.com/pub/a/bsd/2005/07/21/Big_Scary_Daemons.html
The legacy and the future
Custom tells us copyright was designed to subsidize creation.
The vitality of the free software scene hints that copyright may really have served to subsidize
distribution.
As distribution costs go to zero via the internet, will people start cooperating on works other
than software?
barriers to Open Source
people follow other peopledon't like to be told to change, implies they've made the ‘wrong’ choice
negative lock-inenough people use it, so it dominates, like QWERTY and VHS
who uses Open Source?
Yahoo Amazon Google etc.
plus…
most of the web:‘large body of high-quality code on which much of
the internet depends for critical functions, and … the core operating system for an increasing number of desktop machines as well’
LAMP: the Open Source web platform
Linux and Apache, with MySQL and either Perl, Python, or PHP
‘...there are plenty of excellent open source variants for any of the pieces of LAMP. Let the L stand for Linux, FreeBSD, NetBSD, OpenBSD, and Darwin/Mac OS X, all of which are open source operating systems and all but the latter have open source GUI layers. Let the M stand for MySQL and PostGreSQL. Let the P stand for PHP, Perl, Python, and Ruby.’
http://www.onlamp.com/pub/a/onlamp/2001/01/25/lamp.html
A free software project cannot:
be unilaterally shut down
taken down a wrong path
removed from use
So is becoming recognised as a safer
option for organisations and businesses
international Open Source
FSF Latin Americahttp://www.fsfla.orgcampaign against non-free software to fill in tax forms
AVOIRhttp://avoir.uwc.ac.za/avoir/African Virtual Open Initiatives and Resources
Ubuntu Linux
Redflag Linux
‘“As a result of what we're doing in China, five or 10 years from now you'll have a healthy ecosystem of Linux providers who will be a true alternative to a proprietary operating system.” Meaning Microsoft's Windows.’
- Free Standards Group
Steve Hamm, A big step for Linux in China, 12/01/06http://www.businessweek.com/the_thread/techbeat/archives/2006/01/a_big_step_for.html
Some key organisationsOpen Source Development Labs (OSDL) http://www.osdl.org
Home to Linus Torvalds, founded by large companies like IBM and Intel but with a large external membership, seeks to promote the development of Linux and its use in enterprise computing.
Apache Software Foundation http://www.apache.orgUmbrella organization for the Apache project that developed the Apache HTTP Server and many other projects.
Perl Foundation http://www.perlfoundation.orgpromoting the development, education, and use of the Perl language.
Python Software Foundation http://www.python.org/psf/promoting the development, education, and use of the Python language.
GIMP http://www.gimp.org/downloads/GNU Image Manipulation Program - ‘Open Source Photoshop’ (scroll down for Windows, Linux and Mac-specific downloads).
Mozilla.org http://www.mozilla.orgOriginally the home to the source code initially released as open source from Netscape, and now many popular projects like Firefox.
OpenOffice.org http://www.openoffice.orgthe MS Office alternative. Free.
Sources and references
Dan Woods, 'What Is Open Source' 15/09/2005, http://www.onlamp.com/pub/a/onlamp/2005/09/15/what-is-opensource.html
Karl Fogel, What Is Free Software, 29/09/2005 http://www.onlamp.com/pub/a/onlamp/2005/09/29/what-is-free-software.html
The Free Software Foundationhttp://www.fsf.organd free software directory:http://directory.fsf.org
The GNU projecthttp://www.gnu.organd General Public License (GPL):http://www.gnu.org/copyleft/gpl.html
LAMP: The Open Source Web Platformhttp://www.onlamp.com/pub/a/onlamp/2001/01/25/lamp.html