git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] Documentation/CommunityGuidelines

From
Michael Haggerty <mhagger@alum.mit.edu>
Date
Jun 11, 2013, 18:24 UTC
Message-ID
<51B76B4F.4030504@alum.mit.edu>
In-Reply-To
<7v38sod1kn.fsf@alter.siamese.dyndns.org>
On 06/11/2013 07:00 PM, Junio C Hamano wrote:
Show 15 quoted lines
> Michael Haggerty <mhagger@alum.mit.edu> writes:
> [...]
>> * When reviewing other peoples' code, be tactful and constructive.  Set
>> high expectations, but do what you can to help the submitter achieve
>> them.  Don't demand changes based only on your personal preferences.
>> Don't let the perfect be the enemy of the good.
> 
> I think this is 30% aimed at me (as I think I do about that much of
> the reviews around here).  I fully agree with most of them, but the
> last sentence is a bit too fuzzy to be a practically useful
> guideline.  Somebody's bare minimum is somebody else's perfection.
> An unqualified "perfect is the enemy of good" is often incorrectly
> used to justify "It works for me." and "There already are other
> codepaths that do it in the same wrong way.", both of which make
> things _worse_ for the long term project health.

I agree that the last line is fuzzy. And I don't think that I've observed any cases where I thought that reviewers were being too strict, so in a way it's just trying to head off hypothetical future problems and to make sure that the balance between submitter and reviewer is not *entirely* one-sided. Given our (proper, I think) strong deference to reviewers, one could imagine a reviewer abusing his/her authority to obstruct reasonable changes by (for example) making demands that the submitter also fix tangentially-related things that are beyond the scope of the patch.

In my own projects I have a rough policy of "not worse than before", meaning that as long as a patch makes progress in at least one dimension, and doesn't make things worse in any other dimension, then it is acceptable. (Of course "worse" can include internal quality issues like copy-pasting code or even an increase in the amount of code disproportionate to its benefit.) A failure to make improvements in one area should not be a reason to block an improvement in another area, as long as nothing is made worse.

But I can't right now think of a succinct way to express what I have in mind.

Show 10 quoted lines
>> * It is not OK to use these guidelines as a stick with which to beat
>> supposed violators.  However, if you genuinely feel that another
>> community member is routinely behaving in ways that are detrimental to
>> the community, it might help to calmly express your concerns to that
>> person, preferably in a private email, and naming concrete and specific
>> incidents rather than broad generalizations.
> 
> I would think it is perfectly OK to say "The way you are refusing to
> listen to constructive comments is not how things work around here"
> by pointing at a set of guidelines.
I agree.
> Why do you think is it not OK?  The "beating" part?

I think it would be counterproductive for people to start saying things like "that is a violation of rule 3, section 2" *in everyday discussions*. This shouldn't be taken as a list of black-and-white laws, with allegations of small "infractions" used to shut down discussions. And on the other hand, if somebody shows a long history of acting contrary to the guidelines, and persists despite repeated requests to stop, I don't want the discussion to turn into a lawyerly analysis of the guidelines with point-by-point rebuttals and counter-rebuttals of whether this or that guideline was violated.

The guidelines should just describe the expected tone of the community in a way that the vast majority of participants can agree on, and any kind of actions to enforce the guidelines should only be taken when an overwhelming majority of the community

I think the CommunityGuidelines should have three main uses:
1. An artifact documenting the community consensus about what kinds of
behaviors are encouraged and what kinds are considered unacceptable.  It
should only be accepted, and it only has value, if there is a strong
consensus in favor of it.
2. A resource to help new community members get up to speed on our
practices and expectations.
3. As a point of reference in the direst meltdowns, such as IMO we are
having right now.
Michael
-- 
Michael Haggerty
mhagger@alum.mit.edu
http://softwareswirl.blogspot.com/
Previous: Junio C HamanoNext: John Keeping
Message 37 of 63 in “Documentation/CommunityGuidelines”
  1. Documentation/CommunityGuidelinesRamkumar Ramachandra, Jun 10, 2013
  2. Célestin MatteJun 10, 2013
  3. Matthieu MoyJun 10, 2013
  4. Robin H. JohnsonJun 10, 2013
  5. Junio C HamanoJun 10, 2013
  6. Jonathan NiederJun 10, 2013
  7. Ramkumar RamachandraJun 10, 2013
  8. A Large Angry SCMJun 10, 2013
  9. Ramkumar RamachandraJun 10, 2013
  10. A Large Angry SCMJun 10, 2013
  11. Felipe ContrerasJun 11, 2013
  12. Ramkumar RamachandraJun 11, 2013
  13. Michael HaggertyJun 11, 2013
  14. Felipe ContrerasJun 11, 2013
  15. Ramkumar RamachandraJun 11, 2013
  16. Felipe ContrerasJun 11, 2013
  17. Thomas RastJun 11, 2013
  18. Ramkumar RamachandraJun 11, 2013
  19. Michael HaggertyJun 11, 2013
  20. Felipe ContrerasJun 11, 2013
  21. Ramkumar RamachandraJun 11, 2013
  22. Michael HaggertyJun 11, 2013
  23. Ramkumar RamachandraJun 11, 2013
  24. Junio C HamanoJun 11, 2013
  25. Felipe ContrerasJun 11, 2013
  26. Felipe ContrerasJun 11, 2013
  27. Brandon CaseyJun 11, 2013
  28. Theodore Ts'oJun 12, 2013
  29. Ramkumar RamachandraJun 12, 2013
  30. Felipe ContrerasJun 12, 2013
  31. Felipe ContrerasJun 11, 2013
  32. Thomas RastJun 11, 2013
  33. Felipe ContrerasJun 11, 2013
  34. Thomas RastJun 11, 2013
  35. Felipe ContrerasJun 11, 2013
  36. Junio C HamanoJun 11, 2013
  37. Michael HaggertyJun 11, 2013
  38. John KeepingJun 11, 2013
  39. Ramkumar RamachandraJun 11, 2013
  40. John KeepingJun 11, 2013
  41. Ramkumar RamachandraJun 12, 2013
  42. John KeepingJun 12, 2013
  43. Michael HaggertyJun 11, 2013
  44. John KeepingJun 11, 2013
  45. Philip OakleyJun 11, 2013
  46. John SzakmeisterJun 12, 2013
  47. Jakub NarebskiJun 12, 2013
  48. Philip OakleyJun 12, 2013
  49. Felipe ContrerasJun 11, 2013
  50. Jeff KingJun 11, 2013
  51. Junio C HamanoJun 11, 2013
  52. Felipe ContrerasJun 11, 2013
  53. Theodore Ts'oJun 12, 2013
  54. Felipe ContrerasJun 12, 2013
  55. Ramkumar RamachandraJun 12, 2013
  56. Junio C HamanoJun 12, 2013
  57. Michael HaggertyJun 13, 2013
  58. Junio C HamanoJun 13, 2013
  59. Felipe ContrerasJun 11, 2013
  60. Ramkumar RamachandraJun 11, 2013
  61. Thomas AdamJun 13, 2013
  62. Felipe ContrerasJun 13, 2013
  63. Christian CouderJun 14, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.