Rules for design in Gnome

The design team IS welcome to:

* Produce designs and propose them to Gnome at large and the relevant

* Produce designs and implement them in experimental branches, which
  then are subject to maintainers' approval for merging into the

* Advise Gnome developers at large about design issues.

* Produce big-picture plans which are up for discussion by the people
  who will implement and use them.

* Teach people how to design, or point them to appropriate sources.

The design team IS NOT welcome to:

* Second-guess maintainers or well-intentioned contributors.

* Block development based on existing designs.

* Block development based on incomplete or planned designs.

* Veto development except in modules with branches that the design
  team maintains.

* Be dismissive of other people's own approaches to design.

* Dismiss or handwave requests for clarification about decisions taken.

* Assume that no one but them does design that is good for Gnome.

These rules are not specific to the design team - they are based on
the basic rules of civility which let us carry on a distributed,
non-hierarchical development project.


* We don't have a hierarchy in Gnome.  You don't get to say what other
  people may develop.  The release team is our final sanity check so
  that we don't ship non-working garbage.  If you are a module
  maintainer you get to set the rules within that module, and nowhere
  else, and other people can fork you as they please.

* We require accountability and reason.  If you are going to advise
  people, back up your decisions with evidence and reasoning.

* Every decision is up for review.  The state of the world changes,
  not everyone shares your assumptions, and matters which seem settled
  may need revision.

* The way cross-module features are implemented is by discussing
  proposals with and among the people who will be implementing things,
  not by mandating things through an effectively unquestionable source.

Thanks for your attention,


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