unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: xenodasein--- via "Emacs development discussions." <emacs-devel@gnu.org>
To: emacs-devel@gnu.org
Subject: Re: On Contributing To Emacs
Date: Tue, 28 Dec 2021 13:03:42 +0100 (CET)	[thread overview]
Message-ID: <Ms-vAhM--3-2@tutanota.de> (raw)

Following article is from the original author of package straight.el.
They have taken the time and explained the situation in detail.
Hopefully we will apply the same level of attention to detail and
introspection when evaluating their thoughts and experiences.



It's very easy to say "the best choice would have been to fix
package.el", and a lot harder to put in the years of work required
to actually do that. From a purely technical point of view, I stand
by my decision to create a separate project as I believe it was a
much more effective way of quickly bringing about positive change
in the ecosystem, even if the end result was to merge things back
together in the long run. Obviously I didn't make the decision for
"career advancement", I made it for what I perceived to be the best
interest of the community. Reasonable people can disagree about what
is best for the community.

However, the problems go much deeper than that and I will elaborate
in the rest of this email.

> xenodasein:
> The problem is what lead you to do that, and what can emacs-devel
> do to prevent same thing from happening in the future.

Now this is something worth talking about. Yes, indeed, my experiences
with emacs-devel and the Emacs core development ecosystem in general
have been mostly negative, and have discouraged me from contributing
more than I absolutely had to. And yes, indeed, this feeling was part
of what motivated me to advocate for installing the absolute minimum
patch into Emacs core that would allow me to get on with straight.el
development.

The idea that there is something culturally wrong with the core
development of Emacs is not new; see Open Letter to the Emacs
Maintainers from 2016 for one example. But let me give my own
impressions.

- Development velocity is glacial. With releases around once per year
and there being no easily accessible distribution mechanism for
development updates, high-velocity projects or projects that must adapt
to a changing ecosystem (straight.el satisfies both of those criteria)
simply do not have a place in Emacs core as it exists today.
- The tools that must be used for contributing to Emacs are extremely
antiquated, and difficult to use for most developers, especially newer
ones who form the majority of the potential contributor base. I agree
with the points in the open letter linked above.
- The CLA signing process is inexplicably slow and opaque. With most
other projects, you sign the CLA in two minutes through a web interface
and you are on your way. With Emacs, you have to send an email, which
may or may not eventually receive a reply with the appropriate form,
which you then have to manually send back, and the whole process often
takes months with no communication whatsoever from the FSF about the
reason for the holdup, especially for contributors outside the United
States. I can point to a number of documented examples of this (i.e.
contributors waiting multiple months with no reply from the FSF,
despite many follow-ups).
- The mailing list which is the sole form of communication for Emacs
core development feels exclusionary to me. There is a heavy backbone
of established culture and conventions around the mailing list, which
are to my knowledge not documented anywhere and instead exist as
unwritten rules of discourse. And that's on top of the fact that all
development takes place via a mailing list in the first place, which
is a foreign concept to almost every new developer getting into
open-source. I can't point to any specific practice that seems
problematic, but the fact remains that while I have felt welcomed and
included into many other open-source communities, I have never felt
this way about my contributions to Emacs core.

I know for a fact that I am not the only person who has felt excluded
from contributing to Emacs because of one or more of these reasons,
especially the last. However, when these issues, especially the last,
are brought up, the response usually goes like this:
1. Can you point to a specific example of what the problem is?
2. Well, in that particular example, here's why how we do things is
perfectly reasonable.
3. Did you consider doing things this other way instead?

I understand this is well-intentioned, and it is usually done in an
unfailingly polite manner. But it has usually come across to me as
gaslighting, and it's my opinion that the culture surrounding Emacs
core development, in aggregate, strongly discourages new contributors
from joining the community, especially if they are a member of a group
which is traditionally underrepresented in open-source.

So if you want the long answer about why I developed straight.el
outside of Emacs core? It's because I didn't feel I was up to the task
of fixing the cultural problems above, and I don't feel comfortable
contributing to Emacs, or suggesting to others that they do so, until
they are fixed. Just fixing package management was hard enough, thank
you.

I hope this is helpful in understanding why things developed as they did,

Radon




             reply	other threads:[~2021-12-28 12:03 UTC|newest]

