The Apache Software Foundation
Community > Code
There are a number of useful Apache tools and services available for Apache projects and committers. This is a brief set of pointers or signposts to that information.
Apache Infrastructure Information
If you’re a committer, you can patch this very website yourself!
Decisions in Apache projects result from:
- consensus in the community
- (if needed) votes within the community
We have, over the years, developed a very simple and effective approach to consensus building and decision making. Projects, and the ASF generally, make the vast majority of decisions using lazy consensus. If the “lazy” approach to consensus building seems unsuitable for a particular decision, we seek to build consensus within the community. Very occasionally, usually for formal reasons relating to legal responsibilities, it is necessary to call a vote.
Full descriptions of each of these approaches are available on various foundation and project sites. However, we’ve provided an initial introduction to decision making here on the community development site.
While not all ASF projects practice all aspects of the Apache Way in the same way, there are a number of rules that Apache projects must follow – things like complying with PMC release voting, legal policy, brand policy, using mailing lists, etc., which various sites document.
One of these invariant rules is that PMCs manage projects independently of any commercial interests. The goal is to create an environment in which all participants are equal and thus have an equal opportunity to contribute to and benefit from our software, regardless of motivation or financial objectives. There is more discussion of this principle in our document Project Independence.
Each project in Apache is free to define its own development processes as long as it respects our decision-making, legal and independence requirements. However, over the many years that the ASF has existed, our projects have evolved and documented many best practices. In this section we bring together some of the most popular of these practices. Most Apache projects operate in ways that are largely similar to these processes.
- Crediting contributors is a critical part of community building
- ASF Licensing Policy
- Releases FAQ
- Release audit is a process each release candidate must go through to ensure it is managing intellectual property (IP) correctly
- RAT/Creadur is a tool to assist this process
- Release management is how the project prepares and publishes its releases
- Handling cryptography in an Apache Release
- Source Headers and NOTICE Files
- Distribution best practices
- ASF Developer section sitemap
Assisting with project management and marketing
There are many visible contributions of value in an Apache projects (documentation, testing, coding user support, design etc.), but there are also plenty of “back office” tasks that are necessary to maintain a healthy project. This section describes some of the activities that you can help with. In most cases you will need to be a committer to carry out these activities, although non-committers can often act in supporting roles.
- Write informational blogs
- Assessing and approving new committers
- Board Reports
- Apache Project Branding/Trademark Resources
Speaking about Apache projects at events
We encourage all of our committers to speak about Apache projects and technologies, and generally to help to grow and enhance our community. For more information, see our Speakers section.
In addition, we encourage all committers to list themselves as “Local Mentors”, and thus help new committers and would-be committers. For more information on what this program involves, and how to sign yourself up for it, see the Local Mentors page.
There is no shortage of useful resources for committers at Apache. Here are a few you might want to take a look at: