SlideShare una empresa de Scribd logo
1 de 37
Descargar para leer sin conexión
Community Development at the
 Apache Software Foundation
     BOSC 2010, Boston, July 2010
    Open Bioinformatics Foundation

               Ross Gardler
                 @rgardler
           rgardler@apache.org
 Vice President, Community Development
     The Apache Software Foundation
●   History of The Apache Software Foundation
    ●   Accident or design?
●   The Apache Way
    ●   Flexibility and invariants
●   Scaling the foundation
    ●   From 8 to 2500+
●   Surviving the future
    ●   A collection of projects or collaboration between
        experts?
History of the ASF
Founding of Apache
●   Started as “Apache Group” (8 members)
●   Resumed work on NCSA httpd in Feb 1995
    ●   UIUC put httpd in public domain, but essentially
        abandoned it
    ●   Chose permissive licensing
●   Informal corporate structure, until...
Creation of the Foundation
●   Incorporated with 21 members in 1999
    ●   ~2,500 committers, 291 members, and 53 emritus
        members today
●   Membership-based organisation
●   501(c)3 publish charity status
Apache's mission


    The Apache Software Foundation provides
support for the Apache community of open source
    software projects. The Apache projects are
   characterised by a collaborative, consensus
    based development process, an open and
pragmatic software licence, and a desire to create
high quality software that leads the way in its field.
Apache's tagline



    We are more than a group of
 projects sharing a server, we are a
community of developers and users
Or to put it another way...
●   Let developers focus on what they do best
    ●   Code
    ●   Document (if only...)
●   Foundation exists to do the rest
●   “The Apache Way”
    ●   Open development vs. open source
    ●   All technical decisions about a project are made in
        public (mailing lists)
Indirect financial support
●   Apache does not pay for development
    ●   Voluntary contributions only
●   Many (not all) developers are paid by a third-
    party to work on the project
●   Foundation bears indirect support costs
    ●   Infrastructure, legal, publicity, etc.
The Apache Way
We're a meritocracy
●   Everyone has a voice
    ●   Do stuff and get a vote
●   Merit is not transferable between projects
●   Merit across multiple projects or at foundation
    level earn you membership
Decision Making
●   Who makes decisions?
    ●   Community consensus via debate and code
●   Occasionally a vote is required
    ●   +1, +0, -0, -1
●   Everyone in the community has a vote
    ●   “binding” vote given to committers
●   All technical votes cast on public lists
Rule of Lazy Consensus
●   Trusted parties can just get on with it
    ●   They know when a change will be controversial
●   State what you intend to do and why
●   Start doing it
●   If no-one objects to the idea commit the code
    ●   There's always code review
Scaling the Foundation
Growth of the Foundation
●   Started with just HTTP Server in 1995
●   The model “felt” repeatable
●   Today, we have over 70 top-level projects
    ●   >30 in Incubator
●   It took over 15 years to get there...
    ●   … but it wasn't smooth ...
Jakarta “Foundation”
●   Jakarta: “umbrella” for all Java efforts
    ●   Successful as a brand in its own right
    ●   Tomcat, Ant, Struts, etc.
●   Started to copy the foundation org structure
    ●   “mini”-board... but problems arose...
    ●   who was responsible?
Importance of Oversight
●   Jakarta issues led to a lot of navel gazing
●   Ultimately agreed upon an extremely flat
    organisational structure
    ●   Very short communication lines
    ●   Umbrella projects are bad!
●   We killed jakarta: all projects became top-level
Board Oversight
●   Projects submit quarterly board reports
    ●   By far the most important board activity
●   Looking for repeating community anti-patterns
    ●   Emerging umbrella projects
    ●   Undue commercial influence
    ●   Stagnating community
    ●   Etc.
●   NOT concerned with technical issues
Foundation Structure
●   Top-Level Projects    ●   Foundation
    ●   Users                 ●   Members
    ●   Contributors              –   Cross-project
                                      community
    ●   Committers            ●   Board
    ●   PMC                       –   Oversight
        –   Technical
            management
                              ●   Foundation projects
