making open source work
DESCRIPTION
A broad introduction to what open source software is, how open source communities work, the differences between open source licenses and insights into the Apache Software Foundation. Prepared and delivered to Microsoft in Hong Kong.TRANSCRIPT
Making Open Source WorkJ Aaron Farr
Sep 2008
Me
Aaron馮傑仁
farra @ apache . org
DirectorApache Software
Foundation
Co-Founder
JadeTower!"
• Independent US non-profit
• Volunteer organization
• Virtual world-wide organization
• Currently hosts more than 50 software projects
• More than 1000 contributors and almost 300 members
• Began as the Apache Group in 1996
• Incorporated as the ASF in 1999
Apache Software Foundation
Apache Committers
Apache Committers
Apache Committers
Apache Committers
Apache Committers
Apache Members
• Foundation shareholders
• Elected by peers
• Currently 272
Virtual World-Wide Org
North AmericaSouth AmericaEuropeAfricaAustraliaAsia
Org Chart
BOARD
FOUNDATION MEMBERS
OFFICERS COMMITTEESPROJECT MANAGEMENT
COMMITTEES(PMC)
COMMITTERS
Org Chart
• Legal
• Security
• Public Relations
• Infrastructure
• Conference Planning
CommitteesBoard Members
9 Members Elected Annually
Free & Open Source Software
Licenses
Community
Code
Landscape
Relevance
It’s “impossible to avoid”- Gartner 2007 Study
- Open source impossible to avoid, Gartner says”, Network World
http://www.networkworld.com/news/2007/092007-open-source-unavoidable.html
By 2011, 80% of all commercial software
will contain open source code.
- Open source impossible to avoid, Gartner says”, Network World
http://www.networkworld.com/news/2007/092007-open-source-unavoidable.html
`
SourceForge
180,000+
Commercial Support
Commercial Support
• IBM
• Sun
• Intel
• Apple
• HP
• Dell
• Novell
• Oracle
• Motorola
• Yahoo
•
Commercial Support
• IBM
• Sun
• Intel
• Apple
• HP
• Dell
• Novell
• Oracle
• Motorola
• Yahoo
• Microsoft
What is Open Source?
Open Source describes a software license that
ensures certain freedoms.
• Free Distribution
• Source Code
• Integrity of Author’s Code
• No Discrimination
• Distribution of License
• Not specific to a product
• Not restrict other software
• Technology Neutral
Open Source Definition
Free Software Definition
• run the program, for any purpose
• study how the program works, and adapt it to your needs
• redistribute copies so you can help your neighbor
• improve the program, and release your improvements to the public, so that the whole community benefits
What’s the difference between free software
and open source software?
License and Philosophy
Free
自由免費
自由免費
Who’s freedom?What freedom?
Free vs Open Source
FREE SOFTWARE
• Freedom of the code
• Source code will ALWAYS be available and can never be restricted.
OPEN SOURCE
• Freedom of the developer
• Code CAN be included in proprietary works under certain conditions.
Licenses
Academic Free LicenseAdaptive Public LicenseApache Software LicenseApache License, 2.0Apple Public Source LicenseArtistic licenseArtistic license 2.0Attribution Assurance LicensesNew BSD licenseComputer Associates Trusted Open Source License 1.1Common Development and Distribution LicenseCommon Public Attribution License 1.0 (CPAL)Common Public License 1.0CUA Office Public License Version 1.0EU DataGrid Software LicenseEclipse Public LicenseEducational Community License, Version 2.0Eiffel Forum LicenseEiffel Forum License V2.0Entessa Public LicenseFair LicenseFrameworx LicenseGNU General Public License (GPL)GNU General Public License version 3.0 (GPLv3)GNU Library or "Lesser" General Public License (LGPL)GNU Library or "Lesser" General Public License version 3.0 (LGPLv3)Historical Permission Notice and DisclaimerIBM Public LicenseIntel Open Source LicenseJabber Open Source LicenseLucent Public License (Plan9)Lucent Public License Version 1.02
Microsoft Public License (Ms-PL)Microsoft Reciprocal License (Ms-RL)MIT licenseMITRE Collaborative Virtual Workspace License (CVW License)Motosoto LicenseMozilla Public License 1.0 (MPL)Mozilla Public License 1.1 (MPL)NASA Open Source Agreement 1.3Naumen Public LicenseNethack General Public LicenseNokia Open Source LicenseOCLC Research Public License 2.0Open Group Test Suite LicenseOpen Software LicensePHP LicensePython license (CNRI Python License)Python Software Foundation LicenseQt Public License (QPL)RealNetworks Public Source License V1.0Reciprocal Public LicenseRicoh Source Code Public LicenseSleepycat LicenseSun Industry Standards Source License (SISSL)Sun Public LicenseSybase Open Watcom Public License 1.0University of Illinois/NCSA Open Source LicenseVovida Software License v. 1.0W3C LicensewxWindows Library LicenseX.Net LicenseZope Public Licensezlib/libpng license
OSI ApprovedAcademic Free LicenseAdaptive Public LicenseApache Software LicenseApache License, 2.0Apple Public Source LicenseArtistic licenseArtistic license 2.0Attribution Assurance LicensesNew BSD licenseComputer Associates Trusted Open Source License 1.1Common Development and Distribution LicenseCommon Public Attribution License 1.0 (CPAL)Common Public License 1.0CUA Office Public License Version 1.0EU DataGrid Software LicenseEclipse Public LicenseEducational Community License, Version 2.0Eiffel Forum LicenseEiffel Forum License V2.0Entessa Public LicenseFair LicenseFrameworx LicenseGNU General Public License (GPL)GNU General Public License version 3.0 (GPLv3)GNU Library or "Lesser" General Public License (LGPL)GNU Library or "Lesser" General Public License version 3.0 (LGPLv3)Historical Permission Notice and DisclaimerIBM Public LicenseIntel Open Source LicenseJabber Open Source LicenseLucent Public License (Plan9)Lucent Public License Version 1.02
Microsoft Public License (Ms-PL)Microsoft Reciprocal License (Ms-RL)MIT licenseMITRE Collaborative Virtual Workspace License (CVW License)Motosoto LicenseMozilla Public License 1.0 (MPL)Mozilla Public License 1.1 (MPL)NASA Open Source Agreement 1.3Naumen Public LicenseNethack General Public LicenseNokia Open Source LicenseOCLC Research Public License 2.0Open Group Test Suite LicenseOpen Software LicensePHP LicensePython license (CNRI Python License)Python Software Foundation LicenseQt Public License (QPL)RealNetworks Public Source License V1.0Reciprocal Public LicenseRicoh Source Code Public LicenseSleepycat LicenseSun Industry Standards Source License (SISSL)Sun Public LicenseSybase Open Watcom Public License 1.0University of Illinois/NCSA Open Source LicenseVovida Software License v. 1.0W3C LicensewxWindows Library LicenseX.Net LicenseZope Public Licensezlib/libpng license
Academic Free LicenseAdaptive Public LicenseApache Software LicenseApache License, 2.0Apple Public Source LicenseArtistic licenseArtistic license 2.0Attribution Assurance LicensesNew BSD licenseComputer Associates Trusted Open Source License 1.1Common Development and Distribution LicenseCommon Public Attribution License 1.0 (CPAL)Common Public License 1.0CUA Office Public License Version 1.0EU DataGrid Software LicenseEclipse Public LicenseEducational Community License, Version 2.0Eiffel Forum LicenseEiffel Forum License V2.0Entessa Public LicenseFair LicenseFrameworx LicenseGNU General Public License (GPL)GNU General Public License version 3.0 (GPLv3)GNU Library or "Lesser" General Public License (LGPL)GNU Library or "Lesser" General Public License version 3.0 (LGPLv3)Historical Permission Notice and DisclaimerIBM Public LicenseIntel Open Source LicenseJabber Open Source LicenseLucent Public License (Plan9)Lucent Public License Version 1.02
Microsoft Public License (Ms-PL)Microsoft Reciprocal License (Ms-RL)MIT licenseMITRE Collaborative Virtual Workspace License (CVW License)Motosoto LicenseMozilla Public License 1.0 (MPL)Mozilla Public License 1.1 (MPL)NASA Open Source Agreement 1.3Naumen Public LicenseNethack General Public LicenseNokia Open Source LicenseOCLC Research Public License 2.0Open Group Test Suite LicenseOpen Software LicensePHP LicensePython license (CNRI Python License)Python Software Foundation LicenseQt Public License (QPL)RealNetworks Public Source License V1.0Reciprocal Public LicenseRicoh Source Code Public LicenseSleepycat LicenseSun Industry Standards Source License (SISSL)Sun Public LicenseSybase Open Watcom Public License 1.0University of Illinois/NCSA Open Source LicenseVovida Software License v. 1.0W3C LicensewxWindows Library LicenseX.Net LicenseZope Public Licensezlib/libpng license
OSI Approved
64
3 Kinds
Give Me CreditGive Me Code
Give Me Everything
- Dave Johnsonhttp://rollerweblogger.org/page/roller?entry=gimme_credit_gimme_fixes_gimmem
Give Me Credit
• Software “Commons”
• Derivative works can re-license
• May have some conditions
• No warranty
• Credit to original authors
• Apache License, BSD, MIT
Give Me Code
• File or derivative based conditions
• Original author may have special rights
• Differentiate between source and binary
• Larger works may be re-licensed
• LGPL, Mozilla (MPL), Eclipse (EPL/CPL)
Give Me Everything
• Copyleft
• Share and Share Alike
• Derivative works remain under original license
• GPL
License ScopeVirus Index
License Scope
AL MPL GPL
Virus Index
Can I Relicense?
AL MPL GPL
Can I Relicense?
AL MPL GPL
Can I Relicense?
AL MPL GPL
Can I Relicense?
AL MPL GPL
Can I Relicense?
AL MPL GPL
Can I Relicense?
AL MPL GPL
Can I Relicense?
AL MPL GPL
Can I Relicense?
AL MPL GPL
Can I Relicense?
AL MPL GPL
Why is that important?
Many developers don’t read licenses.
Open source developers need to be aware of the
licenses they use.
The right license depends on the code and the community.
Licenses encourage certain behaviors, discourage others.
community
Cathedral vs Bazaar
Cathedral
Cathedral
Bazaar
Bazaar
Community Culture
Cathedral Bazaar
Community Culture
Cathedral Bazaar
Who
Users Developers
Contributors
Path to Contribution
Developer
Contributor
User
Public
Involvement
Meritocracy
Meritocracy
Govern of MeritIt’s about what you do.Those who do, decide .
Commit Bits
• When? It depends.
• In Apache, when contributor shows consistent commitment
• The ASF averages 15 new committers a month, but most of that is through new projects entering.
• Many projects only add 2 committers a year
When to Commit?
Commit Then Review
Review Then Commit
Consensus Decision Making• Most decisions made on mailing list without
voting, sometimes by way of lazy consensus.
• Voting rules
Yes Abstain No (veto)+1 0 -1
• For releases, 3 +1’s required, no vetos
• A -1 veto requires proposal of alternate solution
Open Communication
• Communication is done online.
• Email lists are preferred form of communication.
• Most communication is publicly archived.
• Most lists are open to any subscriber.
Responsible Oversight
• Security is mandatory
• Ensure license compliance
• Release only high quality software
• No abuse of Apache brand or community
Peer to Peer
• We work with people, not companies.
• Committers and members should hold one another with respect.
• All votes hold the same weight.
• Community over code.
The Apache Way
• Meritocracy
• Peer to Peer
• Consensus decision making
• Open, online communication
• Responsible oversight
A Note on Size
• Most developer communities are small
• Even with large developers, most of the development is usually by a small number of developers
• Apache requires minimum of 3 independent votes for a release
Apache’s Long Tail
!"#$%&'()*+,,,*-!./*0"*12*#314&5(26*&7*8%"9226&7'5*":*;!<=>+,,,*
* ?*@*?*
A325)&"75* B1"3)* ("C* -#B9(2* 62D24"#E27)* CB5* "%'B7&F26G*
B76* #%"D&625* 25527)&B4* 1B9H'%"376* :"%* 3762%5)B76&7'* "3%*
A3B7)&)B)&D2*%2534)5/**;7*)(2*72I)*529)&"7G*C2*)BH2*B*94"52%*4""H*
B)* )(2*6&5)%&13)&"7*":*62D24"#E27)G*62:29)* %2#B&%G*B76* )25)&7'*
C"%H* &7*)(2*-#B9(2*#%"J29)G*B5*C244*B5*)(2*9"62*B76*#%"9255*
:%"E*)(2*#"&7)*":*D&2C*":*935)"E2%*9"792%75/*
!" #$%&'('%'()*"+*,$-',"
;7* )(&5* 529)&"7* C2* #%2527)* %2534)5* :%"E* 52D2%B4* A3B7)&)B)&D2*
B7B4$525*":*)(2*B%9(&DB4*6B)B*:%"E*)(2*-8-!K=*#%"J29)/*0(2*
E2B53%25* C2* 62%&D2* :%"E* )(252* 6B)B* B%2* C244?53&)26* )"*
B66%255* "3%* %252B%9(* A325)&"75* L+MN* ("C2D2%G* )(2$* EB$* 12*
37:BE&4&B%* )"* EB7$* %2B62%5* 5&792* )(2$* B%2* 7")* 5":)CB%2*
E2)%&95* )(B)*B%2* &7*C&62*352G*2/'/G* LOGPM/* *Q"%*)(&5*%2B5"7G*C2*
#%"D&62* 6B)B* :%"E* 52D2%B4* 9"EE2%9&B4* #%"J29)5G* )"* '&D2* )(2*
%2B62%* 5"E2* 52752* ":* C(B)* H&765* ":* %2534)5* E&'()* 12*
2I#29)26/* *-4)("3'(*C2* #&9H26* 52D2%B4* 9"EE2%9&B4* #%"J29)5*
)(B)* B%2* %2B5"7B14$* 94"52* )"* -8-!K=G* 7"72* &5* B* #2%:29)*
EB)9(G* B76* )(2* %2B62%* 5("346* 7")* &7:2%* )(B)* )(2* DB%&B)&"7*
12)C227* )(252* 9"EE2%9&B4* #%"J29)5* B76* -8-!K=* &5* 632*
27)&%24$* )"* 6&::2%27925* 12)C227* 9"EE2%9&B4* B76* R<<*
62D24"#E27)*#%"925525/*
;)*&5*&E#"%)B7)*)"*7")2*)(B)*)(2*52%D2%*&5*625&'726*5"*)(B)*72C*
:379)&"7B4&)$* 7226* 7")* 12* 6&5)%&13)26* B4"7'* C&)(* )(2* 9"%2*
52%D2%/* * 0(2%2* B%2* C244* "D2%* S,,* :2B)3%2?:&4426* E"63425*
6&5)%&13)26* 1$* )(&%6* #B%)&25G* B76* )(35* 7")* &7943626* &7* "3%*
5)36$/* *.B7$* ":* )(252* E"63425* &794362* E"%2* 4&725* ":* 9"62*
)(B7*)(2*9"%2*52%D2%/*
!./"'01"2341"56"701"%89:01";1<1=58>1?7":5>>@?37A."
!"#$ %&'$ ()*+$ ,-&,.-$ '/&0-$ 1&2-$ 3&/$ *-'$ 4,)15-$
36*107&*).70+8$ $%&'$()*+$,-&,.-$ /-,&/0-2$,/&9.-(:8$ $%&'$
()*+$,-&,.-$/-,)7/-2$2-3-10:8$
0(2* #B%)&9&#B)&"7* &7* -#B9(2* 62D24"#E27)* "D2%B44* CB5* A3&)2*
C&62G*C&)(*B4E"5)*O,,*&76&D&63B45*9"7)%&13)&7'*9"62*)(B)*CB5*
&79"%#"%B)26*&7)"*B*9"E#B%B)&D24$*5EB44*#%"639)/**;7*"%62%*)"*
522*("C*EB7$*#2"#42*9"7)%&13)26*72C*:379)&"7B4&)$*B76*("C*
EB7$* C2%2* &7D"4D26* &7* %2#B&%&7'* 62:29)5G* C2* 6&5)&7'3&5(26*
12)C227* 9(B7'25* )(B)* C2%2* EB62* B5* B* %2534)* ":* B* #%"142E*
%2#"%)* T8U* 9(B7'25V* B76* )("52* )(B)* C2%2* 7")* T7"7?8U*
9(B7'25V/* *W2*:"376* )(B)*SX+*#2"#42*9"7)%&13)26* )"*YZ@*8U*
9(B7'25G* C(&42* +OZ* #2"#42* 9"7)%&13)26* )"* Y,Z+* 7"7?8U*
9(B7'25/**
W2* 2IBE&726* )(2* [\]^[* )"* 62)2%E&72* )(2* 73E12%* ":*
#2"#42*C("*531E&))26*#%"142E*%2#"%)5/**0(2*#%"142E*%2#"%)5*
9"E2* :%"E* B* E39(* C&62%* '%"3#* ":* #B%)&9&#B7)5/* ;7* :B9)G*
B%"376* _,Y,* 6&::2%27)* #2"#42* 531E&))26* _ZP@* #%"142E*
%2#"%)5/* O@X* &76&D&63B45* 531E&))26* @ZS* %2#"%)5* )(B)*
53152A327)4$* 9B3526* B* 9(B7'2* )"* )(2* -#B9(2* 9"62* "%*
6"93E27)B)&"7/*+Y@O*&76&D&63B45*531E&))26*__XO*%2#"%)5*)(B)*
6&6*7")*%2534)*&7*B*9(B7'2/**
!.B" C5D" D92" D5EF" ;327E3G@71;" D3703?" 701" ;1<1=58>1?7"
:5>>@?37AH"
!;#$<-/-$ 05-:-$ 36*107&*:$ 1)//7-2$ &60$ 9+$ 27:07*10$ =/&6,:$ &3$
,-&,.->$7?-?>$272$,-&,.-$,/7()/7.+$)::6(-$)$:7*=.-$/&.-8$$@72$
.)/=-$ *6(9-/:$ &3$ ,-&,.-$ ,)/0717,)0-$ :&(-'5)0$ -A6)..+$ 7*$
05-:-$)107B707-:>$&/$272$)$:()..$*6(9-/$&3$,-&,.-$2&$(&:0$&3$
05-$'&/C8*
Q&%5)G*C2*2IBE&72*#B%)&9&#B)&"7*&7*'272%B)&7'*9"62/**Q&'3%2*S*
#4")5* )(2* 93E34B)&D2* #%"#"%)&"7* ":* 9"62* 9(B7'25* TD2%)&9B4*
BI&5V* D2%535* )(2* )"#* `* 9"7)%&13)"%5* )"* )(2* 9"62* 1B52*
T("%&F"7)B4*BI&5V/*
Number of individuals
1 5 10 15 50 100 388
0.0
0.2
0.4
0.6
0.8
1.0
Fraction of MRs
Fraction of Delta
Fraction of Lines Added
Fraction of Lines Deleted
*
Q&'3%2*S/**D5-$16(6.)07B-$27:0/79607&*$&3$1&*0/79607&*:$0&$05-$
1&2-$9):-?*
0(2* 9"7)%&13)"%5* B%2* "%62%26* 1$* )(2* 73E12%* ":* .U5* :%"E*
4B%'25)* )"* 5EB4425)/* 0(2* 5"4&6* 4&72* &7* Q&'3%2* S* 5("C5* )(2*
93E34B)&D2* #%"#"%)&"7* ":* 9(B7'25* B'B&75)* )(2* 73E12%* ":*
9"7)%&13)"%5/* 0(2* 6"))26* B76* 6B5(26* 4&725* 5("C* )(2*
93E34B)&D2* #%"#"%)&"7* ":* B6626* B76* 6242)26* 4&725* B76* )(2*
#%"#"%)&"7* ":* 624)B* TB7*.U* '272%B)25* "72* 624)B* :"%* 2B9(* ":*
)(2*:&425*&)*9(B7'25V/*0(252*E2B53%25*9B#)3%2*DB%&"35*B5#29)5*
":*9"62*9"7)%&13)&"7/*
Q&'3%2*S* 5("C5* )(B)* )(2* )"#*S@*62D24"#2%5*9"7)%&13)26*E"%2*
)(B7* X_a* ":* )(2*.U5* B76* 624)B5G* XXa* ":* B6626* 4&725* B76*
ZSa* ":* 6242)26* 4&725/* b2%$* 4&))42* 9"62* B76G* #%253EB14$G*
9"%%25#"76&7'4$*5EB44*2::"%)*&5*5#27)*1$*7"7?9"%2*62D24"#2%5*
T:"%* 5&E#4&9&)$G* &7* )(&5* 529)&"7*C2* %2:2%* )"*B44* )(2*62D24"#2%5*
"3)5&62*)(2*)"#*S@*'%"3#*B5*7"7?9"%2V/*0(2*.U5*6"72*1$*9"%2*
62D24"#2%5* B%2* 5315)B7)&B44$* 4B%'2%* )(B7* )("52* 6"72* 1$* )(2*
7"7?9"%2*'%"3#/*0(&5*6&::2%2792*&5*5)B)&5)&9B44$*5&'7&:&9B7)N*)(2*
6&5)%&13)&"7* ":* .U* :%B9)&"7* &5* 5&'7&:&9B7)4$* T#* c* ,/,SV*
6&::2%27)* :%"E* )(2* 6&5)%&13)&"7* ":* B6626* 4&725* 35&7'*
d"4E"'"%"D?<E&%7"D*)25)/**
`2I)G*C2*4""H26*52#B%B)24$*B)*8U*9(B7'25*"74$/*0(2%2*CB5*B*
4B%'2*T#?DB432*c*,/,SV*6&::2%2792*12)C227*6&5)%&13)&"75*":*8U*
B76* 7"7?8U* 9"7)%&13)&"75/* 8U* 9"7)%&13)&"75* B%2* 5("C7* &7*
Q&'3%2*+/*0(2*59B425*B76*62D24"#2%*"%62%*B%2* )(2*5BE2*B5* &7*
Feilding, Herbleb & Mockus, 2000
http://opensource.mit.edu/papers/mockusapache.pdf
Linux 2.6.20
50% of the changes where made by2.5% of the developers
Who Wrote 2.6.20?http://lwn.net/Articles/222773/
by corbet
What Does That Mean?
It means a huge number of contributors (741) who made thousands of small contributions
Community > Code
Why Community
Factorof
Success
Time
Why Community
Factorof
Success
Time
Code
Why Community
Factorof
Success
Time
Code
Community
code
Code Characteristics
• Directly useful to developers (itch)
• Common standards
• Composable
• Consistent
• Improvable
Composability
The Architecture of Participation: Does Code Architecture Mitigate Free Riding in the
Open Source Development ModelBaldwin and Clark, 2005
http://www.people.hbs.edu/cbaldwin/DR2/BaldwinArchPartAll.pdf
... codebases that are more modular or have more option value increase developers’ incentives to join and to remain involved in an open source development effort; and decrease the amount of free-riding in equilibrium.
release earlyrelease often
tools
Tools shape the code and the community.
The Secret Sauce
Secret Sauce
• Website or Wiki
• Source Code Repository
• Bug Tracker
• Mailing List
Secret Sauce
• Portal
• Repository
• Issue Tracker
• Mailing List
PRIM
Secret Sauce
“Every successful open source project I know uses PRIM. Every closed source project I know, doesn't. ... People wonder how open source projects manage to create high-quality products without managers or accountability. The answer: we're accountable to our infrastructure.
PRIM is the open source secret sauce.”- Ted Husted
http://jroller.com/TedHusted/entry/prim
Source Code Repository
• Controls access to source code
• Keeps track of all changes
• Allows for branching and merging of changes
• Allows multiple people to work on the same code at the same time
Source Code Repository
SVNCVS
GitBzr
Mercurial
Source Code Repository
Centralization
SVNCVS
GitBzr
Mercurial
The Secret Sauce is Free
sourceforge.netcode.google.com
trac
Making Open Source Work
Licenses
Community
Code
Landscape
The LAMP stack
LinuxApacheMysql
PHP / Perl / Python ...
Apache powers half of all websites on the
internet.
Apache ProjectsHTTP Server
ActiveMQAntAPR
BeehiveCayenneCocoon
CommonsDB
DirectoryExcalibur
FelixForrest
GeronimoGump
HadoopHarmonyHiveMind
HttpComponentsiBATIS
Incubator
JackrabbitJakartaJamesLabsLenya
LoggingLuceneMavenMina
MyFacesODEOFBiz
OpenEJBOpenJPA
PerlPOI
PortalsRoller
SantuarioServiceMix
Shale
SpamAssassinSTDCXX
StrutsSynapseTapestry
TCLTiles
TomcatTurbineVelocityWicket
Web ServicesXalan
XercesXML
XMLBeansXML Graphics
Desktop
Linux
Gnome (GTK)KDE (QT)
Cross Platform
GTKwxWidgets
Java
Mobile
Why could this matter to you?
Open Source provides high quality free tools
for education and business.
The dot com and web 2.0 innovations would not
have been possible without free and open
source software.
FOSS commoditizes core foundation technologies, forcing innovation up the stack and enabling new
markets.
New user documentation is always
welcome.
Translations are especially welcome.
Local Events
BarCamp Hong KongSeptember 9
http://www.barcamp.hk
Thank you
Resources
• www.cubiclemuses.com
• Slides: http://cubiclemuses.com/cm/
• Cathedral and the Bazaar by ESR
• In the beginning was the command line by Neal Stephensen