Note: this document was produced in October 2000, and contains inaccuracies on the current working practices of the project. However, it is retained here for historical purposes
Draft 0.61 (23 October 2000)
This document describes the purpose, basic structure and operational policies of a proposed GNOME foundation. Although certain issues are not addressed fully, the core functions of the foundation are defined and procedures for them are described.
This document includes broad mission level statements and operational provisions. We are in the process of creating Articles of Incorporation and By-Laws that will incorporate this charter, cast in stone our fundamental beliefs, and give us the flexibility to amend implementation items.
Preface: Why a GNOME Foundation?
Since the project was started in 1998, GNOME has grown tremendously. The technology has started to mature, the amount of code contributed has exploded, the number of developers (also known as GNOME hackers) who are contributing to GNOME has more than doubled. With the emergence of a GNOME industry, and as corporate partners are embracing GNOME, the number of hackers who are paid to work full-time on GNOME has grown dramatically, in addition to the hundreds of volunteer hackers in the community.
As GNOME has grown, so have our goals. Over the next few years, we want to offer a state-of-the-art, fully free desktop to many people who today are not using computers because they are too expensive and too complicated to use.
In short, GNOME is growing up.
To achieve our goals in a timely manner, the project will need more focus than the current structure can offer. When GNOME was a smaller project, Miguel was able to make most of the key decisions. Today, there is a need for a forum that can provide GNOME, and the projects that make up GNOME, with the structure and support they will need to continue to grow. We need a more structured environment to smoothly integrate new citizens into the community. The GNOME Foundation will provide this support. The Foundation will also provide a place to resolve the inevitable conflicts that arise in a diverse community. Equally important, the Foundation can voice the decisions and positions of the GNOME project, and, therefore, can act as a liaison with the press and corporations who want to be involved with GNOME.
Most importantly, the GNOME Foundation will provide transparency and representation. Whereas decisions in the past have often been made in an ad-hoc fashion and in private conversations between a small number of people, the foundation will provide a forum that is elected by the GNOME community, that is accountable to that community, and that will conduct its affairs in the open.
The GNOME Foundation will work to further the goal of the GNOME project: to create a computing platform for use by the general public that is completely free software.
To achieve this goal, the Foundation will coordinate releases of GNOME and determine which projects are part of GNOME. The Foundation will act as an official voice for the GNOME project, providing a means of communication with the press and with commercial and noncommercial organizations interested in GNOME software. The foundation may produce educational materials and documentation to help the public learn about GNOME software. In addition, it may sponsor GNOME-related technical conferences, and represent GNOME at relevant conferences sponsored by others, help create technical standards for the project and promote the use and development of GNOME software.
I. Principles of the GNOME Foundation
Open and Public
In almost every sense of the word, GNOME is an open project. This is one of our greatest strengths, has always been, and should be the balefire by which we plot our course into the future.
The foundation should not be exclusionary or elitist. Every GNOME contributor, however small his or her contribution, must have the opportunity to participate in determining the direction and actions of the project.
The openness of GNOME has always been a point of pride for us, and an important characteristic which distinguishes us from many of the other open source projects out there. Anyone can become a contributor, write access to our CVS does not involve trial by fire or other masonic rituals, we don't use Access Control Lists, and we've always been exceedingly good about folding talented newcomers in our arms and welcoming them to the project. No resume required.
Major components of GNOME -- things we now consider to be absolutely core to the project -- were begun by energetic individuals with the desire to create something cool. Look at glade, zvt, libxml, dia, GNOME vfs, libart, the desktop icons... all of these were created by people who had not previously contributed heavily to the project, but who are now considered to be among our heavy hitters.
The GNOME foundation must not stifle the interest of outsiders. An ill-conceived foundation could discourage outsider participation directly, by establishing rules which limit the ability of potential contributors to make their mark, or indirectly, by engendering an alienating sense of elitism. The stained glass of the cathedral creates a colorful spectacle for those inside, but from the outside, the building is just a hulking grey edifice, intimidating and impenetrable.
This principle has real, concrete meaning for the foundation: All discussions must be publicly viewable, any person must have the opportunity to contribute to the decision-making process, and every GNOME contributor must have the direct ability to influence the decisions which are made. The foundation must be democratic and friendly to those responsible for making GNOME what it is.
GNOME is Free Software
GNOME is part of the GNU project and supports the goals of the GNU project as defined by the Free Software Foundation. Free software licensing has always been a mainstay of GNOME, and we must ensure that this tradition continues. GNOME will include only Free software.
GNOME is a Meritocracy
Participation in the foundation is intended only for those individuals who are making contributions to the GNOME project and the software which makes up GNOME. A corporation, organization or individual should not be granted a place in the foundation unless its presence is justified by the merits of its contribution. Money cannot buy influence in the GNOME project: show us the code (or documentation, or translations, or leadership, or webmastering...).
In the past, being a part of the GNOME project has simply meant I wrote some code or I hang out on the mailing lists and build the thing from CVS frenetically every three hours. There is no reason to change this.
Build on What we Have (or: too much structure is poison)
In many ways, GNOME is a unique project. Comprised of dozens of autonomous modules, GNOME has not been subject to iron-fisted structural leadership. Furthermore, there are many pieces of software which are core to GNOME which stand with one foot in our camp and one foot outside. There really is no clear analogue to GNOME among most other free software projects. GNOME is bigger than almost every other effort in existence , more loosely organized, and possibly faster growing. Plus, GNOME sits on the frontier of the Linux application market, and is likely to continue to face growing pains as we try to meet the needs of ISVs (Independent Software Vendors) and others who are joining the movement.
It would be impossible to impose a high degree of bureaucratic structure onto a heretofore amorphous and somewhat anarchic community. And it shouldn't be done, anyway. Let's not attempt to imitate some of the groups which are smaller, or which had more structure in their beginnings. Any new structure which the GNOME foundation provides, if taken too far, will be artificial, ignored, or at worst: really really annoying to developers.
Furthermore, the foundation can have no real powers of enforcement; compliance with foundation decision should be an act of good-faith. If we've lost consensus to the point where we're regularly forcibly ejecting people from the foundation and co-opting their projects, we're sunk anyway.
Heavy bureaucracy is not in our DNA. And it shouldn't be. So let's not try to graft an administrative superstructure onto the community we've built. Furthermore, too high a level of administrative overhead will gum up the works to the point where the foundation will completely cease to function and become useless and vestigial.
Instead, the foundation will work with GNOME's strengths to make it better. A foundation that provides cohesion, vision, direction, and enough organization will be an incredible asset. A foundation that attempts to do this, but hides the iron fist under a velvet glove will not. Such an entity would likely be ignored, and words like fork would be thrown around.
The foundation should provide the project with just enough organization to accomplish its goals effectively. Some level of structure will be important for decision making, communication, and interacting with outside parties.
The foundation must act in the best interests of GNOME, independent of influence from outside organizations and corporations. No single entity should have the ability to direct GNOME to its own ends.
II. Tasks of the Foundation
Releasing GNOME, defining GNOME
The foundation bears the responsibility of coordinating each subsequent release of GNOME. For each release, this will include setting a schedule (whether or not it is overlooked), choosing the set of modules which are a part of the release, and preparing the appropriate marketing materials.
GNOME is a loose collection of independent projects. The foundation will determine the set of modules which fall under the GNOME umbrella. Most often, the foundation will endorse a project as a GNOME project simply by including it in a release. In some cases, however, a project that is not scheduled to be included in any particular release will be designated as a part of GNOME. In these ways, the foundation will be defining GNOME.
It should be apparent that these two tasks (defining GNOME and doing releases) are interrelated: most often, defining GNOME is just determining which modules are a part of any given release.
Public Image and Voice
The foundation will be the principal entity with the ability to make official public statements for GNOME, such as press releases. The foundation will also be responsible for maintaining the GNOME brand, and will have to determine the appropriate uses of the associated trademarks. The foundation will also be a hub for joint-marketing efforts by those organizations (corporate and non) which want to make GNOME-related announcements. Regional groups, created to promote GNOME in specific areas, may wish to make their own announcements about their efforts.
Corporate and Organizational Point of Contact
Companies and other organizations which want to communicate with the GNOME project should be able to use the foundation as their first point of contact. The foundation will be responsible for helping these organizations understand the GNOME project and become involved. The foundation will be vested with the power to represent GNOME in these conversations.
The foundation will also act as a forum for discussions between the organizations and companies which have an interest in GNOME. There will be a subgroup of the foundation which will include members from these organizations to make this possible.
As GNOME matures, it will become necessary to have an official set of standards which define GNOME compliance, for ISVs and for distributors. The foundation will be responsible for ratifying these standards, and authorizing the application of the GNOME trademark to them.
Direction and Vision
The GNOME foundation will provide a sense of leadership and cohesive direction to the GNOME project. The foundation will work to communicate a vision and set of goals for the future releases of GNOME. These should be communicated to the general public and to the project at large.
As GNOME evolves, other duties which are appropriate and necessary for the foundation to undertake will emerge. Before the board of directors of the foundation takes on any major new duties, it shall consult with the broader GNOME community.
Fund Receipt and Disbursement
Individuals and organizations that want to make a monetary contribution to the GNOME project will be able to do so by making a contribution to the GNOME foundation. The foundation will be in charge of disbursing these funds to the benefit of GNOME and, to the extent possible, in accordance with the wishes of the benefactor.
III. Basic Structure and Operation of the Foundation
The foundation will be global in scope, but incorporated in the United States. Affiliated foundations, created for the purpose of promoting GNOME, supporting developers or disbursement of funds, may be created in many countries or geographic areas.
The GNOME foundation is divided into three bodies: the Membership, the Board of Directors, and the Advisory Board.
The Membership will be a large body made up of people who have made a contribution to any module which is part of GNOME. The intent of the Membership is to provide the opportunity for all contributors to have a place and a voice in the GNOME foundation. The Membership will be open to all people who want to be a member and who have made any kind of contribution to any part of the GNOME project, with no membership fee, and no requirement of organizational or corporate affiliation.
The membership will have two responsibilities: electing the Board of Directors, and issuing popular referenda on any issue under the jurisdiction of the foundation, at any time (hopefully an infrequent event).
Board of Directors
The board is the primary decision-making body of the GNOME foundation. It is responsible for ratifying all decisions the GNOME foundation makes. These decisions can be overturned by referendum.
The board will be made up of a small, limited number of people, elected by the membership. New seats on the board may be made available as the project grows, subject to approval by the board or referendum of the membership.
No single organization or company will be allowed to control more than 40% of the board seats, regardless of election results. In the event that individuals affiliated with a corporation or organization hold more than 40% of the seats, affiliates from that corporation will be required to resign until 40% is no longer held. Individuals affiliated with a company or organization are people who are employees, officers, or members of the board of directors of an organization; or have a significant consulting relationship; or own at least 1% of the equity or debt, or derivatives thereof, of a company.
Notwithstanding the above, members of the board of directors shall act on behalf of all GNOME contributors in the best interest of the GNOME project. Although board members may be affiliated with companies that have an interest in the success of GNOME, they will not be considered representatives of companies with which they are affiliated. The GNOME Foundation Board of Advisors provides a forum for corporate representation.
The Advisory Board is made up of companies and organizations which have a desire to participate in advising the foundation about releases and other decisions. The Advisory Board will have no decision-making ability. The Advisory Board is a place for its members to have open discussions about their GNOME-related strategies. Membership in the forum is open to all companies and groups who are interested in contributing to the GNOME project, subject to the approval of the board of directors.
Note the following information about advisory board fees is outdated. Please see here for up-to-date information
Corporate members will pay a membership fee of $10,000 to join the Advisory Board. There is no membership fee for non-profit organizations or companies with fewer than 10 employees. Additionally, membership fees may be waived upon request by the board of directors. We value contributions of code and hackers resource much more than membership dues!
From time to time, ad-hoc committees may be formed, formally or informally, either by the board or the membership.
IV. Board Meetings, Voting, Referendum and Election
Board Meetings & Votes
Voting sessions of the board of directors will be formal, performed either in-person, telephonically, via e-mail, or on IRC. This can be cryptographically authenticated with a registry of public keys. A simple majority is required to approve any measure. Often, decisions will be reached by consensus.
Minutes shall be kept for all meetings of the board of directors. Votes on all topics will be recorded and attributed. All of these records will be archived and made publicly available immediately.
On certain occasions, conversations within the GNOME Foundation will be confidential. On those occasions, notes from meetings etc. may be edited to maintain confidentiality. We will work to keep confidential conversations down to a minimum.
A referendum can be issued by any member of the foundation.
To be accepted, a request for a referendum must be endorsed by 10% of the Membership. The maximum number of valid endorsements from Members affiliated (as defined above) with any one corporation or organization shall be 5%.
An electronic voting system will be established online, with members voting on a web page or by e-mail. In order for a referendum to pass, 1/3d of the total membership must participate, and 2/3ds of the participating members must approve. There will be a mailing list for all of the members, and all referenda must be announced to the list by the initiator before they are opened on the voting system. At least three days must pass before the referendum is closed, and no referendum can remain open for longer than fourteen days.
Elections and Board Size
Elections for the board of directors will be regularly held every year. Candidates for election must be members of the GNOME Foundation and shall nominate themselves. Members may vote for a number of candidates equal to the number of board slots that are available (in other words, if there are 10 slots on the board of directors, then each member may vote for up to 10 candidates).
The board shall be composed of those candidates who receive the highest number of votes.
The board of directors may be recalled by referendum, using the process described above. If the board of directors is recalled by referendum, new elections shall be held immediately.
Between elections, board vacancies or new board slots shall be filled by appointment by the board of directors.
The board of directors shall have at least 7 members and no more than 15 members. Prior to each election, the board of directors shall determine the number of board seats for the next year. The initial board of directors shall be composed of 11 members.
If more than half of the elected candidates are affiliated with one company (as defined above), elections returns shall be adjusted as follows. Individuals who are affiliated with the company which has an excess of representatives shall be removed based on the number of votes they received until such individuals no longer hold a majority of the seats on the board. Other candidates shall replace them, based on the number of votes they received. (In other words, if there are 10 board seats and 6 people from company X were elected, than the one person from that company who received the fewest number of votes will be replaced by the candidate who received the 11th highest number of votes).
V. Release Engineering / Defining GNOME
The board of directors will be responsible for authorizing the release of a new version of GNOME. The board will determine the set of modules which will make up the release.
Operational management of the release may be handled by a board-appointed committee or individual, made up of general Members and/or directors. The membership will be able to affect all these decisions primarily by participating in the discussions which lead up to them. In extreme cases, a referendum can be used.
One of the primary purposes of the GNOME foundation is to allow outsiders to contribute financially to the continued development of GNOME. These outsiders will make donations to the project, which will be disbursed by the board, under the advice of the membership.
VII. Bootstrapping the GNOME Foundation
The membership will be populated with all the consenting members of the GNOME-hackers mailing list, people holding CVS accounts, and anyone else who speaks out and wants to join when asked.
A committee shall be established by the current GNOME Steering Committee to manage the membership list, add new members and oversee the elections.
The first elections may be held prior to the incorporation of the Foundation but shall be held no later than 90 days from the incorporation of the GNOME Foundation. If the Foundation is incorporated prior to the first elections, the GNOME Steering Committee shall appoint on interim board of directors.
This document was put together from contributions by many people. The crucial first draft was written by Nat Friedman based on discussions he had with Joe Shaw. This document is maintained by the GNOME Foundation Board of directors.
Numerous patches were submitted by:
- Joe Shaw
- Linas Vepstas
- Maciej Stachowiak
- Havoc Pennington
- Daniel Veillard
- Telsa Gwynne
- Mike Prestner
- Jim Gettys
- Alan Cox
- Frank Hecker
- Brian Behlendorff
- Robert Humphreys
- Rusty Conover
- Miguel de Icaza
- Elliott Lee
And many others.