What makes a good Apache
        project?
Community
●   Diversity
    ●   Minimum of 3 committers
    ●   unrelated to one another outside the project
●   Fully audited code
    ●   CLAs on file
    ●   No incompatible licences
●   Practice The Apache Way
        –
Generic and Reusable
●   Don't (just) open source a complete application
●   Open source the component parts
    independently
●   Encourage communities from outside your
    domain
    ●   Get enhancements to your libraries from others
●   Or maybe, you can contribute to someone elses
CC- BY-NC-SA © 2010 Bertrand Delacrataz
CC- BY-NC-SA © 2010 Bertrand Delacrataz
Surviving the Future
Can the ASF scale further?
●   More projects mean
    ●   Small overhead on foundation
    ●   More volunteers at foundation level
●   But...
    ●   more opinions on what “The Apache Way” is
    ●   more potential for abuse of ASF brand
Managing growing pains
●   Flat structures give power to “newbies”
    ●   Low barriers to entry
    ●   No entrance “exam”
    ●   Can result in the “blind leading the blind”
●   But, hierarchy is inefficient
    ●   Higher barrier to entry creates a hierarchy
●   So how do we ensure “The Apache Way”
    survives?
    ●   Without stagnating
The Apache Way has the answer
●   Peer review is core to The Apache Way
    ●   “Just get on with it, we'll object if necessary”
    ●   Someone is watching
    ●   Objections are supported by debate
         –   That's how we learn
●   Mentoring is a small step from peer review
The Incubator
●   Incubates new projects
    ●   More specifically new project communities
●   Mentors guide the project team
    ●   Teach The Apache Way
Community Development Project
                   http//community.apache.org
●   Google Summer of Code
    ●   Code only
    ●   Summer only
    ●   Students only
●   Apache Mentoring Project
    ●   Any contribution
    ●   Any time
    ●   Anyone
Why do this in foundation projects?
●   Let developers do what they do best: code
●   But some volunteers want to help newcomers
    ●   Good for recruiting
    ●   Good for training
    ●   Good for community
    ●   Good for getting stuff done
Summary
Separation of Concerns
●   Foundation
    ●   Brand
    ●   Infrastructure
    ●   Legal
    ●   Cross project community
●   Projects
    ●   Technical issues
    ●   Project community
No leaders, just doers
●   Give decision making power to the doers
●   Use lazy consensus to avoid “management by
    committee”
●   Anyone with sufficient merit can veto
    ●   But they should never need to
    ●   Consensus through discussion
Generalise
●   Don't just open source a complete application
●   Open source components of the application
●   Most applications address a niche
    ●   You are not unusual in this
Educate
●   Apache projects are successful because of
    “The Apache Way”
●   There are other ways
    ●   But not in Apache
●   Better to ensure newcomers understand
    ●   Incubation for project communities
    ●   Mentoring for individuals
Questions

Más contenido relacionado

La actualidad más candente

Growing Drupal Organisations - Drupal Business Days 2012
Growing Drupal Organisations - Drupal Business Days 2012Growing Drupal Organisations - Drupal Business Days 2012
Growing Drupal Organisations - Drupal Business Days 2012
Exove
 

La actualidad más candente (20)

State of the Feather - Apache:Big Data - Budapest
State of the Feather - Apache:Big Data - BudapestState of the Feather - Apache:Big Data - Budapest
State of the Feather - Apache:Big Data - Budapest
 
Embracing InnerSource for your adaptive Digital Transformation
Embracing InnerSource for your adaptive Digital TransformationEmbracing InnerSource for your adaptive Digital Transformation
Embracing InnerSource for your adaptive Digital Transformation
 
Why your project's brand is more important than the code - SCRIPT
Why your project's brand is more important than the code - SCRIPTWhy your project's brand is more important than the code - SCRIPT
Why your project's brand is more important than the code - SCRIPT
 
