Hello,
I have given a bit of thought in the issue during the past few days, in reading all the emails on this list, and I had the opportunity today to talk with one of the co-founder of the Apache Foundation, in particular about the way their Foundation is organised. I put wikitech in copy, because I am pretty sure some of the guys there know the organisation and will be able to correct me if necessary.
I thought that his description of his Foundation... would very possibly fit pretty well what it seems many on this list are looking for and solve some of our current problems.
It has some points in commons with the previous Wikicouncil on which we had worked, but one of the problems with the Wikicouncil was ... the rather unclear role of this one. http://meta.wikimedia.org/wiki/Wikicouncil
Now, from what I understood from Lars description, I think the Apache Foundation model could rather well fit us... if so, why trying to reinvent the wheel ?
I will try to describe below, using largely what is explained on their site + his comments. Please correct me if you view some misunterpretations. Also, if you know the organisation from the inside, please comment.
--------
Ant : Bare facts : their goals (please compare with our goals)
What is the Apache Software Foundation?
The Apache Software Foundation (ASF) is a 501(c)3 non-profit organization incorporated in the United States of America and was formed primarily to:
* provide a foundation for open, collaborative software development projects by supplying hardware, communication, and business infrastructure * create an independent legal entity to which companies and individuals can donate resources and be assured that those resources will be used for the public benefit * provide a means for individual volunteers to be sheltered from legal suits directed at the Foundation's projects * protect the 'Apache' brand, as applied to its software products, from being abused by other organizations
Ant : Aside from point 3, that's roughly similar to us
--------
The Foundation structure
At the time the ASF was created, there were several separate communities, each focused on a different side of the "web serving" problem, but all united by a common set of goals and a respected set of cultural traditions in both etiquette and process.
Ant : in short, several projects with rather individual communities and a common goal.
These separate communities were referred to as "projects" and while similar, each of them exhibited little differences that made them special.
In order to reduce friction and allow for diversity to emerge, rather than forcing a monoculture from the top, the projects are designated the central decision-making organizations of the Apache world. Each project is delegated authority over development of its software, and is given a great deal of latitude in designing its own technical charter and its own governing rules.
The foundation is governed by the following entities:
Board of Directors (board) governs the foundation and is composed of members.
Project Management Committees (PMC) govern the projects, and they are composed of committers. (Note that every member is, by definition, also a committer.)
Ant : for us, we currently have the board. Something similar to the PMC was suggested on the list recently, so as to separate more strictly board and projects
-----------
Board of Directors (board)
The board is responsible for management and oversight of the business and affairs of the corporation in accordance with the foundation Bylaws. This includes management of the corporate assets (funds, intellectual property, trademarks, and support equipment) and allocation of corporate resources to projects.
However, technical decision-making authority regarding the content and direction of the Apache projects is assigned to each respective project management committee.
The board is currently composed by nine individuals, elected between the members of the foundation. The bylaws don't specify the number of officers that the board should have, but historically, this was the number of the first board and it has never changed. The board is elected every year.
Ant : note that the board is elected by the members of the Foundation (ASF Member). Not by all developers whatever their status, but only ASF members (see below how to get ASF member).
Ant : Lars told me that the board was entirely elected. So entirely came from within the community.
-------------
Project Management Committees (PMC)
The Project Management Committees are established by resolution of the Board, to be responsible for the active management of one or more communities, which are also identified by resolution of the Board.
Each PMC consists of at least one officer of the ASF, who shall be designated chairperson, and may include one or more other members of the ASF.
The chair of the PMC is appointed by the Board and is an officer of the ASF (Vice President). The chair has primary responsibility to the Board, and has the power to establish rules and procedures for the day to day management of the communities for which the PMC is responsible, including the composition of the PMC itself.
Ant : in our case, the PMC (rather than the chair really) might have the power to make the rules over copyright issues for example
The role of the PMC from a Foundation perspective is oversight. The main role of the PMC is not code and not coding - but to ensure that all legal issues are addressed, that procedure is followed, and that each and every release is the product of the community as a whole. That is key to our litigation protection mechanisms.
Secondly the role of the PMC is to further the long term development and health of the community as a whole, and to ensure that balanced and wide scale peer review and collaboration does happen. Within the ASF we worry about any community which centers around a few individuals who are working virtually uncontested. We believe that this is detrimental to quality, stability, and robustness of both code and long term social structures.
As the PMC, and the chair in particular, are eyes and ears of the ASF Board, it is you that we rely on and need to trust to provide legal oversight.
The board has the faculty to terminate a PMC at any time by resolution.
------------
How does someone get PMC Member ?
PMC member is a developer or a committer that was elected due to merit for the evolution of the project and demonstration of commitment. They have write access to the code repository, an apache.org mail address, the right to vote for the community-related decisions and the right to propose an active user for committership. The PMC as a whole is the entity that controls the project, nobody else.
-------
How does someone get ASF Member
ASF member is a person that was nominated by current members and elected due to merit for the evolution and progress of the foundation. Members care for the ASF itself. This is usually demonstrated through the roots of project-related and cross-project activities. Legally, a member is a "shareholder" of the foundation, one of the owners. They have the right to elect the board, to stand as a candidate for the board election and to propose a committer for membership. They also have the right to propose a new project for incubation (we'll see later what this means). The members coordinate their activities through their mailing list and through their annual meeting.
Ant : note the subtle difference between an PMC member (dedicated to his project , acquire a right to manage his project) with an ASF member (dedicated to the Foundation or at least the general goal as opposed to a specific project). Most people on this mailing list are typically ASF type...
Ant : a subtility mentionned by Lars is that there is no limitation to the members of ASF. It is a sort of confirmation process rather than election. A person is recognised as "involved and trusted", hence she becomes a member. So, there is not this notion we had previously thought in the wikicouncil idea that 5 seats should be given to english wikipedia, whilst only 3 for the french wikibooks and 1 for the catalan wikiquote. As a result, the membership grows and grows... roughly 150 people if I remember well. Lars mentionned that when the quorum for vote will become hard to reach, they will probably un-ASF memberise the inactive members.
What do ASF members do ?
They elect the board...
Ant : now, think about it. If ASF members are *officially* ASF members, they are not anonymous. All of them have their real name known. They are real members of a legal entity. For us, anons or people refusing to give their real names (at least privately) could not be ASF members. However, they could elect (or support) other people to become ASF members.
Ant : another thing not mentionned on their website but which I was explained : each project committee must mandatorily have at least 2 ASF members on it. They also have an incubator area, where new projects are started and tested. Similarly, these projects must be "headed" by a committeee (elected by its own members), on which must be found at least 2 ASF members.
---------
Other Foundation Entities
After infrastructure and incubator, the foundation hosts several other entities more or less formalized open to ASF members and to invited experts or individuals that do not directly create code but serve for specific purposes. They are:
the conference organizing committee (aka concom) -- responsible for the organization of the official ASF conference (aka ApacheCon)
the security committee -- responsible for the handling of potential security holes in the software produced by the foundation that might impact our users. It gets contacted by the finders of the problems before the problem report is made available to the public, to allow the projects to provide a fix in time for the report, thus reducing vulnerability to a minimum
the public relations committee -- responsible for the fund raising (collaborates with the concom since the conference is one of the major sources of income of the foundation) and public relations - including trademark licensing and other issues regarding management of the Apache brand, raising of funds, and is responsible for the press-related issues like press releases for major ASF events or dispatching requests for interviews.
the JCP committee -- responsible for the liaison between the ASF and the Java Community Process (the ASF is a member of the JCP Executive Committee)
the licensing committee -- responsible for the legal issues associated with licensing and license compatibilities and for the revision of the Apache Software License
Ant : guess what ? That looks as our committees...
------
Congrats to all those who made up so far. I summarize.
An organisation with * a board * members (ASF members) * aside committees (event, public relations etc...)
ASF Members elect the board.
A collection of projects, whose participants elect ASF members.
Each project has a governing committee in charge, on which there are at leasts 2 ASF members, and which report to the board of the ASF.
Comments ?
Ant