Hi Matthew,
On Thu Apr 20, 2023 at 17:20 -0400, Matthew Miller wrote
As it is, devel list is too much for many people to follow — people
we’d like to have around.
I disagree. I find mailing lists much easier to deal with. They're all
in one place, they're synced between my devices, and I can use whatever
client I like. I can start writing a message on my phone, save it as a
draft, and send it from my laptop. I can filter messages to my heart's
content. Everything is threaded and I can choose to ignore the threads
I'm uninterested in.
It's easy to skim the list and I can do so on my terms, as opposed to
being pushed towards a _centralized_, single point of failure,
javascript-heavy, bulky web frontend. I understand that Discourse has
functionality for interacting via email, but that's fundamentally not
its purpose, and it's apparent that email users are second class
citizens. With mailing lists, most messages are sent as plain text email
that displays properly in my TUI email client, and they're easy to quote
and splice to reply to the parts in which I'm interested. I can both
create new threads AND reply to existing ones.
It covers many different things at once, yet
also drives us towards more scattered communications.
Our infamous
mega-threads are not really effective for getting to community
consensus, and tend to bring out the worst in us.
How is this inherent to email? IMO, this correlates two unrelated
things. I don't think it's fair to blame people's poor interpersonal
communication on email.
I know this is a big change, but, hear me out…
I'll do my best, but I'll warn that I'm resistant change and am content
with current mailing lists. If anything, I think we need to provide
Fedora Infra more resources to properly maintain and keep up to date our
Mailman instance.
We’re missing people
--------------------
A Mastodon post from long-time Fedora contributor Major Hayden got me
thinking:
> How do people make so much time available for mailing list
> discourse?
>
> Once I ensure my team has the technical guidance they need
> and I work through the tasks of work that I owe other
> people, I take a look at the mailing list and say: "Oh my
> gosh, what the heck happened here?" Then the discussion
> goes further off the rails while I'm typing out a reply and
> my reply is no longer relevant.
>
> —
https://tootchute.com/@major/109666036733834421
Again, I acknowledge this problem, but you've failed to demonstrate how
this is inherent to mailing lists.
And… some people aren’t here because — in
contrast with our “Friends” foundation, it isn’t always a nice place to
be (and mailing lists don’t provide many tools for moderation, except
the big hammer of outright bans).
Well, you can delete messages from the ML archives in the same way you can
delete forum comments, but people who sign up for notifications will
still receive a copy.
And that’s just one example. Take a look back at any mega-thread,
and
you’ll find similar — and worse. When things get heated, the only way
to intervene is by adding more. There are often long subthreads of two
people going back and forth on tangents. Then, other conversation
branches duplicate that, or refer across. Classical email tools don’t
actually handle this kind of thing very well at all. In my experience,
it only really works if you keep up with the conversation in almost
real time, which has its own problems even when that’s possible.
My email client has much better support for threading than Discourse
does. I can easily toggle between threaded mode and flattened latest
first mode. This is easier to navigate than Discourse's flat list. Email
allows you to chose the best experience for you from a multitude of
clients.
We’re scattered in actual practice
----------------------------------
Devel list may be the center, but we have _hundreds_ of Fedora mailing
lists. A dozen or so are reasonably active (Test, Legal, ARM…) but most
are inactive or dead. Some are just meeting reminders over and over —
for meetings that aren’t even active anymore. It’s easy to make but
hard to _unmake_ a mailing list.
Yeah, I think the mailing lists could use more organization and cleanup.
For lists that are active, the split is confusing — when should
something be on the packaging list rather than devel? What happens when
something is related to both Cloud and Server, or Workstation and KDE?
One can post to both lists, but if someone replies and isn’t subscribed
to both, the conversation gets split.
Yeah, this can be confusing. I think the solution is organization and
cleanup, not completely shutting down mailing lists.
With “devel” as the main list, conversations about marketing,
design,
events, and so on don’t really have a central place. (The Mindshare
list never really caught on.) That makes these important activities
feel even more disconnected and secondary in status — and they
shouldn’t be.
Many groups have actually moved away from lists to using tickets for
team conversations — both those non-engineering functions
and development. Design Team has a mailing list, but mostly for
announcements: the work happens in tickets. Workstation largely uses
their Pagure tracker. And CoreOS conversations happen almost entirely
in tickets on Github.
Gitlab being added to the mix definitely hasn't helped with the
fragmentation. I think teams should be encouraged to standardize on
tooling, but at the end of the day, teams will decide what works best
for them. Freedom is one of the Four Foundations.
Tickets are made for tracking specific, actionable tasks, and that
kind
of tracking is part of why teams use them over mailing lists — but
Fedora teams use them for open development conversations too.
I think having discussion split out from structured planning/ticket
tracking is a good thing. The former is well suited for a mailing list
or forum and the latter for issue trackers.
I think that’s largely a symptom of mailing lists not being enough
for
what we need. The trackers have media support, editing for typos or
updates, reactions for simple agreement, tagging people, and granular
subscriptions. They are effectively “off-label use” mini-forums that
teams can quietly move to using without the sort of conversation I
expect this message to generate.
Yes, those features are useful for some teams and are well suited for
certain types of discussion, but I think the well established devel list
has served us well and meets its purpose.
The set of remaining regular participants on this list is naturally
biased towards those for whom it is working just fine. But, core Fedora
development discussion can’t be limited to that ever-shrinking group.
Consider who isn’t here. The problems are real, and the trend isn’t in
a good direction.
What evidence shows that the group is ever shrinking? I often see Self
Introduction posts and new people interacting with project. I suppose
that whether they continue interacting afterwards is another question.
Devel List is too many different things!
----------------------------------------
We use it for Change discussion (resulting in those
not-actually-so-great big threads).
We use it for introductions and onboarding — we’re usually pretty good
at that, actually (but it adds to the overall load of following the
list). We’re not very consistent, though.
We discuss packaging: guidelines, help on different topics,
coordination on specific work. There’s unclear overlap with the
packaging list, though, which is a bit confusing.
Yeah, I wonder if it makes sense to sunset the packaging list in favor
of devel.
We talk about higher-level Fedora OS development topics that don’t
fit
anywhere else. For example, this on installer environment size:
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.o...
Sometimes, these are FESCo topics (which FESCo heroically struggles to
keep here rather than on Pagure tickets…).
This became a problem for the incredibly controversial Frame Pointers
change, but I'm not sure that's a general theme
Sometimes, people talk about a particular interest in the hopes of
forming a Special Interest Group. Often that does result in a new SIG
launching — sometimes with a brand-new mailing list which then ends up
getting only a few posts ( and a whole lot of spam years later). But
this really suffers from the survivorship problem: many people who
might be interested will never notice.
We have release process announcements — mostly to devel-announce, but
then occasionally replies and discussion here. Blocker bugs and other
test-list and QA topics are cross-posted, as part of the release cycle.
And then there are a lot of robo-messages: reports, reminders, etc.
These are really valuable to a few people, but add a lot more to wade
through for everyone else trying to keep up.
There are certainly others, as well.
In short… there probably shouldn’t just be one thing. But, the
cross-posting problem makes it hard to split up as a mailing list.
I think the devel list makes sense as a catch all, general development
discussion place. People are free to filter out the threads that aren't
relevant to them. Specific tasks that develop out of those discussions
can be delegated to the respective SIG/WG/committee task tracker. The
unified devel list allows cross-SIG communication and high level
planning that I think we'd miss with fractured forum categories.
Enter Discourse
---------------
If you’ve talked with me about anything related to any of this in the
past ten years, you probably already know that I like Discourse. It’s
good software made by cool people. And, it’s entirely open source, with
a SaaS business model but with real, usable releases. (No open core, no
“open source theoretically but good luck”.)
I definitely appreciate that it's fully open source. This is more than I
can say about other tools we're trying to move towards such as Gitlab.
And, we have it in production in Fedora already, at
https://discussion.fedoraproject.org, with categories for
announcements, user help, project discussion, and social
conversation — as well as special categories for dedicated workflows.
Thank you for the work you put in to organizing and setting this up.
In Project Discussion, each different Fedora team can have its own
tag,
and you can subscribe to those that you’re interested in. Cross-posting
is easy: tag a post with multiple teams.
Are there measures in place to avoid tag sprawl that makes it difficult
to keep an eye on everything and subscribe?
Topics can be renamed, if needed, or split out into
side-conversations.
The long tangents from these conversations can actually be interesting
on their own without distracting from the main topic. Moderation tools
allow us to handle posts that are outside of expected Fedora
contributor behavior, with varying levels of action as appropriate.
That is nice side effect of having a centralized platform. Of course, it
can't solve problematic behavior, but it's nice to know that there's
mitigation in place. It's just a question of whether these tools are
used effectively and fairly and not excessively. I think I trust y'all
to do that :). Still, I'd hope it's possible to improve moderation and
encourage healthy dialogue without kludges.
You can use markdown formatting, including images (with easy
addition
of alt text for people for whom images are a barrier). You can edit
your posts to fix typos or correct mistakes. There are polls and lots
of other useful features.
These are definitely nice to have. I will note that these are
incompatible with plain text email notifications which many here
appreciate.
And, you can interact with it all by email. That interface isn’t
perfect, but it’s way better than any other forum software I’ve seen.
(I’ve written a guide:
https://discussion.fedoraproject.org/t/25960)
At the same time, your individual email address is hidden, so it won’t
be a spam magnet (or a target for off-list harassment, a problem we
unfortunately have with devel list).
Yeah, I'm not sure the email interface is really comparable to the ML
experience. You can't post directly via email without the whole
moderation queue thing mentioned in your linked post. Email interaction
seems to be a second class citizen. I'm not sure what the point in
moving off the mailing list is if you keep suggesting ways that people
can make forum software behave more like the mailing list that we
already have.
That said, it is web-first software. (Or mobile, if that’s your
thing.)
That requires some adjustment, I know. I hope opening up a Fedora
Discussion tab – or keeping one open — becomes an easy habit.
I wouldn't like that much. The only tab I always have open is Matrix,
and I'd prefer not to have to have more always open browser tabs. I
already have an email client.
Not just Fedora
---------------
There’s a big trend towards Discourse in open source projects overall.
Python and Gnome have both migrated entirely from their mailing lists.
Ansible is working on it.
Ansible's mailing lists have been mostly announcements for a while. The
plan is to move discussions and announcements away from various Github
issue trackers and Github Discussions in various organizations into a
central place. Fedora's level of mailing list usage and participation is
significantly larger.
Plus, there’s Rust, Kubernetes, Nextcloud,
Flathub, Grafana, Home Assistant, KDE, and I’m sure many others.
I'd argue that this is a type of fragmentation.
Each has its own site that users have to separately sign up for and follow.
Concrete proposal
-----------------
While I think it makes sense for new teams to consider adopting the
forums instead of mailing lists, I am not convinced that we should shut
down devel@ and alienate the _current_ devs who seem to favor the
current approach.
Thanks for listening,
Maxwell
--
Maxwell G (@gotmax23)
Pronouns: He/They