Supporting Apache Brands While Making A Profit - v2.0b
Supporting Apache Brands While Making A Profit - v2.0bSupporting Apache Brands While Making A Profit - v2.0b
Supporting Apache Brands While Making A Profit - v2.0b
 
How To Keep Your Apache Project's Independence
How To Keep Your Apache Project's IndependenceHow To Keep Your Apache Project's Independence
How To Keep Your Apache Project's Independence
 
The Apache Way - Dataworks Summit 2017
The Apache Way - Dataworks Summit 2017The Apache Way - Dataworks Summit 2017
The Apache Way - Dataworks Summit 2017
 
The Journey of Apache ManifoldCF: Learning from ASF's Successes
The Journey of Apache ManifoldCF: Learning from ASF's SuccessesThe Journey of Apache ManifoldCF: Learning from ASF's Successes
The Journey of Apache ManifoldCF: Learning from ASF's Successes
 
Supporting Apache Brands While Making A Profit - ApacheCon 2014
Supporting Apache Brands While Making A Profit - ApacheCon 2014Supporting Apache Brands While Making A Profit - ApacheCon 2014
Supporting Apache Brands While Making A Profit - ApacheCon 2014
 
Introducing the ASF at Microsoft Build 2020 - Italian Dev Community
Introducing the ASF at Microsoft Build 2020 - Italian Dev Community Introducing the ASF at Microsoft Build 2020 - Italian Dev Community
Introducing the ASF at Microsoft Build 2020 - Italian Dev Community
 
OSGeo Incubation 2014
OSGeo Incubation 2014OSGeo Incubation 2014
OSGeo Incubation 2014
 
Perfect Web Project
Perfect Web ProjectPerfect Web Project
Perfect Web Project
 
Growing Drupal Organisations - Drupal Business Days 2012
Growing Drupal Organisations - Drupal Business Days 2012Growing Drupal Organisations - Drupal Business Days 2012
Growing Drupal Organisations - Drupal Business Days 2012
 
From 1 to 100
From 1 to 100From 1 to 100
From 1 to 100
 
The apacheway
The apachewayThe apacheway
The apacheway
 
Enterprise Open Source
Enterprise Open SourceEnterprise Open Source
Enterprise Open Source
 
Open Hardware at CERN - a quick introduction by Javier Serrano
Open Hardware at CERN - a quick introduction by Javier SerranoOpen Hardware at CERN - a quick introduction by Javier Serrano
Open Hardware at CERN - a quick introduction by Javier Serrano
 
Drupal vs. the Others
Drupal vs. the OthersDrupal vs. the Others
Drupal vs. the Others
 
The Apache Way: A Proven Way Toward Success
The Apache Way: A Proven Way Toward SuccessThe Apache Way: A Proven Way Toward Success
The Apache Way: A Proven Way Toward Success
 
What is SaaS vs Open Source | Open Source CMS (Content Management System) vs ...
What is SaaS vs Open Source | Open Source CMS (Content Management System) vs ...What is SaaS vs Open Source | Open Source CMS (Content Management System) vs ...
What is SaaS vs Open Source | Open Source CMS (Content Management System) vs ...
 
Scaling up your R&D group
Scaling up your R&D groupScaling up your R&D group
Scaling up your R&D group
 

Destacado

Chapman bosc2010 biopython
Chapman bosc2010 biopythonChapman bosc2010 biopython
Chapman bosc2010 biopython
BOSC 2010
 
Schultheiss bosc2010 persistance-web-services
Schultheiss bosc2010 persistance-web-servicesSchultheiss bosc2010 persistance-web-services
Schultheiss bosc2010 persistance-web-services
BOSC 2010
 
Why Docker
Why DockerWhy Docker
Why Docker
dotCloud
 
Lesdag 3 charles taylor michel foucault
Lesdag 3 charles taylor   michel foucaultLesdag 3 charles taylor   michel foucault
Lesdag 3 charles taylor michel foucault
CVO-SSH
 

Destacado (20)

