This is the first in a series of essays describing Apache governance. While there are a number of existing documents that explain some of the “hows”, I’m hoping to fill in some of the key information about the “whys” of how the Apache Software Foundation (ASF) actually works day-to-day. Look for more articles on things like the Membership, PMCs, projects, and more coming up!
The board consists of 9 directors, each serving as an individual. After each annual board election, the board chooses a Chairman from it’s ranks. This is currently done a couple of months after the board election, to give the new board a chance to get to know one another. The board also appoints executive officers for the corporation at that time.
The board meets by conference call and IRC chat monthly. The agenda is published privately to the Membership. All corporate officers make a monthly written report to the board, and every Project Management Committee (PMC) makes a quarterly written report to the board. In this way, the PMCs report directly to the board, not to the President or other corporate officers. All ASF Members and invited guests are welcome at board meetings, except during very rare executive sessions of the board.
Currently, the average monthly agenda includes 10 corporate officer reports, 40 PMC reports, and often a handful of official resolutions. To ease the review process for reports, reports are due well before the meeting begins, and many directors “preapprove” reports by initialing them in the agenda file before the meeting. Each PMC report is assigned a director to serve as “shepherd” for the month; any questions raised before or during the meeting are taken by the shepherd back to the relevant officer or PMC for an answer or resolution. PMCs that report late or where serious questions are raised during the meeting may be asked to provide an additional report at the next monthly meeting.
The President is responsible for managing the day-to-day operations, and helps to coordinate the work of the VP, Infrastructure and the sysadmin team; however VP, Infrastructure also makes a monthly report directly to the board. In this way, the board exercises oversight over all official Foundation activities.
Article V. of the ASF bylaws specifies a Board comprised of 9 Directors, elected annually by the ASF Membership. The Apache Board is much like the board of directors of any other corporation, responsible for “…management of the corporate assets (funds, intellectual property, trademarks, and support equipment) and allocation of corporate resources to projects.”
The board is responsible for appointing any officers of the ASF, including executive officers – President, Secretary, Treasurer – and other officers, both those with corporate functions (Legal, Publicity), and Vice Presidents of individual Apache projects. The board also sets overall policy for Apache projects, or in many cases, delegates the details of policy setting and implementation to specific corporate officers. Official resolutions are used to appoint or change officer positions, create new Top Level Projects (TLPs) or retire unused projects, and in certain cases to make fundamental policy decisions. Most policy is simply agreed upon by the board and any relevant officer(s), and published on our website.
With the exception of monthly conference calls, board communication is done over private mailing lists. The email@example.com mailing list is the primary place where official business is done. All directors, corporate officers and PMC chairs are expected to subscribe to this mailing list and track issues relevant to their areas of responsibility. Many ASF Members also participate, comment, and help resolve issues where appropriate.
Directors will regularly read and participate on various project mailing lists when a board-level issue or question has been raised. This participation is done wearing their board hat: i.e. as a strategic voice, addressing broad ASF policies or important community health issues. Directors participate technically in Apache projects as individuals: directors are not automatically granted committerships, PMC memberships, or even binding votes on any project matters. Directors wishing to influence the technical work of a project must gain merit and be voted in as a committer to that specific project like any other contributor.
The board exercises oversight of Apache Projects by reviewing project reports at the monthly board meeting, and by explicitly approving all changes to PMC membership. When PMCs have voted in and nominated a new committer to serve on the PMC, they ask the board for an ACK, or acknowledgment, of the addition. Once any one director sends an ACK email, the official PMC membership roster is updated after a 72 hour wait, designed to give other directors a chance to comment or question the appointment before it is officially recorded.
PMCs are expected to provide accurate and thorough reports to the board of their community health and technical and software release activities. Projects that do not report or have serious issues in their report will be contacted by that month’s shepherd or another director to find a resolution. In extreme cases, where a PMC is dysfunctional or is not following required Apache policies, the board may unilaterally make changes to the PMC or may dissolve a project to correct the issue.
Board elections are held annually; currently, each board seat is for one year, so all 9 directorships are voted on annually. ASF Members are eligible to nominate people for board seats as well as to vote in the board election. Director candidates run individually, and Member votes are currently cast by Single Transferable Vote (STV). All nominations, position statements, and voting are conducted electronically either over private mailing lists or using our own software for casting votes. Individual votes are kept anonymous, although the full STV calculations are published privately amongst the Membership.
In the past, only existing Members with some history within the ASF have been nominated. While the bylaws allow for any person to be nominated for the board, the amount of trust and expected experience with the Apache Way for directors is such that nominees outside of the existing Membership are unlikely for the time being.
For the first several years after incorporation the board was quite stable, with a majority continuing to serve repeatedly. As the ASF grew in membership around 2004, the board began to change somewhat, with a few new faces appearing each year. Jim Jagielski, one of the founders of the ASF, has remained on the board since it’s beginning.
Directors are expected to serve as individuals on the board, representing the Membership and acting in the best interests of the ASF as a whole. Directors are expected to disclose any conflicts of interest they may have due to their current employment, and recuse themselves when necessary from votes or potentially discussions on subjects they have a conflict with.
While Directors participate in a variety of communities both within and outside of the ASF, the primary community home for directors is the Membership. Most directors follow the main private Members mailing list, where any ASF Member start discussions about a wide variety of topics, spanning from new technologies, policy ideas, questions about project communities, or even personal announcements of weddings and births.
From time to time Directors participate in the communities of various Apache projects when a board-level issue or question is raised; however they do so wearing their individual Director hat. Many Directors are separately committers or PMC members on a variety of Apache projects, where they do technical and community work just like any other committer, wearing a committer hat.
Many Directors also serve in the public community; serving as spokespeople for the Apache Way or granting interviews about the ASF or our projects, or reviewing other open source or charitable foundation works.
The board does not provide technical direction for any of it’s projects or activities. The board does set broad policies – for example, requiring that all source control systems are run on ASF hardware, and controlled by ASF Infrastructure. Technical direction – either in terms of how to implement infrastructure or what code projects should work on is all delegated to the PMCs or relevant officers.
While this may be a surprise to some, it is a key reflection of how the ASF is intentionally structured to provide maximum freedom to it’s projects. The board and the ASF are happy to provide a home to any software project communities that are willing to follow the Apache Way. The mission of the ASF is to provide software for the common good: we are happy to help like-minded communities to provide that software; are confident that communities will form around software that is useful; and understand that there are many different ways to effectively and collaboratively build software.