Thread overview: 154+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-28 12:03 xenodasein--- via Emacs development discussions. [this message]
2021-12-28 12:13 ` On Contributing To Emacs Po Lu
2021-12-28 12:35   ` xenodasein--- via Emacs development discussions.
2021-12-28 19:02   ` Stefan Kangas
2021-12-29  0:37     ` Po Lu
2021-12-29 11:36       ` Philip Kaludercic
2021-12-29 11:41         ` Po Lu
2021-12-29 12:39           ` Óscar Fuentes
2021-12-29 13:04             ` Po Lu
2021-12-29 13:39               ` Óscar Fuentes
2021-12-29 13:46                 ` Po Lu
2021-12-29 14:06                   ` Óscar Fuentes
2021-12-29 20:19                     ` Stefan Kangas
2021-12-30  1:05                       ` Po Lu
2021-12-30 10:12                         ` Stefan Kangas
2021-12-30 10:27                           ` Po Lu
2021-12-29 15:16                   ` Dmitry Gutov
2021-12-29 15:45                     ` xenodasein--- via Emacs development discussions.
2021-12-29 17:11                       ` Eli Zaretskii
2021-12-30  1:09                     ` Po Lu
2021-12-30 13:50                       ` Dmitry Gutov
2021-12-30 14:00                         ` Po Lu
2021-12-30 14:50                           ` Dmitry Gutov
2021-12-31  0:45                             ` Po Lu
2021-12-31  0:49                               ` Dmitry Gutov
2021-12-31  1:12                                 ` Po Lu
2021-12-31  1:22                                   ` Dmitry Gutov
2022-01-01  7:07                               ` Sean Whitton
2022-01-01 17:38                                 ` Stefan Monnier
2022-01-01 19:01                                   ` Debian's use of debbugs (was Re: On Contributing To Emacs) Sean Whitton
2022-01-01 21:01                                     ` Stefan Monnier
2021-12-31  4:24                       ` On Contributing To Emacs Richard Stallman
2021-12-31  4:44                         ` Po Lu
2021-12-28 12:53 ` Philip Kaludercic
2021-12-28 12:57   ` xenodasein--- via Emacs development discussions.
2021-12-28 17:21 ` Stefan Monnier
2021-12-29  4:51 ` Richard Stallman
2021-12-29 14:41   ` Lars Ingebrigtsen
2021-12-30  0:15     ` Akira Kyle
2021-12-30  6:29       ` Eli Zaretskii
2021-12-30 10:01         ` xenodasein--- via Emacs development discussions.
2021-12-30 10:27         ` Stefan Kangas
2021-12-30 10:43           ` Po Lu
2021-12-30 11:20             ` Stefan Kangas
2021-12-30 11:35               ` Po Lu
2021-12-31  1:31                 ` Tim Cross
     [not found]                   ` <87ee5teaty.fsf@dick>