Chapman bosc2010 biopython
Chapman bosc2010 biopythonChapman bosc2010 biopython
Chapman bosc2010 biopython
 
Schultheiss bosc2010 persistance-web-services
Schultheiss bosc2010 persistance-web-servicesSchultheiss bosc2010 persistance-web-services
Schultheiss bosc2010 persistance-web-services
 
Innovate or die
Innovate or dieInnovate or die
Innovate or die
 
Microsoft open technologies の ross gardler さんを囲む会 改め 『microsoft open technolo...
Microsoft open technologies の ross gardler さんを囲む会 改め 『microsoft open technolo...Microsoft open technologies の ross gardler さんを囲む会 改め 『microsoft open technolo...
Microsoft open technologies の ross gardler さんを囲む会 改め 『microsoft open technolo...
 
Open Development in the Enterprise, October 2013 edition
Open Development in the Enterprise, October 2013 editionOpen Development in the Enterprise, October 2013 edition
Open Development in the Enterprise, October 2013 edition
 
Canjs
CanjsCanjs
Canjs
 
Open Source In Education
Open Source In EducationOpen Source In Education
Open Source In Education
 
Dev cloud
Dev cloudDev cloud
Dev cloud
 
Open Source enables Open Innovation
Open Source enables Open InnovationOpen Source enables Open Innovation
Open Source enables Open Innovation
 
Open Source Governance Models
Open Source Governance ModelsOpen Source Governance Models
Open Source Governance Models
 
Life in Open Source Communities, ApacheCon US 2009
Life in Open Source Communities, ApacheCon US 2009Life in Open Source Communities, ApacheCon US 2009
Life in Open Source Communities, ApacheCon US 2009
 
Project Governance
Project GovernanceProject Governance
Project Governance
 
Hortonworks apache training
Hortonworks apache trainingHortonworks apache training
Hortonworks apache training
 
Open Source at scale: the Apache Software Foundation
Open Source at scale: the Apache Software FoundationOpen Source at scale: the Apache Software Foundation
Open Source at scale: the Apache Software Foundation
 
Open-Source Collaboration Tools are Good for You - 2009 edition
Open-Source Collaboration Tools are Good for You - 2009 editionOpen-Source Collaboration Tools are Good for You - 2009 edition
Open-Source Collaboration Tools are Good for You - 2009 edition
 
[Docker Tokyo - DockerCon Recap] Updates from Microsoft
[Docker Tokyo - DockerCon Recap] Updates from Microsoft[Docker Tokyo - DockerCon Recap] Updates from Microsoft
[Docker Tokyo - DockerCon Recap] Updates from Microsoft
 
Cloud stack for_beginners
Cloud stack for_beginnersCloud stack for_beginners
Cloud stack for_beginners
 
OSS Governance
OSS GovernanceOSS Governance
OSS Governance
 
Why Docker
Why DockerWhy Docker
Why Docker
 
Lesdag 3 charles taylor michel foucault
Lesdag 3 charles taylor   michel foucaultLesdag 3 charles taylor   michel foucault
Lesdag 3 charles taylor michel foucault
 

Similar a Gardler bosc2010 community_developmentattheasf

Similar a Gardler bosc2010 community_developmentattheasf (20)

The Apache Way
The Apache WayThe Apache Way
The Apache Way
 
Building software: the lessons from open source
Building software: the lessons from open sourceBuilding software: the lessons from open source
Building software: the lessons from open source
 
OpenOffice, Open Business
OpenOffice, Open BusinessOpenOffice, Open Business
OpenOffice, Open Business
 
The Apache Way
The Apache WayThe Apache Way
The Apache Way
 
An Open Source Approach to Collaboration
An Open Source Approach to CollaborationAn Open Source Approach to Collaboration
An Open Source Approach to Collaboration
 
Open Source Product Management
Open Source Product ManagementOpen Source Product Management
Open Source Product Management
 
Getting Started With Git and GitHub & Unfolding Opportunities in Open Source
 Getting Started With Git and GitHub & Unfolding Opportunities in Open Source  Getting Started With Git and GitHub & Unfolding Opportunities in Open Source
