Navigating the Incubator at the Apache Software Foundation

34
Navigating the Incubator at the Apache Software Foundation Brett Porter Navigating the Incubator at the Apache Software Foundation Brett Porter

Transcript of Navigating the Incubator at the Apache Software Foundation

Page 1: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Navigating the Incubator at the Apache Software Foundation

Brett Porter

Page 2: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Navigating the Incubator• The ASF in 3 slides

• Why Apache?

• What is incubation all about

• Getting started

• Incubating

• Graduation, and the alternatives

• Examples

Page 3: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Introduction• Member and Director of the ASF

• Committer, PMC member at Apache Maven, Archiva, Continuum, NPanday, Infrastructure, others

• Podling mentor - Apache CloudStack, OpenEJB, Directory

• CTO, MaestroDev

• DevOps Orchestration engine

• Apache Maven 2: Effective Implementation

• Better Builds with Maven

Page 4: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

The ASF in 3 Slides

• Began as Apache Group in 1996

• Incorporated as the ASF in 1999

• Independent US non-profit - 501(c)3

• Volunteer organisation

• Member-based corporation - individuals

• Funded through sponsorship program

Page 5: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

The ASF in 3 Slides• > 100 projects

• > 3200 committers

• > 1500 PMC members

• 432 Members

• Officers: operations + PMC chairs

• 9 directors elected by Members

PMC Member

Committer

Contributor

User

Members

Officers / Committees

Board

Projects:Community and Technical

Foundation:Organisational

Executive Officers

Page 6: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

The ASF in 3 Slides

• Provide open source software to the public free of charge

• Provide infrastructure and resources

• Independent legal entity

• Protect brand

http://www.slideshare.net/jimjag/code-community-and-open-source

Page 7: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Why Apache?• Collaborative software development under the

Apache License

• Neutral ground for competitors to collaborate

• Lots of support

• Opportunities for cross-project collaboration

• Be part of a wider community

• ... but not right for every project

Page 8: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

What makes a successful Apache project?

• Many shapes and sizes

• Many different ways of doing development

• One common attitude to the approach

Page 9: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

What is the Incubator?

• Help existing projects join the Foundation

• Ensure all donations meet ASF legal standards

• Ensure they are compatible with ASF model of collaborative development

Page 11: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Incubation is not for building projects

Page 12: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Getting started

• Roles

• Proposal & Vote

• Infrastructure

• IP clearance

Page 13: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Roles

• Champion

• Mentor

• Incubator PMC

• Podling PMC (PPMC)

• Sponsoring project

Page 14: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Proposal

• More than a template - what is the project fit?

• Check the name you want to use is allowed!

• Improve it on the list

• Start a vote

Page 15: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Infrastructure

• Mailing lists

• Code repository and import

• Issue tracking and import, etc.

• Have a strategy in mind, and work it out on your new lists!

Page 16: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

IP clearance

• Get it out of the way early!

• Use the status file as a guide

Page 17: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Incubating

• Community building

• Reports

• Releases

• Procedures

Page 18: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Community Building

• The most important part!

• ...but there is no “one size fits all” solution

• Make sure there are avenues of participation

• Be inclusive

Page 19: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Reports

• Quarterly reports, in the same way as top level projects

• Help Incubator PMC and Board understand current state of the podling

• Keep the status page up to date!

Page 20: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Releases

• Incubator releases get the best review

• Release early and often

• Apache only releases source code

Page 21: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Other procedures

• Use the documentation, but don’t obsess over it

• Borrow from other podlings

Page 22: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Graduating

• Don't get too comfortable

• Plan to graduate, don't wait for it to happen

• Be comfortable with your development and release process

Page 23: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Graduation: How It Works

• Community discussion or vote

• Incubator vote

• Board resolution

Page 24: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

What if it doesn't work out?

• Some fail to graduate

• Always “retired”

• Source code still available if it cleared IP

• Can be rebooted - inside or outside ASF

Page 25: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Examples

• Subversion

• OpenEJB

• Heraldry

• Log4PHP

Page 26: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Why does this matter?

• Resources for developers of projects

• Legal

• Brand

• Infrastructure

• Community

Page 27: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Why does this matter?

• Assurance for users of projects

• Know what you are getting from a project

• Places to look for more information

Page 28: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Page 29: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Summary

• Many types of projects can come to Apache

• Every new Apache project must survive incubation

• Incubation goes through phases

• Addresses stuff that matters to open source projects

Page 31: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Incubation is not for building projects

Page 32: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Incubation is not for building projects

Incubation is for building community for

a project

Page 33: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

The Incubator is just the beginning

Page 34: Navigating the Incubator at the Apache Software Foundation

Navigating the Incubator at the Apache Software Foundation Brett Porter

Over to You!

[email protected] @brettporter

http://www.slideshare.net/brettporter/