This is a first draft, compiled by Christian Stimming based on the GNOME Foundation charter http://foundation.gnome.org/about/charter/
Draft Charter for an informal GnuCash Foundation
Draft 0.01 (May 27, 2011)
This document describes the purpose, basic structure and operational policies of a proposed GnuCash foundation. Although certain issues are not addressed fully, the core functions of the foundation are defined and procedures for them are described.
Preface: Why a GnuCash Foundation?
Cstim wrote: My main request is to find a better decision and information structure. Going into the direction of a non-profit will immediately give this, because any non-profit has a charter which states exactly those rules. Manging a bank account does not necessarily have to be linked to the existence of a non- profit organization; however, we might as well see that even here we don't have to reinvent the wheel and instead accept that those questions are handled well by having a non-profit with a charter and certain appointed posts. But this is just one out of several potential ways for the future.
Warlord replied: I agree with this. I think we definitely should have a better decision structure. As for information, I agree that I've been lax about taking the donation information and publishing it. I'd certainly be willing to publish more information more often if we decided that was desired, and if someone (preferably not me) came up with the format and location for the desired information.
The GnuCash Foundation will work to further the goal of the GnuCash project: ### to provide easy to use, yet powerful and flexible tool to track bank accounts, stocks, income and expenses for personal and small business accounting. ###
To achieve this goal, the Foundation will ### coordinate releases of GnuCash and determine which projects are part of GnuCash. The Foundation will act as an official voice for the GnuCash project, providing a means of communication with the press and with commercial and noncommercial organizations. The foundation may produce educational materials and documentation to help the public learn about GnuCash software. In addition, it may sponsor GnuCash-related technical conferences, and represent GnuCash at relevant conferences sponsored by others, help create technical standards for the project and promote the use and development of GnuCash software.
I. Principles of the GnuCash Foundation
Open and Public
In almost every sense of the word, GnuCash is an open project. This is one of our greatest strengths, has always been, and should be in the future as well. ###
The foundation should not be exclusionary or elitist. Every GnuCash contributor, however small his or her contribution, must have the opportunity to participate in determining the direction and actions of the project.
... ### TBD
GnuCash is Free Software
GnuCash 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 GnuCash, and we must ensure that this tradition continues. GnuCash will include only Free software.
GnuCash is a Meritocracy
Participation in the foundation is intended only for those individuals who are making contributions to the GnuCash project and the software which makes up GnuCash. 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 GnuCash project: show us the code (or documentation, or translations, or leadership, or webmastering...).
In the past, being a part of the GnuCash project has simply meant "I wrote some code" or "I hang out on the mailing lists and build the thing from git frenetically every three hours." There is no reason to change this.
Build on What we Have (or: too much structure is poison)
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.
II. Tasks of the Foundation
Releasing GnuCash, defining GnuCash
The foundation bears the responsibility of coordinating each subsequent release of GnuCash. 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.
Public Image and Voice
The foundation will be the principal entity with the ability to make official public statements for GnuCash, such as press releases. The foundation will also be responsible for maintaining the "GnuCash 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 GnuCash-related announcements. Regional groups, created to promote GnuCash in specific areas, may wish to make their own announcements about their efforts.
As GnuCash matures, it will become necessary to have an official set of standards which define GnuCash compliance, for ISVs and for distributors. The foundation will be responsible for ratifying these standards, and authorizing the application of the GnuCash trademark to them.
Direction and Vision
The GnuCash foundation will provide a sense of leadership and cohesive direction to the GnuCash project. The foundation will work to communicate a vision and set of goals for the future releases of GnuCash. These should be communicated to the general public and to the project at large.
As GnuCash 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 GnuCash community.
Fund Receipt and Disbursement
Individuals and organizations that want to make a monetary contribution to the GnuCash project will be able to do so by making a contribution to the GnuCash foundation. The foundation will be in charge of disbursing these funds to the benefit of GnuCash 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 ### Germany, the United States, whatever ###. Affiliated foundations, created for the purpose of promoting GnuCash, supporting developers or disbursement of funds, may be created in many countries or geographic areas.
The GnuCash foundation is divided into two bodies: the Membership, and the Board of ### Directors. (I wonder how this should be called: "Board", "Committee", "Board of Directors", "Board of Advisors", "Board of fuzzy little thingies", or whatever. In German I would just have said "Board")
(### No need for an additional 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 GnuCash. The intent of the Membership is to provide the opportunity for all contributors to have a place and a voice in the GnuCash 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 GnuCash 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).
To become a member, ### (some simple process should be described)
To give up membership, ### (some simple process should be described, and also long periods of inactivity on the order of 2-3 years should automatically cease membership)
Board of ###Directors
The board is the primary decision-making body of the GnuCash foundation. It is responsible for ratifying all decisions the GnuCash 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. (See below for the number of seats.)
Members of the board of directors shall act on behalf of all GnuCash contributors in the best interest of the GnuCash project. Although board members may be affiliated with companies that have an interest in the success of GnuCash, they will not be considered representatives of companies with which they are affiliated.
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 GnuCash 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.
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 GnuCash 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 ### (maybe 2, or other number here) members and no more than ### (maybe 5, or other number here) 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 ### members.
V. Release Engineering / Defining GnuCash
The board of directors will be responsible for authorizing the release of a new version of GnuCash. 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 GnuCash foundation is to allow outsiders to contribute financially to the continued development of GnuCash. These outsiders will make donations to the project, which will be disbursed by the board, under the advice of the membership.
VII. Bootstrapping the GnuCash Foundation
The membership will be populated with ### all the consenting members of the gnucash-devel mailing list, people holding SVN accounts, and anyone else who speaks out and wants to join when asked.
A committee shall be established by ### the current gnucash core group to manage the membership list, add new members and oversee the first elections.
This document was put together from contributions by many people. The crucial first draft was written by Christian Stimming based on the GNOME Foundation charter http://foundation.gnome.org/about/charter/ . This document is maintained by the GnuCash Foundation Board of directors.
Numerous patches were submitted by: