Disclosure:
At some point in this article, I discuss The Rust Foundation. I have received a
$5000 grant from them in 2023 for making educational articles and videos about
Rust.
I have NOT signed any non-disclosure, non-disparagement, or any other sort of
agreement that would prevent me from saying exactly how I feel about their
track record.
Disclosure:
I was part of the RustConf program committee in 2022, but not in 2023. More on
that later.
Disclosure:
I am friendly with many people from the Rust project, due to my content
creation work in this area since 2019. I have reached several of them for
comment on this.
A bit of context
Recently, RustConf offered ThePhD (aka JeanHeyd
Meneide) the keynote speech, then on May 26,
suggested it be downgraded to a “regular talk”, despite the author’s extreme
clarity about the exploratory nature of the work being presented.
This is relevant, because some think the keynote should be “orthodox”
(representative of the official direction of the Rust project), even though
there’s precedent for “heteredox” keynotes being given in the past at RustConf
and other confs.
JeanHeyd then withdrew from RustConf
altogether, then
JT resigned over it and then
speculation ran wild!
Speculation? On the internet?!
Right??
For example, some people thought JeanHeyd would’ve been the first black keynote
speaker for RustConf.
And that, if the only justification for the take-back was “some people
expressed concerns” (who? and what were they?), it’s hard to blame observers
for tentatively connecting the dots, given JeanHeyd called out the lack of
diversity at RustConf
2020.
Because I was part of the same private chats as some Rust project members, I
had insider information about the whole thing, and eventually chose to quit
those private chats and
petition the people who actually were on the relevant teams for an
official response.
I didn’t name anyone involved, knowing that pressure was already applied
internally, and counting the hours until people stepped forward.
Predictably, I was met with frustration from folks who felt I was complicit in
the whole thing.
Why I sat on this for a few days
And before we take a look at the full timeline and where we’re at, let me take a
moment to explain myself: I’ve been on both sides of internet mobs before.
I’ve been the canceller, the cancellee (boy did I fuck up, several times), and
I’ve had my site DDoS’d for the
lulz. I’ve been the public figure
taking the flak for an org, and I’ve been the “man of the people” asking a
company for accountability.
And even though I’m the kind of neuroatypical who feels, like, really
strongly about justice, I have significantly improved my chill over the years.
The RustConf Keynote Fiasco unfolded over a three-day weekend for a lot of folks
(including me), at a time where “Rust leadership” was already in the middle
of being overhauled, the
previous
fiasco
was still deemed unresolved by some, teams were still understaffed, many people
burnt out for months at this point, etc.
I know the Rust project has come dangerously close to imploding
before, and so I wanted to be
mindful of how to proceed from there.
It’s a delicate balance between “demanding justice” and “remembering we’re
dealing with human beings here”. I’ve blown everything up and left enough times
before, I was hoping for a better outcome here, despite the project’s track
record.
And the good news: I think we’ve got that outcome, or at least, part of it.
There’s lots to talk about, so, forgive the length and the sprawling nature of
this article: I’ve done my best with the time I had.
Which “Rust” is it?
Before we look at personal and collective statements, we need to spend some
time understanding which organizations are involved, and how they’re related
(to each other, and the topic at hand).
The Rust Foundation
The Rust Foundation describes itself as “an
independent non-profit organization dedicated to stewarding the Rust programming
language, nurturing the Rust ecosystem, and supporting the set of maintainers
governing and developing the project.”
My understanding of it has always been that it’s a legal requirement for
funneling money from the big corporate users of Rust (like AWS, Google, Huawei,
Meta, and Microsoft) to the people who actually maintain Rust.
So, there’s employees from all these companies who work on Rust, and who are
part of various teams (and people tend to freak about that, oh no, a corporate
takeover!), but we also have “neutral”, Rust-foundation-employed people now, who
work on various things: you can check the complete list on the foundation’s
website.
And then there’s everyone else, who can receive
grants. In 2022 the foundation’s
grant budget was $625K, which is “a lot” and “not a lot” of money at the same
time. Those grants are generally not enough to live on, by a long shot, but
they qualify as “support” (perhaps even “recognition”).
If you check the list of grant recipients for
2023
you’ll notice that, among others, I’m on it: I have received two payments of $2500
for my Rust-focused articles and videos for that year. This isn’t “buy a house” nor “buy my silence” money, but you know: it’s nice to be seen.
The foundation also covers infrastructure costs related to hosting and operating
rust-lang.org, crates.io and docs.rs. Before that,
the on-call rotation for these was volunteers only, and many folks burned out as
a result.
Some of the costs are not so much “paid for by the foundation” as “donated by
member companies of the foundation”
All the details are in their annual
reports, including their income
(who donated and how much?) and expenditures (what was money spent on?).
But none of these are the reason the foundation got.. founded!
As the Rust project grew, its relationship with Mozilla became more and more
strained. For example, the first two “Rust All Hands” events took place in
Mozilla’s Berlin office. But it eventually outgrew the venue, and in 2020,
when the project tried to host it in Greece, things didn’t go
well.
Eventually, several folks from the Rust project worked tirelessly to put together the
foundation as a Delaware non-profit corporation, and it was announced on
February 8 2021.
What’s important to note here is that The Rust Foundation was not involved at
all in the RustConf Keynote Fiasco (RKNF).
It was involved in the Rust Trademark Fiasco (RTMF), in March of 2023. Although
there’s similarities in the dysfunction, different people and roles are
involved.
Oh we’re using acronyms now huh?
I’m nothing if not a nomenclature nerd.
The Rust Project
I’m going to be honest with you here – even as a “partial insider”, it’s been
extremely hard for me to figure out the structure of the Rust Project.
Essentially, there’s teams, and they do stuff.
Looking at the list, you would be
forgiven for assuming that some teams may naturally hold more power than
others, that there’s overlapping responsibilities, and that cross-team
discussions occasionally need to be had!
And that these discussions, occasionally, break down.
And that’s what the moderation team was here for!
Not only did they moderate discussions on
GitHub (but NOT the /r/rust
subreddit, as I’ve recently learned), but also on
Zulip, between teams, and
they were responsible for removing people from teams, if they didn’t abide by
the Code of Conduct.
Until every single one of them resigned in November of
2021, claiming that the core team
was only accountable to itself.
Note: I’m not linking to the current “Moderation team” and “Core team” pages on
purpose: their composition has varied over the years.
This Rust core team
alumni blog post
attempts to list various line-ups.
There’s a lot left unsaid about that episode, especially since the core team
hasn’t published their side of the story as of yet.
The vagueness of the moderation team’s mass resignation letter frustrated the
wider
community,
was acknowledged officially three days
later,
and a “leadership chat” was formed (in private, for the time being).
A couple weeks later, an e-mail sent to the ~300 members of the Rust project
was published on the Inside Rust
Blog