Draft of Proposal for the GNOME Foundation.

[ The stupid mailing list bounced my last mail since I sent it from
  the wrong address. ]

Hi everyone,

It seemed to me that it might be useful if someone were to write up a
summary of the discussions which have centered around the proposed
GNOME Foundation.  So I tried to do that, but then I kind of got
worked up.  This is the result of my calenture.

I hope that someone finds it helpful.  I put it on the web, too,
thanks to the <pre> tag:


I think it's bad that this stuff is getting discussed in private.  I
want to send my proposal to the gnome-hackers list, and maybe other
places too, to open up the discussion and see what everyone else
thinks.  Let me know how you feel about that idea.

Richard, I thought you might find this interesting.  Or are you
already on the foundation list?


		  Proposal for The GNOME Foundation
		       Draft One (13 July 2000)

Nat Friedman (nat@nat.org)



  Please note that this is the work of one person, and is therefore by
  no means the result  of any kind of  thing even hazily resembling  a

  It is an early, rough-hewn draft -- an attempt at synthesizing a lot
  of  the discussions that have  gone  on about  the GNOME  foundation
  lately.   Important details, and whole chunks  of things bigger than
  details, are definitely missing.  And there are fundamental flaws in
  what I talk about here that are easy to flame about.  By no means do
  I think this is a correct solution.  (Plan  to throw one away) But I
  do hope  that this will be a  starting point for some new, hopefully
  clearer conversations.


This document describes the  purpose, basic structure and  operational
policies of a proposed GNOME foundation.  It is intended to serve as a
straw-man proposal  and  a concrete   basis  for further   discussion.
Although certain issues are not addressed fully, the core functions of
the  foundation are  defined and procedures  for  them  are described.
Crawl before walking, and so on...

I. Goals of the GNOME Foundation

  In order  to sketch even a rough  outline of the foundation's layout
  and  operational procedures,  we must  first  agree  on the entity's
  raison d'etre -- why is it here, and what do we  want from it?  Once
  we  agree  (within epsilon)  on   our  objective, we just  have   to
  determine how to get there.
  Different people have different ideas  about what the foundation  is
  supposed to   be; for example,   is  it a  collection  of individual
  hackers  or  a consortium  of   corporations?  These differences are
  okay, and a lot of them can be  resolved, but we  have to talk about
  them out-loud.   Also, a clear expression  of our  common goals will
  make the foundation's job easier in the  future, when a tricky issue
  arises and the role of the foundation in handling it is not clear.
  I've  divided   the goals of   the  foundation into  two categories:
  principles and tasks.

  Principles are the cultural  and moral guideposts which are intended
  to help us  determine how the  foundation should be structured,  and
  how it should act.
  Tasks are the issues and decisions  the foundation will face: how to
  release new versions of GNOME, how to  disburse funds, how to manage
  corporate  involvement and joint  marketing, and  other duties.  The
  day-to-day humdrum of modern living.
  The tasks are the letter of the law; the  principles are the spirit.
  Well, that's   the intent, anyway.   I don't   presume to  speak for
  everyone, or to have any deep anthropological insight into The GNOME
  Community.  But I do think that a lot of this stuff is common sense.

  Principles of the Foundation

    These are the guidelines which I used  in determining the proposed
    structure    of the   foundation.    Hopefully they     will sound
    ludicrously obvious, which  would mean that we're  all on a common
    ground here.
    Open and Public

       In  almost every  sense  of the word  (except the OSF-corrupted
       tragic-ironic connotation), 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 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(TM)  projects out there.  Anyone
       can  become a contributor,   write  access to our  CVS  doesn't
       involve trial  by fire or  other masonic  rituals, we don't use
       ACLs,   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.

       Look at  how the  GNOME UI   group  was created: Miguel  mailed
       gnome-list and said "We need someone to lead this new project;"
       Jim Cape appeared out of the blue and  replied "I can do that,"
       and  click, clack, it was done.   The  GNOME UI group has since
       become   a significant  source   of  usability  ideas for   our
       developers.  We don't  want to live in  a world where we've put
       up barriers that make  it difficult for us  to capture the kind
       of spontaneous energy upon which this project has thrived.

       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.  We didn't get  here by way  of smoke-filled rooms
       and power hierarchies.  We got here because of people.

    GNOME is Free Software

       Free software  licensing has always been  a mainstay  of GNOME,
       and we must     ensure that this   tradition  continues.    The
       foundation must not allow any software module  to become a core
       GNOME  component unless  it  is licensed   under the GPL,  or a
       GPL-compatible license.  GNOME should strive  to be free, while
       still being friendly to ISVs and commercial developers.

    GNOME is a Meritocracy

       Participation   in the foundation should  only  be available to
       those people who  are  responsible for actual  contributions to
       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 (I count 75  megs of SRPMs), 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 and
       other carpetbaggers jumping onto the bandwagon.

       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 coopting 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, let's create a foundation that  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.  Think: Emperor Maximilian.

       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.

       This is perhaps the single  most compelling motivation for  the
       existence of the GNOME foundation.

  Tasks of the Foundation

    These tasks  are intended to clearly define  the specific  ways in
    which  the foundation will lead  and  direct the project.  This is
    especially important in GNOME, where leadership and management has
    largely occurred on an ad-hoc basis, coming  from whomever has had
    the energy and conviction to provide it.  GNOME is far-flung: most
    contributors operate  independently,   or under the direction   of
    their employers.  And  so a central, all-powerful foundation would
    not be   at  home here.    A  good, clear-cut elucidation   of the
    foundation's functions will confine its role appropriately.

    Most of these are  tasks that we can  probably all agree on; a few
    are here because they seem    to be natural extensions of    other

    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.  The foundation  will be able to endorse a
        project  as  a  GNOME project  simply  by including    it in a
        release.    In this way,    the  foundation will be  "defining

        It should be apparent that these two tasks (defining GNOME and
        doing releases) are  deeply  interrelated: defining GNOME   is
        just determining  which   modules are a   part of  any   given
        release.  You can't  coordinate a release without knowing what
        you're  releasing.  The set of  packages which comprises GNOME
        is defined at  every   release.  And so releasing    GNOME and
        defining GNOME are one and the same task.

    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
        writing a cheque to the GNOME foundation.  The foundation will
        be in charge of disbursing  these funds in accordance with the
        wishes of the benefactor, and to the benefit of GNOME.

        This is actually the   original reason discussions   about the
        foundation began.

    Public Image and Voice

       The foundation will be the sole 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    (which   will  need    to be
       registered).  The  foundation    will  also   be  a    hub  for
       joint-marketing efforts  by those  organizations (corporate and
       non) which want to make GNOME-related announcements.

    Corporate and Organizational Point of Contact

       Companies  and  non-corporate groups  which want to communicate
       with the GNOME project should be able to  use the foundation as
       a 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

       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.

    Standards Definition

       Eventually, 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 should provide a  sense of leadership and
       cohesive direction to the GNOME project.  The foundation should
       attempt 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.

       If the foundation isn't able to  do this, then it's basically a
       non-integrated adjunct to the project.

    It is   very likely   that there    are other  duties  which   are
    appropriate and necessary for the foundation  to undertake; if so,
    they should be mentioned explicitly, to avoid confusion later.

