Feedback on DRAFT GNU Social Contract 1.0

This page contains all of the feedback received regarding the GNU Social Contract (GSC) following its announcement on 28 January 2020. On 10 February 2020, the GSC drafting working group met to collect the feedback and address concrete points. The group was composed of:

The feedback is included here, stripped of personally identifying information, as well as the corresponding resolutions and GSC text changes. Note that some of the feedback is verbatim.

(a) Name of the document

Please don't call the document a Social Contract. The first sentence says: "These are the core commitments of the GNU Project...". In other words: these are promises. A better title for the document would be:

The GNU Promises

Resolution

We sympathise and this was a point of discussion among the GSC drafting working group, but it is the option that got the most support. We hope that those GNU participants that prefer another name can look beyond the title to the content. The term Social Contract is also commonly used by other Free Software projects to describe their core values and mission.

(b) Pledge to whom?

The original text included the sentence, "These are the core commitments of the GNU Project to the broader free software community," to which there was the following feedback:

The first sentence continues with: "to the broader free software community". Well, why only to the free-software people? I would say: "to the world".

Resolution

Good point. We have updated the wording to 'These are the core commitments of the GNU Project, which creates and distributes a software system that respects users' freedoms.'

(c) GNU software

The second sentence says: "The GNU Project provides a software system..." The word "system" is both too vague and too all-encompassing; it sounds as if it wants to be a single, massive block of software. I would say that the GNU project "provides software packages...".

Resolution

Thank you for the feedback. The new wording is "The GNU Project creates and distributes a software system that respects users' freedoms". Note that we have decided to keep "system" in place as an aspirational statement.

(d) GNU and the broader free software community

With regards to the original text: "Free software extends beyond the GNU Project, which works with companion free software projects that develop key components of the GNU System. The GNU Project aims to extend the reach of free software to new fields."

The third section begins: "Free software extends beyond the GNU Project..." Huh? Vague. Does this want to say that there is also free software that is not part of the GNU project? If yes, then say so.

It continues: "which works with companion free software projects that develop key components of the GNU System". Oof... Who are those "companion free software projects"? How can such projects "that develop key components of the GNU System" not be part of the GNU project itself? In short: what does this want to say? Where is the promise here?

And then: "The GNU Project aims to extend the reach of free software to new fields." Huh? What new "fields"? Again: what is the promise here? Is it that we intend to assimilate everything?

Resolution

These are good points. After much discussion, the revised text is now: "The GNU Project works together with other free software projects to advance its goals, and aims to extend the reach of the project beyond the GNU System." Again, as this document states goals, we keep an aspirational component.

(e) On GNU welcoming contributions from everyone

The fourth section says: "The GNU Project wants to give everyone the opportunity of contributing to its efforts..." To me this sounds as if the GNU project will not put any hurdles and conditions in people's way before they can contribute. But in practice the GNU project requires that significant contributors sign a copyright assignment, and that translators sign a copyright disclaimer. I think that these two things make the GNU project quite unwelcoming to possible contributors. So, in my opinion, that sentence is rather untruthful.

The feedback also included some concerns about the “level of experience” and proposed rewording (replacing “It welcomes […]” by “It [gives] everyone the opportunity”):

The GNU Project commits to providing a harassment-free experience for all contributors. It wants to give everyone the opportunity of contributing to its efforts on any of the many tasks that require work. It welcomes all contributors, regardless of their gender, ethnicity, sexual orientation, level of experience, or any other personal characteristics.

Related comment:

"welcomes contributions" could be read as "accepts all contributions". Might be fixed by moving the important part first so it would read: "The GNU Project commits to providing a harassment-free experience for all contributors. It wants to give..."

Resolution

We agree that this point should lead with the main message. The intention is certainly not that all contributions must be accepted, but rather that GNU should take steps to make sure that no one should feel unwelcome in GNU based on personal characteristics such as gender. The new text is: 'The GNU Project commits to providing a harassment-free experience for all contributors. It wants to give everyone the opportunity of contributing to its efforts on any of the many tasks that require work. It welcomes all contributors, regardless of their gender, ethnicity, sexual orientation, level of experience, or any other personal characteristics.'

(f) External threats

With regards to the original text, "Besides upholding the Four Essential Freedoms, the GNU Project pays attention and responds to new threats to users' freedom as they arise," there is the following feedback:

the GNU Project pays attention and responds to

IMHO missing "to"

"pays attention to..."

optionally "pays attention to, and responds to, ..."

or "monitors and responds to"

Resolution

The new text is "Besides upholding the Four Essential Freedoms, the GNU Project pays attention to new threats to users' freedom, and responds to them as they arise."

(g) GSC signature required for contribution?

Just to clarify here, do you mean to say that you do not want to make endorsement of the GNU Social Contract a requirement for contributing to GNU Foo? If I misunderstood you, please feel free to correct me.

No you have it exactly right.

One point that might be helpful is to include a reference to this in the actual contract itself. Eg by adding something like this to the "welcomes contributions" section:

This contract is voluntary - there is no enforcement or oversight enacted and there is no requirement that any contributor should adhere to it. Motivations for contribution are left entirely up to the individual.

Resolution

We do not intend to make endorsing the document a condition for contribution to any package. The GSC simply defines the core values of the GNU Project. For brevity, we are choosing not to add a clarification to the document.

(h) Implications regarding non-GNU activity

Does adhering to this "social contract" mean that as a GNU developer I should not work at <state sponsored spying agency>, <proprietary company> or <privacy violating entity>.

Resolution

While we certainly do not think that you should violate anyone's privacy, the document simply describes what we do in GNU and when representing GNU and does not have any broader scope.

(i) A general meta-question regarding why the document is needed

The tone and content of the draft contract are not changed from existing practice. But give a better explanation of why a restatement of the GNU project's goals and standards is needed, and where it differs from the goals/standards in previous years.

Resolution

The goals and principles of the GNU Project should stand on their own and provide volunteers with a key document they can use to decide what actions they should be taking when faced with difficult decisions. The document helps create a common understanding among all volunteers and helps guide them through their interactions within the project and without. Existing documents are spread around and mix policies, rationales, and technical details. The goal of the GSC is to provide a short document that summarizes our core commitments, with the goal of building a shared understanding of our mission as part of the GNU Project.

(j) Welcoming all contributions even from those who don't endorse

Resolution

Accepted in point (g).