Getting Started With Git and GitHub & Unfolding Opportunities in Open Source
 
Let's talk FOSS!
Let's talk FOSS!Let's talk FOSS!
Let's talk FOSS!
 
Osgeo incubation-2014
Osgeo incubation-2014Osgeo incubation-2014
Osgeo incubation-2014
 
Michael Widenius
Michael WideniusMichael Widenius
Michael Widenius
 
Netflix OSS Meetup Season 4 Episode 4
Netflix OSS Meetup Season 4 Episode 4Netflix OSS Meetup Season 4 Episode 4
Netflix OSS Meetup Season 4 Episode 4
 
DockerCon US 2016 - Scaling Open Source operations
DockerCon US 2016 - Scaling Open Source operationsDockerCon US 2016 - Scaling Open Source operations
DockerCon US 2016 - Scaling Open Source operations
 
"Open Source and the Choice to Cooperate" by Brian Behlendorf @ eLiberatica 2007
"Open Source and the Choice to Cooperate" by Brian Behlendorf @ eLiberatica 2007"Open Source and the Choice to Cooperate" by Brian Behlendorf @ eLiberatica 2007
"Open Source and the Choice to Cooperate" by Brian Behlendorf @ eLiberatica 2007
 
Philosophy of Open Source - SFO17-TR01
Philosophy of Open Source - SFO17-TR01Philosophy of Open Source - SFO17-TR01
Philosophy of Open Source - SFO17-TR01
 
Why Open Source Products Are Important by a Google Tech Manager
Why Open Source Products Are Important by a Google Tech ManagerWhy Open Source Products Are Important by a Google Tech Manager
Why Open Source Products Are Important by a Google Tech Manager
 
Overcoming the Fear of Contributing to Open Source
Overcoming the Fear of Contributing to Open SourceOvercoming the Fear of Contributing to Open Source
Overcoming the Fear of Contributing to Open Source
 
What’s Driving Open Source (for MyGOSSCon)
What’s Driving Open Source (for MyGOSSCon)What’s Driving Open Source (for MyGOSSCon)
What’s Driving Open Source (for MyGOSSCon)
 
WE16 - Navigating the Seas of Open Source Projects
WE16 - Navigating the Seas of Open Source ProjectsWE16 - Navigating the Seas of Open Source Projects
WE16 - Navigating the Seas of Open Source Projects
 
Open source, What | Why | How
Open source, What | Why | How Open source, What | Why | How
Open source, What | Why | How
 
