35 years of open source software
DESCRIPTION
History of Free and Open Source Software. From the university lab to the enterprise. New Zealand Computer Society Innovation Conference. Thanks to Evonne Cheung for her awesome graphics!TRANSCRIPT
![Page 1: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/1.jpg)
![Page 2: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/2.jpg)
The Age of Incompatible
Expensive Machines
![Page 3: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/3.jpg)
![Page 4: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/4.jpg)
![Page 5: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/5.jpg)
selling hardware
![Page 6: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/6.jpg)
1968
hardware software
![Page 7: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/7.jpg)
COBOL
FORTRAN
Algol
![Page 8: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/8.jpg)
#!/usr/bin/perl## This program is free software; you can redistribute it and/or modify# it under the terms of the GNU General Public License as published by# the Free Software Foundation; either version 2 of the License, or# (at your option) any later version.## This program is distributed in the hope that it will be useful,# but WITHOUT ANY WARRANTY; without even the implied warranty of# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the# GNU General Public License for more details.#
use strict;use warnings;
use Getopt::Long;
# Declaration of important/main variables.my $quiet = 0;my $sparse = 0;my $help = 0;my $explain = 1;my $debug = 0;my $reasondir = '/usr/share/vrms/reasons/';my %reason = ();
## Auxiliary functions section (FIXME: put them in a file by themselves).#
# sub usage:# Input: nothing.# Output: Messages to stdout telling the usage of the program.sub usage() { print <<EOF;Usage: vrms [OPTIONS] ...
--quiet, -q Do nothing if there are no non-free packages installed.--explain, -e Give a brief explanation of why a package is non-free, if available.--sparse, -s Just list non-free packages, nothing else.--reason-dir=DIR Use DIR as the reason directory.--help, -h Display this help.--debug, -d Generate debugging information.
All options can be prefixed with "no" (eg: --noexplain) to turn them off.EOF}
# sub parse_reason_file:# Input: the name of a reason file and the global hash %reason# Output: the hash %reason filled with reasons from the input file# (FIXME: %reason shouldn't be global)sub parse_reason_file { my $file = shift; print "Parsing reason file $file\n" if $debug >= 1; open(REASON, "<", $file) ordie "Can't open FILE [$file]: $!\n"; while (my $line = <REASON>) {chomp $line;# Grab a line of the form 'package: reason', skip if we don't matchmy ($pkg, $reason) = ($line =~ /^(\S+):\s+(.*)\s*$/) or next;print "'$pkg' because '$reason'\n" if ($debug >= 1);
# If this is _our_ master file, then prefer anything# else (so that package maintainers can override)next if exists $reason{$pkg} and $file =~ /\/vrms$/;
$reason{$pkg} = $reason; }
close REASON ordie "Can't close FILE [$file]: $!\n";}
## Main program starts here.#GetOptions('q|quiet' => \$quiet, 's|sparse' => \$sparse, 'e|explain!' => \$explain, 'reason-dir=s' => \$reasondir, 'd|debug+' => \$debug, 'h|help' => \$help);
if ($help) { usage(); exit 0;}
opendir(REASONDIR, $reasondir) or die "Can't open DIR [$reasondir]: $!\n";# Parse all the reason files in $reasondir except those beginning with# a . or ending with a ~parse_reason_file("$reasondir/$_") foreach (grep {!/~$/ && !/^\./} readdir(REASONDIR));closedir REASONDIR or die "Can't close DIR [$reasondir]: $!\n";
my $statusfile = '/var/lib/dpkg/status';my $is_nonfree = 0; ### preset none found, yetmy %nonfree = ();my $is_other_nonfree = 0; ### preset none found, yetmy %other_nonfree = ();my $is_contrib = 0; ### preset none found, yetmy %contrib = ();my $is_other_contrib = 0; ### preset none found, yetmy %other_contrib = ();my %pkg_status = ();my $pkgcnt = 0;my $clumpcnt = 0;my $dontcarelines = 5; ### no. of lines a non-installed entry may have in the statusfile
my $sysname = "";chop($sysname = `uname -n`);
open(PKG_SOURCE, "< $statusfile") or die "Can't open FILE [$statusfile]: $!\n";
$/ = ""; ### snarf a paragraph at a timewhile(<PKG_SOURCE>) { my $clump = $_; $clumpcnt++; my (@pkglines) = split(/\n/, $clump); ### iff more than $dontcarelines lines, package is installed, so process it ### (speed-up by skipping don't-care entries) if (@pkglines > $dontcarelines) {my $pkg = ""; ### name of this packagemy $pkgstatus = ""; ### statusmy $plan = ""; ### install plan (hold, deinstall, purge, install, etc.)my $state = ""; ### state (ok or ???)my $status = ""; ### status (installed, not-installed, etc.)my $section = ""; ### section this is where non-free is markedmy $shortdescr = ""; ### one-liner description of pkgmy $linenbr = 0; ### current line number of this pkackag's infomy $label = ""; ### junk field (not used, except to catch split values)my $has_pkg = 0; ### reset the markersmy $has_status = 0;my $has_section = 0;
foreach (@pkglines) { chomp; $linenbr++; if (/^Package:/) {($label, $pkg) = split(/:\s+/,$_,2);$pkgcnt++;printf "pkg(%4.4d) pkg=[%s]\n",$pkgcnt,$pkg if $debug >= 1;$has_pkg = 1; ### we have necessary sectionnext; } if (/^Status:/) {my $label = "";($label, $pkgstatus) = split(/:\s+/,$_,2);print "\tpkgstatus=[$pkgstatus]\n" if $debug >= 1;$pkg_status{$pkg} = $pkgstatus;($plan, $state, $status) = split(/\s+/,$pkgstatus);print "\t\tplan=[$plan]\n" if $debug >= 1;print "\t\tstate=[$state]\n" if $debug >= 1;print "\t\tstatus=[$status]\n" if $debug >= 1;$has_status = 1; ### we have necessary sectionnext; } if (/^Section:/) {my $label = "";($label, $section) = split(/:\s+/,$_,2);print "\tsection=[$section]\n" if $debug >= 1;$has_section = 1; ### we have necessary sectionif ($section =~ /contrib|non-free|restricted|multiverse/) { ### read thru rest of array to find descr instead of waiting for it my $found_descr =0; while (! $found_descr) {if ($linenbr > $#pkglines) { ### iff badly formed entry ensure blank description print "\tEEEE shortdescr=[$shortdescr]\n" if $debug >= 1; last;}my $dline = $pkglines[$linenbr++];if($dline =~ /^Description:/) { ($label, $shortdescr) = split(/:\s+/,$dline,2); print "\tshortdescr=[$shortdescr]\n" if $debug >= 1; $found_descr = 1;} } if ($section =~ /contrib/) {if (lc $status eq 'installed') { $is_contrib = 1; $contrib{$pkg} = $shortdescr;} else { $is_other_contrib = 1; $other_contrib{$pkg} = $shortdescr;} } else {if (lc $status eq 'installed') { $is_nonfree = 1; $nonfree{$pkg} = $shortdescr;} else { $is_other_nonfree = 1; $other_nonfree{$pkg} = $shortdescr;} }}last; ### this is last desriptor of package we care about so end loop } else {### un-processed lines from package infoif($debug >= 1) { print "\t\t--- $_\n";} }}if (!$has_status or !$has_pkg) { print STDERR "vrms: ERROR- Badly formed dpkg-status entry #$clumpcnt!\n"; print STDERR " pkg=[$pkg], pkgstatus=[$pkgstatus], section=[$section] \n";}
source code
![Page 9: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/9.jpg)
The Birth of UNIX
![Page 10: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/10.jpg)
![Page 11: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/11.jpg)
![Page 12: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/12.jpg)
![Page 13: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/13.jpg)
UNIX.zip
UNIX-source.zip
![Page 14: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/14.jpg)
t r a d e s e c r e t
![Page 15: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/15.jpg)
t r a d e s e c r e t
most widely anddeeply understood
in the historyof computing
![Page 16: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/16.jpg)
sharinginnovations
&bug fixes
![Page 17: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/17.jpg)
![Page 18: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/18.jpg)
![Page 19: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/19.jpg)
![Page 20: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/20.jpg)
The Birth of Proprietary
Software
![Page 21: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/21.jpg)
1980
![Page 22: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/22.jpg)
proprietary software
![Page 23: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/23.jpg)
![Page 24: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/24.jpg)
![Page 25: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/25.jpg)
![Page 26: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/26.jpg)
sharing
![Page 27: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/27.jpg)
shareware
![Page 28: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/28.jpg)
![Page 29: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/29.jpg)
The Rise of Free Software
![Page 30: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/30.jpg)
![Page 31: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/31.jpg)
![Page 32: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/32.jpg)
1984
![Page 33: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/33.jpg)
Free Software
![Page 34: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/34.jpg)
Free as in speech
![Page 35: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/35.jpg)
Free as in freedom
![Page 36: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/36.jpg)
Free as in beer
![Page 37: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/37.jpg)
1. use
2. copy
3. modify
4. contribute
![Page 38: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/38.jpg)
![Page 39: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/39.jpg)
1989, 1991
GPL
![Page 40: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/40.jpg)
you must extend the
same freedomsto others
![Page 41: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/41.jpg)
copyleft
![Page 42: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/42.jpg)
permissivelicenses
![Page 43: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/43.jpg)
you give completefreedom to
developers
![Page 44: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/44.jpg)
![Page 45: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/45.jpg)
![Page 46: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/46.jpg)
![Page 47: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/47.jpg)
![Page 48: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/48.jpg)
1993
![Page 49: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/49.jpg)
1995
![Page 50: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/50.jpg)
2000
$1,000,000,000
![Page 51: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/51.jpg)
Free Software Becomes
Mainstream
![Page 52: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/52.jpg)
![Page 53: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/53.jpg)
1998
![Page 54: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/54.jpg)
![Page 55: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/55.jpg)
![Page 56: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/56.jpg)
![Page 57: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/57.jpg)
![Page 58: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/58.jpg)
![Page 59: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/59.jpg)
![Page 60: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/60.jpg)
![Page 61: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/61.jpg)
Open Sourceis Everywhere
![Page 62: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/62.jpg)
![Page 63: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/63.jpg)
![Page 64: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/64.jpg)
![Page 65: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/65.jpg)
![Page 66: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/66.jpg)
![Page 67: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/67.jpg)
all software
![Page 68: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/68.jpg)
![Page 69: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/69.jpg)
![Page 70: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/70.jpg)
![Page 71: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/71.jpg)
![Page 72: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/72.jpg)
![Page 73: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/73.jpg)
![Page 74: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/74.jpg)
![Page 75: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/75.jpg)
2005–2007
![Page 76: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/76.jpg)
![Page 77: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/77.jpg)
![Page 78: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/78.jpg)
![Page 79: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/79.jpg)
Software Freedom as Inspiration
![Page 80: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/80.jpg)
![Page 81: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/81.jpg)
![Page 82: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/82.jpg)
![Page 83: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/83.jpg)
![Page 84: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/84.jpg)
open data
![Page 85: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/85.jpg)
open access
![Page 86: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/86.jpg)
![Page 88: 35 Years of Open Source Software](https://reader037.vdocuments.us/reader037/viewer/2022103016/554be38cb4c90556328b48da/html5/thumbnails/88.jpg)
Photo credits:
ibm 360 with people: http://www.flickr.com/photos/cote/54408562/sizes/l/in/photostream/cdc6600: https://secure.wikimedia.org/wikipedia/en/wiki/File:Personable_Computer.jpgken and dennis with medals: https://secure.wikimedia.org/wikipedia/commons/wiki/File:Medal_lg.jpegwarrington logo: http://wikieducator.org/File:Warrington_logo.pngashs logo: http://wikieducator.org/File:ASHS_logo.pngwanted poster: http://www.flickr.com/photos/mscaprikell/59580038/in/photostream/tape: http://www.flickr.com/photos/leejordan/486911915/tim o'reilly: https://secure.wikimedia.org/wikipedia/commons/wiki/File:Tim_O%27Reilly_in_Foo_China_2007.JPGfsf logo: https://secure.wikimedia.org/wikipedia/en/wiki/File:FSF-Logo.svgtux: https://secure.wikimedia.org/wikipedia/commons/wiki/File:Tux.svgopen source: https://secure.wikimedia.org/wikipedia/commons/wiki/File:Opensource.svgstock market: http://www.flickr.com/photos/thewalkingirony/3051500551/android logo: https://secure.wikimedia.org/wikipedia/en/wiki/File:Android_logo.svgin-flight entertainment: http://www.flickr.com/photos/kalleboo/2473197800/samsung tv: http://www.flickr.com/photos/johannesfreund/2320330661/Linus: http://en.wikipedia.org/wiki/File:Linus_Torvalds.jpegBill Gates: http://en.wikipedia.org/wiki/File:Bill_Gates_in_WEF_,2007.jpgBruce Perens: [not CC] http://perens.com/press/photos/Lawrence Lessig: http://en.wikipedia.org/wiki/File:Lessig_portrait.jpgJimmy Wales: http://en.wikipedia.org/wiki/File:Jimmy_Wales_Fundraiser_Appeal_edit.jpgSteve Ballmer: http://en.wikipedia.org/wiki/File:Steve_ballmer_2007_outdoors2.jpgus department of justice: https://secure.wikimedia.org/wikipedia/en/wiki/File:US-DeptOfJustice-Seal.svg