SlideShare ist ein Scribd-Unternehmen logo
1 von 42
Downloaden Sie, um offline zu lesen
The Apache WayThe Apache Way
Nick Burch
CTO, Quanticate
Nick Burch
CTO, Quanticate
(in particular Ross Gardler, Justin
Erenkretz, Isabel Drost and Lars
Eilebrecht)
(in particular Ross Gardler, Justin
Erenkretz, Isabel Drost and Lars
Eilebrecht)
The Apache Way
A collaborative slide deck with
contributions from ${ASF_MEMBERS}
The Apache Way
A collaborative slide deck with
contributions from ${ASF_MEMBERS}
What is the Apache Way?What is the Apache Way?
What will we try to cover?
• How the foundation works
• How we develop code
• What we have found that works
• And what hasn't worked so well...
• Business and Apache
• From myself, and the other members in the audience!
But first, some history!But first, some history!
Informal Collaboration (1995)
• Apache Group
• 8 people
• Sharing code on the abandonen NCSA httpd
• Apache web server releases
• 0.6.2 (first public release) – April 1995
• 1.0 release – 1st December 1995
A Foundation (1999)
• Commercial opportunities
• Formal legal structure required
• Membership based charity
• IRS 501(c)3
• Donations by individuals tax-deductible (in the US)
• Virtual world-wide organisation
• First ApacheCon – March 2000
• Apache 2.0 Alpha 1 released then
• First European ApacheCon – October 2000
Today
• Hundreds of projects
• Small libraries
• Critical infrastructure
• End user tools
• Well defined project governance
• Formal Mentoring
• Accelarating growth
The ASF, By Numbers
• Projects = 145
• Incubating Projects = 32
• Board / President Committess = 9
• Board Members = 9
• Foundation Members = ~550
• PMC Committee Members = ~2000
• Committers = ~4000
• ICLAS = ~6000
Apache Projects
Abdera
Accumulo
ACE
ActiveMQ
Airavata
Allura
Ambari
Ant
Any23
APR
Archiva
Aries
Avro
Axis
Bigtop
Bloodhound
Buildr
BVal
Camel
Cassandra
Empire-db
Etch
Felix
Flex
Flume
Forrest
Geronimo
Giraph
Gora
Gump
Hadoop
Hama
HBase
Helix
Hive
HttpComponents
HTTP Server
Isis
Jackrabbit
James
Cayenne
Chemistry
Chukwa
Clerezza
Click
CloudStack
Cocoon
Commons
Continuum
Cordova
CouchDB
Creadur
Crunch
CTAKES
Curator
CXF
DB
DeltaSpike
DirectMemory
Directory
jclouds
Jena
JMeter
JSPWiki
jUDDI
Kafka
Karaf
Knox
Lenya
Libcloud
Logging
Lucene
Lucene.Net
Lucy
Mahout
ManifoldCF
Marmotta
Maven
Mesos
MINA
MRUnit
MyFaces
Nutch
ODE
OFBiz
Olingo
Oltu
Onami
OODT
Oozie
Open Climate
Workbench
OpenJPA
OpenMeetings
OpenNLP
OpenOffice
OpenWebBeans
PDFBox
Perl
Pig
Pivot
POI
Portals
Qpid
Rave
River
Roller
Santuario
ServiceMix
Shindig
Shiro
SIS
Sling
SpamAssassin
Spark
Sqoop
Stanbol
STeVe
Struts
Subversion
Synapse
Syncope
Tapestry
Tcl
Thrift
Tika
Tiles
Tomcat
TomEE
Traffic
Server
Turbine
Tuscany
UIMA
VCL
Velocity
Web
Services
Whirr
Wicket
Wink
Wookie
Xalan
Xerces
XMLBeans
XML
Graphics
ZooKeeper
Foundation StructureFoundation Structure
One way to view it
Another way
• A number of projects
• Each project is responsible for their own code, community
and direction
• Board provides oversight, but that's it
• Board has no say on what code gets written, nor what
direction projects take, nor what projects we should
start. All of that is devolved to the projects themselves
• Foundation has some common support (eg infra, press,
trademarks), to help projects focus on their code and on
their communities
Top Level Projects
Abdera
Accumulo
ACE
ActiveMQ
Airavata
Allura
Ambari
Ant
Any23
APR
Archiva
Aries
Avro
Axis
Bigtop
Bloodhound
Buildr
BVal
Camel
Cassandra
Empire-db
Etch
Felix
Flex
Flume
Forrest
Geronimo
Giraph
Gora
Gump
Hadoop
Hama
HBase
Helix
Hive
HttpComponents
HTTP Server
Isis
Jackrabbit
James
Cayenne
Chemistry
Chukwa
Clerezza
Click
CloudStack
Cocoon
Commons
Continuum
Cordova
CouchDB
Creadur
Crunch
CTAKES
Curator
CXF
DB
DeltaSpike
DirectMemory
Directory
jclouds
Jena
JMeter
JSPWiki
jUDDI
Kafka
Karaf
Knox
Lenya
Libcloud
Logging
Lucene
Lucene.Net
Lucy
Mahout
ManifoldCF
Marmotta
Maven
Mesos
MINA
MRUnit
MyFaces
Nutch
ODE
OFBiz
Olingo
Oltu
Onami
OODT
Oozie
Open Climate
Workbench
OpenJPA
OpenMeetings
OpenNLP
OpenOffice
OpenWebBeans
PDFBox
Perl
Pig
Pivot
POI
Portals
Qpid
Rave
River
Roller
Santuario
ServiceMix
Shindig
Shiro
SIS
Sling
SpamAssassin
Spark
Sqoop
Stanbol
STeVe
Struts
Subversion
Synapse
Syncope
Tapestry
Tcl
Thrift
Tika
Tiles
Tomcat
TomEE
Traffic
Server
Turbine
Tuscany
UIMA
VCL
Velocity
Web
Services
Whirr
Wicket
Wink
Wookie
Xalan
Xerces
XMLBeans
XML
Graphics
ZooKeeper
Not all “Plain Sailing”
• Jakarta “Foundation”
• Jakarta was an “Umbrella” for all Java projects
• Successful brand in its own right
• Tomcat, Struts, Ant, and many more innovations
• Started to copy the foundation structure
• “Mini”-board... but problems arose...
• Avalon – Who was responsible?
Importance of Oversight
• Jakarta demonstrated that Umbrellas are bad
• Flattened organisational structure
• Jakarta projects become top level
• All projects submit board reports quarterly
• Community focused
• Not technical focused
• Board can, and does (occasionally) intervene
• But on community issues only
The Apache EcosystemThe Apache Ecosystem
Don't pick winners,
pick runners
• Board doesn't say “We want X”
• Developers say “X is cool”
• We enable developers to do cool stuff
• Apache developers are at the forefront of innovation
• Not interested in a single runner
• We want relay teams
• Community is critical to the Apache Way
• Apache is about supporting communities
(nearly) All volunteer work
• If you want something done
• Volunteer on the appropriate committee
• A few paid contractors
• Press
• Infrastructre
• Admin
• No paid committers!
The Apache WayThe Apache Way
Types of contribution
• Any constructive contribution earns merit
• Permissively licensed only
• Not just code
• Evangelism
• Bug reports and triage
• Testing
• Documentation
• Design feedback
• User support
• etc
All contributions are equal
• Merit does not buy you authority
• The community must still agree
• Merit buys you privileges, eg
• Commit access
• Conflict resolution capabilities
• Community agrees on direction
• Individuals then make it happen
• Takes both agreement and action!
Decision Making
• Most decisions are reversible
“If it didn't happen on the list, it didn't happen”
• Uncontroversial or small changes
• Lazy Consensus – assume it's OK – JFDI
• Controversial, irreversible or large changes
• Propose a plan, then wait a minimum of 72 hours
How are decisions made?
Finding that list!
• Listed on the project website
• dev@project.apache.org
• Primary list
• commits@project.apache.org
• Automated source change notifications
• user@project.apache.org (optional)
• User-to-User support
• http://mail-archives.apache.org/
No Jerks Allowed
• Most people are nice
• We all have bad days
• Some are, well, Jerks
• Trolls exist
• DO NOT FEED
• Don't become a poisonous person
“How Open Source Projects Survive Poisonous People (And
You Can Too)” by Ben Collins-Sussman & Brian Fitzpatrick
http://video.google.com/videoplay?docid=-4216011961522818645
Business and the Apache WayBusiness and the Apache Way
Ways to Contribute
• Documentation, Tutorials and Examples
• Helping others with queries and questions
• Issue / but tracker triarge
• Testing new fixes, helping reproduce problems
• Bug Fixes and New Features
• Writing add-ons and extensions
• Mentoring, volunteering for the Foundation
• Many different ways to get involved, all are important!
Companies Contributing
• Everyone at Apache is there as an individual
• Companies can't buy access or committership
• To get involved, companies (or other organisations) need to
put the employees to work on the project, and through
that have them gain merit
• BDFLs are not allowed, everyone has an equal voice
• Diversity of the community means one company can't
dominate the project
• This means you can safely build your business on it
• (But you can't take a railroad a project either!)
Learn from
the best
Permissive License
In Summary
• It Works!
• It's the best way we know of to develop Open Source
Software in a collaborative, open and meritocratic way
• Some things can seem hard at first
• But there's normally a reason why!
• Ask questions! Much is documented, but not all, and not
everything is in the same place
• New community members are best placed to flag up gaps,
as well as to help fill them!
• Learn, participate, improve!
Any Questions?Any Questions?
Nick Burch
@Gagravarr
nick@apache.org
Nick Burch
@Gagravarr
nick@apache.org
A collaborative slidedeck with contributions from
Ross Gardler, Lars Eilebrecht, Justin
Erenkrantz and Isabel Drost

Weitere ähnliche Inhalte

Andere mochten auch (8)

Page layout conventions
Page layout conventionsPage layout conventions
Page layout conventions
 
Texto Seguridad Pública en Chile Amuch 2016
Texto Seguridad Pública en Chile Amuch 2016Texto Seguridad Pública en Chile Amuch 2016
Texto Seguridad Pública en Chile Amuch 2016
 
Makalah teigonometri
Makalah   teigonometriMakalah   teigonometri
Makalah teigonometri
 
Manual informaciontecnicafijaciones
Manual informaciontecnicafijacionesManual informaciontecnicafijaciones
Manual informaciontecnicafijaciones
 
Lecture iv buddhist architecture
Lecture iv  buddhist architectureLecture iv  buddhist architecture
Lecture iv buddhist architecture
 
Hoa lec iii Romanesque intro
Hoa lec iii  Romanesque  introHoa lec iii  Romanesque  intro
Hoa lec iii Romanesque intro
 
Accenture hf s-blueprint-report-telecom-operations-as-a-service-excerpt
Accenture hf s-blueprint-report-telecom-operations-as-a-service-excerptAccenture hf s-blueprint-report-telecom-operations-as-a-service-excerpt
Accenture hf s-blueprint-report-telecom-operations-as-a-service-excerpt
 
Photography_CV
Photography_CVPhotography_CV
Photography_CV
 

Mehr von gagravarr

What's With The 1S And 0S? Making Sense Of Binary Data At Scale With Tika And...
What's With The 1S And 0S? Making Sense Of Binary Data At Scale With Tika And...What's With The 1S And 0S? Making Sense Of Binary Data At Scale With Tika And...
What's With The 1S And 0S? Making Sense Of Binary Data At Scale With Tika And...
gagravarr
 

Mehr von gagravarr (14)

Turning XML to XLS on the JVM, without loosing your Sanity, with Groovy
Turning XML to XLS on the JVM, without loosing your Sanity, with GroovyTurning XML to XLS on the JVM, without loosing your Sanity, with Groovy
Turning XML to XLS on the JVM, without loosing your Sanity, with Groovy
 
But we're already open source! Why would I want to bring my code to Apache?
But we're already open source! Why would I want to bring my code to Apache?But we're already open source! Why would I want to bring my code to Apache?
But we're already open source! Why would I want to bring my code to Apache?
 
What's new with Apache Tika?
What's new with Apache Tika?What's new with Apache Tika?
What's new with Apache Tika?
 
What's with the 1s and 0s? Making sense of binary data at scale - Berlin Buzz...
What's with the 1s and 0s? Making sense of binary data at scale - Berlin Buzz...What's with the 1s and 0s? Making sense of binary data at scale - Berlin Buzz...
What's with the 1s and 0s? Making sense of binary data at scale - Berlin Buzz...
 
The Apache Way
The Apache WayThe Apache Way
The Apache Way
 
The other Apache Technologies your Big Data solution needs
The other Apache Technologies your Big Data solution needsThe other Apache Technologies your Big Data solution needs
The other Apache Technologies your Big Data solution needs
 
How Big is Big – Tall, Grande, Venti Data?
How Big is Big – Tall, Grande, Venti Data?How Big is Big – Tall, Grande, Venti Data?
How Big is Big – Tall, Grande, Venti Data?
 
If You Have The Content, Then Apache Has The Technology!
If You Have The Content, Then Apache Has The Technology!If You Have The Content, Then Apache Has The Technology!
If You Have The Content, Then Apache Has The Technology!
 
But We're Already Open Source! Why Would I Want To Bring My Code To Apache?
But We're Already Open Source! Why Would I Want To Bring My Code To Apache?But We're Already Open Source! Why Would I Want To Bring My Code To Apache?
But We're Already Open Source! Why Would I Want To Bring My Code To Apache?
 
What's With The 1S And 0S? Making Sense Of Binary Data At Scale With Tika And...
What's With The 1S And 0S? Making Sense Of Binary Data At Scale With Tika And...What's With The 1S And 0S? Making Sense Of Binary Data At Scale With Tika And...
What's With The 1S And 0S? Making Sense Of Binary Data At Scale With Tika And...
 
What's with the 1s and 0s? Making sense of binary data at scale with Tika and...
What's with the 1s and 0s? Making sense of binary data at scale with Tika and...What's with the 1s and 0s? Making sense of binary data at scale with Tika and...
What's with the 1s and 0s? Making sense of binary data at scale with Tika and...
 
The other Apache technologies your big data solution needs!
The other Apache technologies your big data solution needs!The other Apache technologies your big data solution needs!
The other Apache technologies your big data solution needs!
 
Apache Tika end-to-end
Apache Tika end-to-endApache Tika end-to-end
Apache Tika end-to-end
 
Apache Content Technologies
Apache Content TechnologiesApache Content Technologies
Apache Content Technologies
 

Kürzlich hochgeladen

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Kürzlich hochgeladen (20)

Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

The Apache Way - ApacheCon 2014

  • 1. The Apache WayThe Apache Way
  • 2. Nick Burch CTO, Quanticate Nick Burch CTO, Quanticate
  • 3. (in particular Ross Gardler, Justin Erenkretz, Isabel Drost and Lars Eilebrecht) (in particular Ross Gardler, Justin Erenkretz, Isabel Drost and Lars Eilebrecht) The Apache Way A collaborative slide deck with contributions from ${ASF_MEMBERS} The Apache Way A collaborative slide deck with contributions from ${ASF_MEMBERS}
  • 4. What is the Apache Way?What is the Apache Way?
  • 5. What will we try to cover? • How the foundation works • How we develop code • What we have found that works • And what hasn't worked so well... • Business and Apache • From myself, and the other members in the audience!
  • 6. But first, some history!But first, some history!
  • 7. Informal Collaboration (1995) • Apache Group • 8 people • Sharing code on the abandonen NCSA httpd • Apache web server releases • 0.6.2 (first public release) – April 1995 • 1.0 release – 1st December 1995
  • 8. A Foundation (1999) • Commercial opportunities • Formal legal structure required • Membership based charity • IRS 501(c)3 • Donations by individuals tax-deductible (in the US) • Virtual world-wide organisation • First ApacheCon – March 2000 • Apache 2.0 Alpha 1 released then • First European ApacheCon – October 2000
  • 9. Today • Hundreds of projects • Small libraries • Critical infrastructure • End user tools • Well defined project governance • Formal Mentoring • Accelarating growth
  • 10. The ASF, By Numbers • Projects = 145 • Incubating Projects = 32 • Board / President Committess = 9 • Board Members = 9 • Foundation Members = ~550 • PMC Committee Members = ~2000 • Committers = ~4000 • ICLAS = ~6000
  • 11. Apache Projects Abdera Accumulo ACE ActiveMQ Airavata Allura Ambari Ant Any23 APR Archiva Aries Avro Axis Bigtop Bloodhound Buildr BVal Camel Cassandra Empire-db Etch Felix Flex Flume Forrest Geronimo Giraph Gora Gump Hadoop Hama HBase Helix Hive HttpComponents HTTP Server Isis Jackrabbit James Cayenne Chemistry Chukwa Clerezza Click CloudStack Cocoon Commons Continuum Cordova CouchDB Creadur Crunch CTAKES Curator CXF DB DeltaSpike DirectMemory Directory jclouds Jena JMeter JSPWiki jUDDI Kafka Karaf Knox Lenya Libcloud Logging Lucene Lucene.Net Lucy Mahout ManifoldCF Marmotta Maven Mesos MINA MRUnit MyFaces Nutch ODE OFBiz Olingo Oltu Onami OODT Oozie Open Climate Workbench OpenJPA OpenMeetings OpenNLP OpenOffice OpenWebBeans PDFBox Perl Pig Pivot POI Portals Qpid Rave River Roller Santuario ServiceMix Shindig Shiro SIS Sling SpamAssassin Spark Sqoop Stanbol STeVe Struts Subversion Synapse Syncope Tapestry Tcl Thrift Tika Tiles Tomcat TomEE Traffic Server Turbine Tuscany UIMA VCL Velocity Web Services Whirr Wicket Wink Wookie Xalan Xerces XMLBeans XML Graphics ZooKeeper
  • 13. One way to view it
  • 14. Another way • A number of projects • Each project is responsible for their own code, community and direction • Board provides oversight, but that's it • Board has no say on what code gets written, nor what direction projects take, nor what projects we should start. All of that is devolved to the projects themselves • Foundation has some common support (eg infra, press, trademarks), to help projects focus on their code and on their communities
  • 15.
  • 16.
  • 17. Top Level Projects Abdera Accumulo ACE ActiveMQ Airavata Allura Ambari Ant Any23 APR Archiva Aries Avro Axis Bigtop Bloodhound Buildr BVal Camel Cassandra Empire-db Etch Felix Flex Flume Forrest Geronimo Giraph Gora Gump Hadoop Hama HBase Helix Hive HttpComponents HTTP Server Isis Jackrabbit James Cayenne Chemistry Chukwa Clerezza Click CloudStack Cocoon Commons Continuum Cordova CouchDB Creadur Crunch CTAKES Curator CXF DB DeltaSpike DirectMemory Directory jclouds Jena JMeter JSPWiki jUDDI Kafka Karaf Knox Lenya Libcloud Logging Lucene Lucene.Net Lucy Mahout ManifoldCF Marmotta Maven Mesos MINA MRUnit MyFaces Nutch ODE OFBiz Olingo Oltu Onami OODT Oozie Open Climate Workbench OpenJPA OpenMeetings OpenNLP OpenOffice OpenWebBeans PDFBox Perl Pig Pivot POI Portals Qpid Rave River Roller Santuario ServiceMix Shindig Shiro SIS Sling SpamAssassin Spark Sqoop Stanbol STeVe Struts Subversion Synapse Syncope Tapestry Tcl Thrift Tika Tiles Tomcat TomEE Traffic Server Turbine Tuscany UIMA VCL Velocity Web Services Whirr Wicket Wink Wookie Xalan Xerces XMLBeans XML Graphics ZooKeeper
  • 18.
  • 19. Not all “Plain Sailing” • Jakarta “Foundation” • Jakarta was an “Umbrella” for all Java projects • Successful brand in its own right • Tomcat, Struts, Ant, and many more innovations • Started to copy the foundation structure • “Mini”-board... but problems arose... • Avalon – Who was responsible?
  • 20. Importance of Oversight • Jakarta demonstrated that Umbrellas are bad • Flattened organisational structure • Jakarta projects become top level • All projects submit board reports quarterly • Community focused • Not technical focused • Board can, and does (occasionally) intervene • But on community issues only
  • 21. The Apache EcosystemThe Apache Ecosystem
  • 22. Don't pick winners, pick runners • Board doesn't say “We want X” • Developers say “X is cool” • We enable developers to do cool stuff • Apache developers are at the forefront of innovation • Not interested in a single runner • We want relay teams • Community is critical to the Apache Way • Apache is about supporting communities
  • 23.
  • 24. (nearly) All volunteer work • If you want something done • Volunteer on the appropriate committee • A few paid contractors • Press • Infrastructre • Admin • No paid committers!
  • 25. The Apache WayThe Apache Way
  • 26.
  • 27. Types of contribution • Any constructive contribution earns merit • Permissively licensed only • Not just code • Evangelism • Bug reports and triage • Testing • Documentation • Design feedback • User support • etc
  • 28. All contributions are equal • Merit does not buy you authority • The community must still agree • Merit buys you privileges, eg • Commit access • Conflict resolution capabilities • Community agrees on direction • Individuals then make it happen • Takes both agreement and action!
  • 29. Decision Making • Most decisions are reversible “If it didn't happen on the list, it didn't happen” • Uncontroversial or small changes • Lazy Consensus – assume it's OK – JFDI • Controversial, irreversible or large changes • Propose a plan, then wait a minimum of 72 hours
  • 31. Finding that list! • Listed on the project website • dev@project.apache.org • Primary list • commits@project.apache.org • Automated source change notifications • user@project.apache.org (optional) • User-to-User support • http://mail-archives.apache.org/
  • 32. No Jerks Allowed • Most people are nice • We all have bad days • Some are, well, Jerks • Trolls exist • DO NOT FEED • Don't become a poisonous person “How Open Source Projects Survive Poisonous People (And You Can Too)” by Ben Collins-Sussman & Brian Fitzpatrick http://video.google.com/videoplay?docid=-4216011961522818645
  • 33. Business and the Apache WayBusiness and the Apache Way
  • 34. Ways to Contribute • Documentation, Tutorials and Examples • Helping others with queries and questions • Issue / but tracker triarge • Testing new fixes, helping reproduce problems • Bug Fixes and New Features • Writing add-ons and extensions • Mentoring, volunteering for the Foundation • Many different ways to get involved, all are important!
  • 35. Companies Contributing • Everyone at Apache is there as an individual • Companies can't buy access or committership • To get involved, companies (or other organisations) need to put the employees to work on the project, and through that have them gain merit • BDFLs are not allowed, everyone has an equal voice • Diversity of the community means one company can't dominate the project • This means you can safely build your business on it • (But you can't take a railroad a project either!)
  • 36.
  • 38.
  • 40. In Summary • It Works! • It's the best way we know of to develop Open Source Software in a collaborative, open and meritocratic way • Some things can seem hard at first • But there's normally a reason why! • Ask questions! Much is documented, but not all, and not everything is in the same place • New community members are best placed to flag up gaps, as well as to help fill them! • Learn, participate, improve!
  • 42. Nick Burch @Gagravarr nick@apache.org Nick Burch @Gagravarr nick@apache.org A collaborative slidedeck with contributions from Ross Gardler, Lars Eilebrecht, Justin Erenkrantz and Isabel Drost