[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...
[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...
[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...
 

Más de BOSC 2010

Mercer bosc2010 microsoft_framework
Mercer bosc2010 microsoft_frameworkMercer bosc2010 microsoft_framework
Mercer bosc2010 microsoft_framework
BOSC 2010
 
Langmead bosc2010 cloud-genomics
Langmead bosc2010 cloud-genomicsLangmead bosc2010 cloud-genomics
Langmead bosc2010 cloud-genomics
BOSC 2010
 
Swertz bosc2010 molgenis
Swertz bosc2010 molgenisSwertz bosc2010 molgenis
Swertz bosc2010 molgenis
BOSC 2010
 
Rice bosc2010 emboss
Rice bosc2010 embossRice bosc2010 emboss
Rice bosc2010 emboss
BOSC 2010
 
Morris bosc2010 evoker
Morris bosc2010 evokerMorris bosc2010 evoker
Morris bosc2010 evoker
BOSC 2010
 
Kono bosc2010 pathway_projector
Kono bosc2010 pathway_projectorKono bosc2010 pathway_projector
Kono bosc2010 pathway_projector
BOSC 2010
 
Kanterakis bosc2010 molgenis
Kanterakis bosc2010 molgenisKanterakis bosc2010 molgenis
Kanterakis bosc2010 molgenis
BOSC 2010
 
Gautier bosc2010 pythonbioconductor
Gautier bosc2010 pythonbioconductorGautier bosc2010 pythonbioconductor
Gautier bosc2010 pythonbioconductor
BOSC 2010
 
Friedberg bosc2010 iprstats
Friedberg bosc2010 iprstatsFriedberg bosc2010 iprstats
Friedberg bosc2010 iprstats
BOSC 2010
 
Fields bosc2010 bio_perl
Fields bosc2010 bio_perlFields bosc2010 bio_perl
Fields bosc2010 bio_perl
BOSC 2010
 
Bonnal bosc2010 bio_ruby
Bonnal bosc2010 bio_rubyBonnal bosc2010 bio_ruby
Bonnal bosc2010 bio_ruby
BOSC 2010
 
Puton bosc2010 bio_python-modules-rna
Puton bosc2010 bio_python-modules-rnaPuton bosc2010 bio_python-modules-rna
Puton bosc2010 bio_python-modules-rna
BOSC 2010
 
Bader bosc2010 cytoweb
Bader bosc2010 cytowebBader bosc2010 cytoweb
Bader bosc2010 cytoweb
BOSC 2010
 
Talevich bosc2010 bio-phylo
Talevich bosc2010 bio-phyloTalevich bosc2010 bio-phylo
Talevich bosc2010 bio-phylo
BOSC 2010
 
Zmasek bosc2010 aptx
Zmasek bosc2010 aptxZmasek bosc2010 aptx
Zmasek bosc2010 aptx
BOSC 2010
 
Wilkinson bosc2010 moby-to-sadi
Wilkinson bosc2010 moby-to-sadiWilkinson bosc2010 moby-to-sadi
Wilkinson bosc2010 moby-to-sadi
BOSC 2010
 
Venkatesan bosc2010 onto-toolkit
Venkatesan bosc2010 onto-toolkitVenkatesan bosc2010 onto-toolkit
Venkatesan bosc2010 onto-toolkit
BOSC 2010
 
Taylor bosc2010
Taylor bosc2010Taylor bosc2010
Taylor bosc2010
BOSC 2010
 
Robinson bosc2010 bio_hdf
Robinson bosc2010 bio_hdfRobinson bosc2010 bio_hdf
Robinson bosc2010 bio_hdf
BOSC 2010
 
Qiu bosc2010
Qiu bosc2010Qiu bosc2010
Qiu bosc2010
BOSC 2010
 

Más de BOSC 2010 (20)

Mercer bosc2010 microsoft_framework
Mercer bosc2010 microsoft_frameworkMercer bosc2010 microsoft_framework
Mercer bosc2010 microsoft_framework
 
Langmead bosc2010 cloud-genomics
Langmead bosc2010 cloud-genomicsLangmead bosc2010 cloud-genomics
Langmead bosc2010 cloud-genomics
 
Swertz bosc2010 molgenis
Swertz bosc2010 molgenisSwertz bosc2010 molgenis
Swertz bosc2010 molgenis
 
Rice bosc2010 emboss
Rice bosc2010 embossRice bosc2010 emboss
Rice bosc2010 emboss
 
Morris bosc2010 evoker
Morris bosc2010 evokerMorris bosc2010 evoker
Morris bosc2010 evoker
 
Kono bosc2010 pathway_projector
Kono bosc2010 pathway_projectorKono bosc2010 pathway_projector
Kono bosc2010 pathway_projector
 
Kanterakis bosc2010 molgenis
Kanterakis bosc2010 molgenisKanterakis bosc2010 molgenis
Kanterakis bosc2010 molgenis
 
Gautier bosc2010 pythonbioconductor
Gautier bosc2010 pythonbioconductorGautier bosc2010 pythonbioconductor
Gautier bosc2010 pythonbioconductor
 
Friedberg bosc2010 iprstats
Friedberg bosc2010 iprstatsFriedberg bosc2010 iprstats
Friedberg bosc2010 iprstats
 
Fields bosc2010 bio_perl
Fields bosc2010 bio_perlFields bosc2010 bio_perl
Fields bosc2010 bio_perl
 
Bonnal bosc2010 bio_ruby
Bonnal bosc2010 bio_rubyBonnal bosc2010 bio_ruby
Bonnal bosc2010 bio_ruby
 
Puton bosc2010 bio_python-modules-rna
Puton bosc2010 bio_python-modules-rnaPuton bosc2010 bio_python-modules-rna
Puton bosc2010 bio_python-modules-rna
 
Bader bosc2010 cytoweb
Bader bosc2010 cytowebBader bosc2010 cytoweb
Bader bosc2010 cytoweb
 
Talevich bosc2010 bio-phylo
Talevich bosc2010 bio-phyloTalevich bosc2010 bio-phylo
Talevich bosc2010 bio-phylo
 
Zmasek bosc2010 aptx
Zmasek bosc2010 aptxZmasek bosc2010 aptx
Zmasek bosc2010 aptx
 
Wilkinson bosc2010 moby-to-sadi
Wilkinson bosc2010 moby-to-sadiWilkinson bosc2010 moby-to-sadi
Wilkinson bosc2010 moby-to-sadi
 
Venkatesan bosc2010 onto-toolkit
Venkatesan bosc2010 onto-toolkitVenkatesan bosc2010 onto-toolkit
Venkatesan bosc2010 onto-toolkit
 
Taylor bosc2010
Taylor bosc2010Taylor bosc2010
Taylor bosc2010
 
Robinson bosc2010 bio_hdf
Robinson bosc2010 bio_hdfRobinson bosc2010 bio_hdf
Robinson bosc2010 bio_hdf
 
Qiu bosc2010
Qiu bosc2010Qiu bosc2010
Qiu bosc2010
 

Último

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
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
 

Último (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
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
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
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...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
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
 
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...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
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
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
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
 
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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
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
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 

Gardler bosc2010 community_developmentattheasf

  • 1. Community Development at the Apache Software Foundation BOSC 2010, Boston, July 2010 Open Bioinformatics Foundation Ross Gardler @rgardler rgardler@apache.org Vice President, Community Development The Apache Software Foundation
  • 2. History of The Apache Software Foundation ● Accident or design? ● The Apache Way ● Flexibility and invariants ● Scaling the foundation ● From 8 to 2500+ ● Surviving the future ● A collection of projects or collaboration between experts?
  • 4. Founding of Apache ● Started as “Apache Group” (8 members) ● Resumed work on NCSA httpd in Feb 1995 ● UIUC put httpd in public domain, but essentially abandoned it ● Chose permissive licensing ● Informal corporate structure, until...
  • 5. Creation of the Foundation ● Incorporated with 21 members in 1999 ● ~2,500 committers, 291 members, and 53 emritus members today ● Membership-based organisation ● 501(c)3 publish charity status
  • 6. Apache's mission The Apache Software Foundation provides support for the Apache community of open source software projects. The Apache projects are characterised by a collaborative, consensus based development process, an open and pragmatic software licence, and a desire to create high quality software that leads the way in its field.
  • 7. Apache's tagline We are more than a group of projects sharing a server, we are a community of developers and users
  • 8. Or to put it another way... ● Let developers focus on what they do best ● Code ● Document (if only...) ● Foundation exists to do the rest ● “The Apache Way” ● Open development vs. open source ● All technical decisions about a project are made in public (mailing lists)
  • 9. Indirect financial support ● Apache does not pay for development ● Voluntary contributions only ● Many (not all) developers are paid by a third- party to work on the project ● Foundation bears indirect support costs ● Infrastructure, legal, publicity, etc.
  • 11. We're a meritocracy ● Everyone has a voice ● Do stuff and get a vote ● Merit is not transferable between projects ● Merit across multiple projects or at foundation level earn you membership
  • 12. Decision Making ● Who makes decisions? ● Community consensus via debate and code ● Occasionally a vote is required ● +1, +0, -0, -1 ● Everyone in the community has a vote ● “binding” vote given to committers ● All technical votes cast on public lists
  • 13. Rule of Lazy Consensus ● Trusted parties can just get on with it ● They know when a change will be controversial ● State what you intend to do and why ● Start doing it ● If no-one objects to the idea commit the code ● There's always code review
  • 15. Growth of the Foundation ● Started with just HTTP Server in 1995 ● The model “felt” repeatable ● Today, we have over 70 top-level projects ● >30 in Incubator ● It took over 15 years to get there... ● … but it wasn't smooth ...
  • 16. Jakarta “Foundation” ● Jakarta: “umbrella” for all Java efforts ● Successful as a brand in its own right ● Tomcat, Ant, Struts, etc. ● Started to copy the foundation org structure ● “mini”-board... but problems arose... ● who was responsible?
  • 17. Importance of Oversight ● Jakarta issues led to a lot of navel gazing ● Ultimately agreed upon an extremely flat organisational structure ● Very short communication lines ● Umbrella projects are bad! ● We killed jakarta: all projects became top-level
  • 18. Board Oversight ● Projects submit quarterly board reports ● By far the most important board activity ● Looking for repeating community anti-patterns ● Emerging umbrella projects ● Undue commercial influence ● Stagnating community ● Etc. ● NOT concerned with technical issues
  • 19. Foundation Structure ● Top-Level Projects ● Foundation ● Users ● Members ● Contributors – Cross-project community ● Committers ● Board ● PMC – Oversight – Technical management ● Foundation projects
  • 20. What makes a good Apache project?
  • 21. Community ● Diversity ● Minimum of 3 committers ● unrelated to one another outside the project ● Fully audited code ● CLAs on file ● No incompatible licences ● Practice The Apache Way –
  • 22. Generic and Reusable ● Don't (just) open source a complete application ● Open source the component parts independently ● Encourage communities from outside your domain ● Get enhancements to your libraries from others ● Or maybe, you can contribute to someone elses
  • 23. CC- BY-NC-SA © 2010 Bertrand Delacrataz
  • 24. CC- BY-NC-SA © 2010 Bertrand Delacrataz
  • 26. Can the ASF scale further? ● More projects mean ● Small overhead on foundation ● More volunteers at foundation level ● But... ● more opinions on what “The Apache Way” is ● more potential for abuse of ASF brand
  • 27. Managing growing pains ● Flat structures give power to “newbies” ● Low barriers to entry ● No entrance “exam” ● Can result in the “blind leading the blind” ● But, hierarchy is inefficient ● Higher barrier to entry creates a hierarchy ● So how do we ensure “The Apache Way” survives? ● Without stagnating
  • 28. The Apache Way has the answer ● Peer review is core to The Apache Way ● “Just get on with it, we'll object if necessary” ● Someone is watching ● Objections are supported by debate – That's how we learn ● Mentoring is a small step from peer review
  • 29. The Incubator ● Incubates new projects ● More specifically new project communities ● Mentors guide the project team ● Teach The Apache Way
  • 30. Community Development Project http//community.apache.org ● Google Summer of Code ● Code only ● Summer only ● Students only ● Apache Mentoring Project ● Any contribution ● Any time ● Anyone
  • 31. Why do this in foundation projects? ● Let developers do what they do best: code ● But some volunteers want to help newcomers ● Good for recruiting ● Good for training ● Good for community ● Good for getting stuff done
  • 33. Separation of Concerns ● Foundation ● Brand ● Infrastructure ● Legal ● Cross project community ● Projects ● Technical issues ● Project community
  • 34. No leaders, just doers ● Give decision making power to the doers ● Use lazy consensus to avoid “management by committee” ● Anyone with sufficient merit can veto ● But they should never need to ● Consensus through discussion
  • 35. Generalise ● Don't just open source a complete application ● Open source components of the application ● Most applications address a niche ● You are not unusual in this
  • 36. Educate ● Apache projects are successful because of “The Apache Way” ● There are other ways ● But not in Apache ● Better to ensure newcomers understand ● Incubation for project communities ● Mentoring for individuals