II. Basic Structure and Operation of the Foundation

  The foundation will be a  virtual global entity, represented for the
  purposes of funds  disbursement   in  many countries.  The     GNOME
  foundation is divided into three bodies: the General Membership, the
  Board of Directors,  and the Organizational  Forum  (Yeah, the names
  are a bit corny.  Suggestions welcome.).

  General Membership

    The General 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 General Membership is to provide the opportunity
    for all  contributors to have  a place  and  a voice in  the GNOME
    foundation.  The General 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 general   membership will have two  responsibilities: electing
    and deposing  members  of  the  Board of  Directors,  and  issuing
    popular  referenda   on any issue  under   the jurisdiction of the
    foundation, at any time (hopefully an infrequent event).

    The General 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.

  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, of course,  be
    overturned by referendum.

    The board  will be made up of  a small,  limited number of people,
    elected by the General Membership.  New seats on the board will be
    made  available as the project grows,   subject to approval of the
    board or referendum of the General Membership.

    Miguel will be the chairman and will preside  over all meetings of
    the  board, unless he  is declared legally  insane and  "fit to be
    tied" by the UN or the Pope.

    No  single  organization or  company  will  be allowed  to  have a
    majority of the  board seats, regardless  of election results.  In
    the  event that a corporation or  organization holds a majority of
    the seats,  directors from that   corporation will be  required to
    resign until a majority is no longer held.

  Organizational Forum

    The Organizational Forum is made up of companies and organizations
    which  have a desire   to participate  in advising the  foundation
    about   releases and other   decisions.   The Forum  will  have no
    decision-making ability whatsoever.  The Forum  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  have contributed to  the GNOME project, subject to the
    approval  of the board  of directors.  Debian and  the FSF will be
    given permanent positions in this body.

  From  time to  time, ad-hoc  committees will be  formed, formally or
  informally, either  by the board or   the General Membership.  These
  may be formed to  propose a release  schedule, a press release, or a
  standards specification.  The board will vote on the approval of any
  such measure.

