Apache Community Development
Who should use Apache Extras?
Who should host their projects on Apache Extras?
Apache Extras is aimed primarily those who are unable or unwilling to licence their code under the Apache License V2, but want to signal their relationship to one or more Apache project community.
One example of this is my own Drupal connector for Apache Wookie (Incubating). This needs to be GPL licensed due to the Drupal dependency, but it contains Apache Licensed code as well. Consequently it cannot be hosted at Drupal, nor can it be hosted at the ASF. Now, with Apache Extras, it has a home that is associated with at least one of those organisations.
A second group of projects that may choose to host on Apache Extras are those who wish to manage their projects in a way that is not aligned with our own collaborative consensus based processes.
Posted at 08:00AM Dec 20, 2010 by rgardler in General | |
What makes Apache projects different?
Sharing a code repository with some other programmers might seem enough to create an open source project; the Apache Software Foundation goes further and focuses on making projects sustainable in the long term, and ensuring that our code is legally clean.
This means that our projects have to follow a (small) number of rules, and a number of best practices have been established over the years.
Here's a quick description of how Apache projects are born and live on - some of the items below are derived from the ASF's bylaws (http://www.apache.org/foundation/bylaws.html), while others are best practices that evolved over time.
Projects enter the ASF via the Incubator, anyone can suggest a new project as described on the Incubator website (http://incubator.apache.org).
A Project Management Committee (PMC) oversees each project on behalf of its users, contributors, committers and the foundation itself.
New committers and PMC members are elected by the PMC based on merit.
Committers and PMC members are not necessarily ASF members, to be members they have to be elected separately (see "roles" in http://www.apache.org/foundation/how-it-works.html).
Each project has at least one private and one public (development,"dev") mailing list which are the only official communication channels for the PMC members and committers.
Discussions and decisions about people (such as the elections mentioned above) usually happen on the project's private list, but that's not a hard rule, each PMC can decide.
All other decisions happen on the dev list, discussions on the private list are kept to a minimum.
"If it didn't happen on the dev list, it didn't happen" - which leads to:
a) Elections of committers and PMC members are published on the dev list once finalized.
b) Out-of-band discussions (IRC etc.) are summarized on the dev list as soon as they have impact on the project, code or community.
Where possible, decisions are made by consensus. The ASF has voting procedures to help reach this consensus (http://www.apache.org/foundation/voting.html).
A formal PMC vote is required to publish a release. By voting to accept the release, the PMC makes the release an act of the foundation, as opposed to a personal action of the the release manager. This is a very important distinction should any legal issues arise.
Each PMC reports to the ASF's board of directors, usually quarterly. The PMC's report mentions progress made and any problems encountered. Items of particular relevance to the board include community activities,
software releases, development work and compliance with the ASF's rules and best practices.
Trademarks and logos used by ASF projects belong to the ASF.
Don't hesitate to ask on the community development mailing list (http://community.apache.org/) if you have questions about this - and in the meantime, have fun at the ASF, commit early and communicate often!