2021-12-31  3:33                     ` Tim Cross
2021-12-31  4:41                       ` Po Lu
2021-12-31  3:41                   ` Po Lu
2021-12-30 11:56               ` Eli Zaretskii
2021-12-31  4:25               ` Richard Stallman
2021-12-30 12:05             ` Óscar Fuentes
2021-12-30 11:51           ` Eli Zaretskii
2021-12-30 12:09             ` Stefan Kangas
2022-01-01 20:42           ` Rudolf Adamkovič
2022-01-02  7:01             ` Richard Stallman
2021-12-30 20:17         ` Akira Kyle
2021-12-30 21:01           ` Theodor Thornhill
2021-12-31  0:54             ` Po Lu
2021-12-31  7:37             ` Eli Zaretskii
2021-12-31  7:17           ` Eli Zaretskii
2022-01-01 20:52             ` Akira Kyle
2021-12-30 21:23       ` Richard Stallman
2021-12-30 23:40         ` Akira Kyle
2021-12-31  4:27           ` Richard Stallman
2021-12-31  4:27           ` Richard Stallman
2022-01-01 21:08             ` Akira Kyle
2022-01-02  7:02               ` Richard Stallman
2021-12-30  4:28     ` Richard Stallman
2021-12-29  5:27 ` Stefan Kangas
2021-12-29  6:05   ` Ihor Radchenko
2021-12-29  9:33     ` Stefan Kangas
2021-12-29 11:12       ` Ihor Radchenko
2021-12-29 12:24         ` Stefan Kangas
2021-12-29 12:58           ` Ihor Radchenko
2021-12-29 13:13       ` Eli Zaretskii
2021-12-29 13:59         ` Ihor Radchenko
2021-12-29 15:02           ` Eli Zaretskii
2021-12-29 15:12             ` Lars Ingebrigtsen
2021-12-29 17:00               ` Eli Zaretskii
2021-12-29 17:13                 ` Christopher Dimech
2021-12-29 20:19                 ` Stefan Kangas
2021-12-29 15:48             ` Ihor Radchenko
2021-12-29 17:17               ` Eli Zaretskii
2021-12-29 23:52   ` Tim Cross
2021-12-30  6:16     ` Eli Zaretskii
2021-12-30 10:11       ` xenodasein--- via Emacs development discussions.
2021-12-30 10:34         ` Stefan Kangas
2022-01-01 20:18           ` xenodasein--- via Emacs development discussions.
2022-01-01 20:50             ` Stefan Kangas
2022-01-02  6:29               ` Eli Zaretskii
  -- strict thread matches above, loose matches on Subject: below --
2021-12-27 17:55 No Wayman
2021-12-28  4:21 ` Richard Stallman
2021-12-26 18:46 Philip Kaludercic
2021-12-26 20:11 ` Stefan Kangas
2021-12-27  4:15 ` Richard Stallman
2021-12-27 11:02   ` Philip Kaludercic
2021-12-28  4:21     ` Richard Stallman
2021-12-28  8:41       ` Philip Kaludercic
2021-12-29  4:51         ` Richard Stallman
2021-12-29 10:18           ` Philip Kaludercic
2021-12-30  4:28             ` Richard Stallman
2021-12-30  8:17               ` Philip Kaludercic
2021-12-31  4:26                 ` Richard Stallman
2021-12-31 10:28                   ` Philip Kaludercic
2022-01-01  4:46                     ` Richard Stallman
2021-12-25 18:49 xenodasein--- via Emacs development discussions.
2021-12-25 19:03 ` Eli Zaretskii
2021-12-25 19:08   ` xenodasein--- via Emacs development discussions.
2021-12-25 19:12     ` Eli Zaretskii
2021-12-25 19:17       ` xenodasein--- via Emacs development discussions.
2021-12-25 19:28         ` Óscar Fuentes
2021-12-25 19:44           ` xenodasein--- via Emacs development discussions.
2021-12-25 19:57             ` Óscar Fuentes
2021-12-25 20:18     ` Philip Kaludercic
2021-12-25 20:26       ` xenodasein--- via Emacs development discussions.
2021-12-25 21:53         ` Stefan Kangas
2021-12-26  6:15           ` xenodasein--- via Emacs development discussions.
2021-12-27  4:14           ` Richard Stallman
2021-12-26  6:28         ` Po Lu
2021-12-26  6:56           ` Ihor Radchenko
2021-12-26  7:34             ` xenodasein--- via Emacs development discussions.
2021-12-27  4:14               ` Richard Stallman
2021-12-27  5:04                 ` Po Lu
2021-12-26  7:50             ` Eli Zaretskii
2021-12-26 20:40               ` Rudolf Adamkovič
2021-12-26 21:06                 ` Philip Kaludercic
2021-12-26 21:33                   ` Stefan Kangas
2021-12-27  4:15                     ` Richard Stallman
2021-12-27 10:27                       ` Philip Kaludercic
     [not found]                         ` <E1n23zG-0007jQ-Bz@fencepost.gnu.org>
     [not found]                           ` <878rw5kteb.fsf@posteo.net>
     [not found]                             ` <E1n2QwI-0008I7-Ny@fencepost.gnu.org>
2021-12-29 10:42                               ` Philip Kaludercic
2021-12-30  4:28                                 ` Richard Stallman
2021-12-27 14:13                 ` Eli Zaretskii
2021-12-27 14:27                   ` Thierry Volpiatto
2021-12-27 14:36                     ` Philip Kaludercic
2021-12-27 21:27                   ` Rudolf Adamkovič
2021-12-28  3:24                     ` Eli Zaretskii
2021-12-26 15:30             ` Stefan Monnier
2021-12-26 15:29           ` Stefan Monnier
2021-12-26 20:55             ` Richard Stallman
2021-12-26 21:11               ` xenodasein--- via Emacs development discussions.
2021-12-26 22:55                 ` Philip Kaludercic
2021-12-27  4:15                 ` Richard Stallman
2021-12-26 21:21               ` Philip Kaludercic
2021-12-27  4:15                 ` Richard Stallman
2021-12-27 10:24                   ` Philip Kaludercic
2021-12-27 20:16                     ` Stefan Monnier
2021-12-26 21:48               ` Stefan Kangas
2021-12-26 22:11                 ` Stefan Monnier
2021-12-26 22:15                   ` xenodasein--- via Emacs development discussions.
2021-12-27  4:15                 ` Richard Stallman
2021-12-27 10:43                   ` Philip Kaludercic
2021-12-28  4:21                     ` Richard Stallman
2021-12-28  5:05                       ` LdBeth

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Ms-vAhM--3-2@tutanota.de \
    --to=emacs-devel@gnu.org \
    --cc=xenodasein@tutanota.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).