IV. Board Voting, Referendum and Election -- Is this really going to

  Board Voting

    Voting sessions  of the  board    of directors will  be    formal,
    performed either in-person, telephonically, via  email, or on IRC.
    This can  be  cryptographically authenticated  with  a registry of
    public   keys.   A simple majority   is   required to  approve any

    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.


    A   referendum   can be   issued by    any member  of  the general
    membership.  An  electronic   voting system   will be  established
    online, with members voting on a web page or by email.  The voting
    system  will  maintain   a database  of   all  members   and their
    passwords/public keys.
    In order for a referendum  to pass, 1/3rd  of the total membership
    must  participate, and 2/3rds   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 seven  days.  [ These numbers are, of
    course, eminently debatable. ]

  Elections and Board Size

    Elections for the board of directors will  be regularly held every
    year.  Members will  run  as a slate,  to ensure  that the various
    parts of  the project have equal  representation on the board.  No
    slate may be  proposed which violates  any board constraints (such
    as majority control by a single corporation).

    The  General Membership   will periodically  vote  for  new  board
    members, when   one board member  resigns,  is dethroned or  a new
    board seat is allocated.

    Election of a board members and slates  will be executed just like
    voting on a referendum.

    The size of the board will scale with the number of modules in the
    project.  The ratio (or whether or not this makes sense at all) is
    an open question.
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   at  least 60 days  in
  advance of the  release date, subject  to unanimous  approval of the
  module maintainers.

  Operational management   of    the release  will   be handled   by a
  board-appointed committee or individual,  made up of general members
  and/or directors.  The General 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.

  If a new module is being included in a release, all its contributors
  have the option to become part of the General Membership.

VI. Funds

  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 advisement of the General
  Membership.  Because GNOME is a widely dispersed project, it will be
  important to  allow people to  specify a specific recipient  for the

  The board will direct the donor to send the money either directly to
  the recipient,  or  to     the appropriate local    legal   entities
  representing the foundation.

VII. Bootstrapping the GNOME Foundation

  The General 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

  The board of directors will be primed by the election  of a slate of
  initial members.  Anyone   may propose a   slate, so long  as it  is
  approved by at least 5 general members.

VIII. Future Work

  I have tried to design a system which will have just the right level
  of structure and  formality to give GNOME  the organization which it
  needs.  My thoughts are the result of reading the recent activity on
  the foundation list   a few times, and  a  bunch of  iterations on a
  whiteboard.  A lot  of the ideas come from  Joe Shaw, who has a  lot
  better knack for politics than I.

  In any case, there are a  lot of obvious  flaws and missing sections
  in the above description.  Here's a list of things to think about:

    1. Historically, decisions in GNOME  haven't  been  made.  They've
       just sort of happened.   Does  this foundation really  have any
       chance of doing  anything useful except issuing press releases?
       If it's going to be  useful, I think it's  pretty clear that it
       has to be a natural growth step from whatever "organization" we
       have now, and it has to be wide, wide open.

    2. How do we determine the size of  the board?  Does it make sense
       to expand this thing with    the project?  To some extent,   it
       does, since the  project  is going  to continue to  grow as the
       industry  does.  And  we don't have   a set of  totally neutral
       non-affiliated  people to  sit on  the board and  independently
       represent   several organizations/modules/companies (about  the
       companies thing, keep reading).  But  too many directors can be
       a problem too  (deeper hierarchy?).  Do we  put term limits in?

    3. Does this address the  needs of companies in this space, while
       keeping them sufficiently at  arms distance that they can't  be
       divisive and use the foundation as leverage  to their own ends?
       I tried to design something  which would.  Companies have  *no*
       official   voice   in   the    foundation,  and    *no*  direct
       decision-making ability.  But realistically, as Havoc has said,
       you  can't expect people not to  represent their companies when
       they  vote.  And  does the  Forum do  everything companies will
       want it to do?

    4. Can the general membership  voting system actually be  done?  I
       think the  software  is pretty  trivial.  But  will it be used?
       Does democracy work?  Are we going to get gerrymandered?

    5. How does standards  definition *really* work?  This is going to
       be really important some day, and  someone should be cogitating
       on it.

    6. The numbers -- can you plug in better ones?

    7. Can we  really  expect to use a  system of  non-enforcement and
       *still* maintain a legally defensible  trademark?  Ok, this  is
       getting marginal...

  Anyway, I  hope that this is at  least somewhat useful in generating
  some directed thought and discussion.

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]