From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id cBK8B21ps2D7GgEAgWs5BA (envelope-from ) for ; Sun, 30 May 2021 12:31:09 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id 8MoZA21ps2BWRgAA1q6Kng (envelope-from ) for ; Sun, 30 May 2021 10:31:09 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 6506B2C5C4 for ; Sun, 30 May 2021 12:31:08 +0200 (CEST) Received: from localhost ([::1]:59378 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lnIio-0007V0-Oi for larch@yhetil.org; Sun, 30 May 2021 06:31:06 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54756) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lnIik-0007Uo-Ix for guix-patches@gnu.org; Sun, 30 May 2021 06:31:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:46902) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lnIik-0006Zg-Ae for guix-patches@gnu.org; Sun, 30 May 2021 06:31:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lnIik-0005rz-7Y for guix-patches@gnu.org; Sun, 30 May 2021 06:31:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#48696] [PATCH 2/3] doc: Add "Addressing Mistakes" section. Resent-From: Christopher Baines Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 30 May 2021 10:31:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 48696 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 48696@debbugs.gnu.org Received: via spool by 48696-submit@debbugs.gnu.org id=B48696.162237060822483 (code B ref 48696); Sun, 30 May 2021 10:31:02 +0000 Received: (at 48696) by debbugs.gnu.org; 30 May 2021 10:30:08 +0000 Received: from localhost ([127.0.0.1]:58443 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lnIhi-0005oh-CN for submit@debbugs.gnu.org; Sun, 30 May 2021 06:30:07 -0400 Received: from mira.cbaines.net ([212.71.252.8]:54842) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lnIhg-0005oU-0G for 48696@debbugs.gnu.org; Sun, 30 May 2021 06:29:57 -0400 Received: from localhost (unknown [IPv6:2a02:8010:68c1:0:8ac0:b4c7:f5c8:7caa]) by mira.cbaines.net (Postfix) with ESMTPSA id C09CD27BC78; Sun, 30 May 2021 11:29:54 +0100 (BST) Received: from capella (localhost [127.0.0.1]) by localhost (OpenSMTPD) with ESMTP id 34b32d13; Sun, 30 May 2021 10:29:54 +0000 (UTC) References: <20210527123554.4267-1-ludo@gnu.org> <20210527123554.4267-2-ludo@gnu.org> <87y2c0f0i4.fsf@cbaines.net> <87eedpet69.fsf@gnu.org> User-agent: mu4e 1.4.15; emacs 27.2 From: Christopher Baines In-reply-to: <87eedpet69.fsf@gnu.org> Date: Sun, 30 May 2021 11:29:51 +0100 Message-ID: <87k0ngfra8.fsf@cbaines.net> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1622370668; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:resent-cc:resent-from:resent-sender: resent-message-id:in-reply-to:in-reply-to:references:references: list-id:list-help:list-unsubscribe:list-subscribe:list-post; bh=UFqtM0fZxtAk8lx5LcACMjfd/hDV4LaB/fKx6fL4Fvc=; b=XOUuQCzle0kJDoy9/NIl4DTmoyk22trSz1AwhDm6sTNfZfFhxF83kWMh6OPzjyfgKKaKc1 LGDETkSdQEQHtXW29toaYSrcjiDn/cPuMr2RTui5AJr2xSXc4YKu4qAC/MUgctdfoPztxb qozpfng4qoRKgyytvBuf8Gp5y9a+hsJ9Oz4vlgZAFsqHlVJeYHAGIDYY10slrUYBHB4Y0O xT2WFOZ2PjbUYTrOFVqCo0t4cJOL5jATSPE7gfyXdiVFnDMQejodHZAwqYAYWfg2oVOyYL Q3Uie9qtkevE5vOu7Ms5yOlxX0zPaj7gu/JQHUnX5HuIaAv6lzf+eaNpAwD0oQ== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1622370668; a=rsa-sha256; cv=none; b=jeNUksfyCy0wq2FaHD81yKVVR0j6pae2Wzgd152o2B/BWT7nAjMVzkz8PrPV4P+zdcZlre 2qJqn647bWF0MwAJ6qGJKqiqszWbxgX2y5GpGlqsMX6ZrVaR4A9g0JlO2gSuOsGmkLIR5M tQKyr5ba/vuZUIHjEHLxwxKnsUlc430es90WOyvhX96NOJO63TUSxtK441hmvTMV6808mx hQiatZOk83/A535A0aWPmppijvofuEbjVhGbfFXXlce83ZWB02jFLqFiYYv4gjq/T7f3c1 iF25/a9rOlNgb+y+vXazbIHMb0Z5PouSASZ1I1xPtcb/ZNx5lBUdHEedh9EZBw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Spam-Score: -4.53 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Queue-Id: 6506B2C5C4 X-Spam-Score: -4.53 X-Migadu-Scanner: scn0.migadu.com X-TUID: JfeY+mEQs55e --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Ludovic Court=C3=A8s writes: > Hi Chris, > > Christopher Baines skribis: > >> Ludovic Court=C3=A8s writes: > > [...] > >>> +The Guix project values friendly cooperation and a constant effort to >>> +focus on the way forward when issues arise. Committers should lead by >>> +example, notably as a way to encourage contributors and contributors to >>> +be. Blame as well as defensiveness do not have their place in Guix wh= en >>> +addressing genuine mistakes. >> >> I too would like to see less blame, but one factor is how things are >> framed and the language used. > > Point taken! > >> On the language here, "mistake" is a word I would generally avoid if the >> aim is avoid blaming someone, since mistakes are made by a person or set >> of people. I'd prefer a term like "problem", since I don't perceieve >> that as directly linked to a person or set of people. >> >> On the bit about the "person who pushed the faulty commits" (so, person >> to blame...) I'd much prefer an emphisis on group responsibility to >> mitigate the impact of problems quickly, and understand the factors that >> led to that problems in the first place. That avoids assigning blame, >> rather than the process pushing responsibility to the person to blame >> ("person who pushed the faulty commit(s)"). > > I get what you say and very much like the idea of focusing on group > responsibility. > > There=E2=80=99s blame, and there=E2=80=99s accountability. I see group r= esponsibility > in setting up processes and carrying out proper peer review to avoid > problems. I see accountability when it comes to commits actually > pushed=E2=80=94in the end, it=E2=80=99s one person running =E2=80=98git p= ush=E2=80=99. In my view, > =E2=80=9Cmistake=E2=80=9D can be a way to name a =E2=80=9Cproblem=E2=80= =9D that someone created and is > accountable for (Jelle wrote a nice message on this topic a while back). > This is getting a bit philosophical though, and I=E2=80=99m not sure my > understanding of English is good enough to go any further. :-) I guess part of what I'm getting at here is using language and the perspective to try and delay that inference about individual accountability, until the discussion around a problem has reached a clear conclusion about what happened. In doing so, opportunity is left open to actually consider the full situation, rather than immediately narrowing it down to what a particular individual or group did or didn't do. > I think you have a point though. Could you propose different wording > for this section? > > (My goal for this section was to (1) spell out circumstances that may > lead to reverts, (2) explain the implications of committer > accountability, and (3) define our community standards in terms of > focusing on addressing issues and not on blaming individuals.) What I would like to see is more like this: Problems happen, while minimising there occurrence is important, it's also important to respond to problems in a useful way. There are two priorities, mitigating the impact and understanding what happened in order to reduce the chance of similar incidents in the future. The responsibility for both these things primarily lies with those involved, but like everything this is a group effort. When working to mitigate the impact of a problem, obviously the response is very much dependent on the situation. If it's possible to fix things that are broken, that's preferable. If that's infeasible, then promptly reverting changes to return to a working state is justified (as with any commit, note why the change is being made in the commit message). Once the problem has been dealt with to some extent, then it's the responsibility of those involved to make sure the situation is understood. If you are working to understand what happened, focus on gathering information and avoid assigning any blame. Do ask those involved to describe what has happened, don't ask them to explain the situation, even if you think they have something to explain, as this implicitly blames them, which is unhelpful. Accountability comes from a consensus about the problem, learning from it and improving processes so that it's less likely to reoccur. I'm not sure how much needs saying about reverts, but I did include something. For committer accountability, that's where I'm talking about the "responsibilities of those involved". I guess that's a little vague, but what I'm trying to do there is trying to capture the group of relevant people, for example, the person who proposed the breaking change, the committer who pushed it, and the other person that reverted it. In terms of trying to focus on addressing issues and not blaming individuals, I think just avoiding language that implicitly blames people would be a big step forward. Whether that's enough, I'm unsure. >> On this same thread, I'd like to see less blaming in the form of asking >> people to "explain". When there's a problem, and you ask someone to >> explain, I would interpret that as "I'm blaming you for this, please >> give your account of how the mistake was made", to which the person can >> either answer explaining the details as to why they are to blame, or can >> disagree with the implicit assertion that they are to blame. To avoid >> assigning blame, one can just ask someone to "describe" what happened, >> which I wouldn't interpret as being loaded with the same implicit >> assertion. > > I agree with what you write in general, though my understanding is that > you=E2=80=99re not referring to the text in this patch, right? Yeah, although I think something to this effect might be worth including. --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQKlBAEBCgCPFiEEPonu50WOcg2XVOCyXiijOwuE9XcFAmCzaR9fFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDNF ODlFRUU3NDU4RTcyMEQ5NzU0RTBCMjVFMjhBMzNCMEI4NEY1NzcRHG1haWxAY2Jh aW5lcy5uZXQACgkQXiijOwuE9XePgRAAhu0dTc80nhZdC4GoRjBSJ4ZYelF6SXcn hOaW1cALPeGzRCI1Pxw4ZYDHj+cYnvvR0GmkdlcKGjGjL19ILj4O8a0DH9gs3nd7 +94v4nT79uax+lvqUIXgark3s25m5TuRC4uNE6icQft5OoLmuzsYNq9cJPE+m4hU B0RmTbrQtCPMLySWbLweCMGjbAfQ7CQJbqORCaMGNeRPf9QsLHNUppw2cny9GW/D 64rRaYKjFJofLAhhpb9dHr1ZM40YHWVtSO+akIIeT4nNfbxoqohJypl7QHeeP7ds dBzyJ6t+08k5q4M6WJR5Frswb3SbvB9o9CGjXqxQ71Y8RGhND5X03xaXiLU2Hj95 Fq4P0LmAQP5TUxH4bzRn6Xv445FrBhR8u9NRyNXHAcRuRSQsE2Ck4YeocbWeOHkh UZvGwOOP5+PVxIyirMHSOuLPyxLQgIvvkwzVNOdSrawqb/8biFQPSEtFQjxNQD64 5In3PUPGjLkdOaI8X73TnFl/QvuVyE4eNDhhQ+9PAKsmzr6EQlSAtxoQ85VaLviC rVh0qogYwU7OdgZHFe6PfXxSQYAwH8LGaLWXJB/ZHFhfZ47MUBuBVHthXs9jfe68 MTtMTYfNeopg5XJbqs/kwUUp6ICnVyfUOm11QXFKksM3CGVs4XfzUtk8VEMPCRKU wvyuU8XcFJE= =8m4C -----END PGP SIGNATURE----- --=-=-=--