Rust the language is pretty good but the community around it has become really off-putting. The thick veneer of empathy and compassion quickly devolves into "idiot compassion" and emotional blackmail. Even the linked post contains the following:
"I left because when I felt JeanHeyd's pain and disappointment at being mistreated and betrayed, my heart broke. I wept because of the cruelty. But I also wept because I helped create the system that could do this to someone."
If he did the talk. If he did it as a keynote. If someone else is “leaving rust” because of it?
It all seems so fabulously irrelevant, I really struggle to understand why:
1) I should care (I don’t, currently)
2) People are coming out of the woodwork to criticise the rust team / foundation whatever when they’re not involved.
3) Why people having emotions (eg. The person above, who does care) is somehow a bad thing?
4) Any kind of positive out come is going to come of this.
I really struggle to view doing anything else as not hostile to the rust project or having an agenda (“stop rust being woke!!”) which is non technical, and unhelpful.
Rust is great. It’s not perfect. The people who build it are not perfect, the foundation is not perfect.
People are not perfect.
It’s ok.
Call out problematic behaviour, don’t obsess over it.
It's a bit of manipulation as nobody stated that having emotions is bad. Meanwhile, people leveraging unverifiable claims of bad feelings to hurt somebody is apparently ok... unless that somebody is you, of course.
The point is more that this sort of unilateral decision should never have been possible to make in the first place. It should have been discussed and voted on before the talk was downgraded.
Perhaps that specific incident is inconsequential, sure. I think even the speaker agrees so. But the fact that this lapse in process could happen within the Rust foundation at all is a red flag for other, more language-specific dangers.
I mean, I hear you. I understand what you're saying, I just don't understand how you (or others) think this is related to the technical aspects of the language.
But the RFCs are written and reviewed by people. And they need to have the feeling that the work they do isn't useless because the one who actually decides is somebody else who hasn't been involved in the process at all until the very end. It's ok having somebody being able to veto stuff, but this must be known and communicated beforehand - "yes, that's ok for us, but $PERSON has the last word on this so we have to await his approval".
Also, my understanding is that the consensus among the committee was to invite and then one person broke that consensus. You’re characterising this as a careful, considered decision made by all of Rust project leadership but that might not be the case at all.
I’m not seeing any obvious solution. If one member of the leadership team does something stupid on a Friday, it can only be resolved by Tuesday or Wednesday. Folks are going to pick up their pitchforks on Sunday and say that “leadership failed”. Sure. But I don’t see a way around this.
If some dirtbag got angry about being passed over for a promotion, got offers for a new gig, and then rage-deleted prod at 5pm on their last day, you get to blame that dude at the post-mortem.
I, like you, suggested that the process needs to be improved but I’m not sure how.
Of-fucking-course it was sabotage, and of course they should be fired as all hell.
It’s unprofessional I guess. For the sake of Rust’s future, it should probably get better stewardship. If you agree to let someone speak then you should honour it.
It seems to me that OP feels like he is forced out by this behavior. To be forced out of a project you put your heart and soul into over several years, that can hurt.
Also the governance of the project is important if you want to invest in the ecosystem. These are the people who make the decisions for Rust. If you want to rely on Rust, you better trust them to make the right ones, and this here is (ostensibly) a strong example to the contrary.
> I left because when I felt JeanHeyd's pain and disappointment at being mistreated and betrayed, my heart broke. I wept because of the cruelty. But I also wept because I helped create the system that could do this to someone.
This shit does not come off as authentic even a little bit.
I'd err on the side of believing people, unless and until they prove themselves to be insincere. Which is very much not the author's reputation, as far as I know.
People can be melodramatic sincerely. There's no reason to look for cynicism here.
Except (in my opinion) it's not, if the set of people responsible for the progress of the technology you(and mabye your company) are going to be using are able to make such terrible decisions, it opens doors for far worse on a scale where you will start to care(take a look at the code of conduct stuff(edit: I meant the trademark stuff); if they went ahead with it, which is very possible if they're willing to sidestep all ideas of democracy, then there would be some notable repercussions).
We can expect some mildly bad decisions on the language evolution. But it's very unlikely that this will open a niche for another language to replace Rust.
I wish they would lay off the power tripper stuff, but that’s what you get at this level/size. Coming from where it’s coming from, it’s arguably going to be hammering itself out for awhile yet, while the world is already using it just fine… you may see splintered community though
My 0.02 is that we live in a time where we are losing site of communities and focusing on individuals. Your comment appears to be an example of that. Human beings are adaptive and successful in general because they effectively work together. If you want to think about that idea, one of the things I've been pondering is how the Ukrainians have stood up to the vast power arrayed against them?
You can find countless research papers out there that present a brilliant idea devised and implemented by a skilled individual that ultimately goes nowhere despite its merit. Skilled individuals still need community to expand their work to the scope that will allow the idea to really shine.
(Note this is not meant to minimize Graydon's contributions to Rust's success, but to highlight the general principle that ideas require a community to grow into greatness)
How so? Me, a random Rust dev, can't ever make any difference in how is the foundation governed.
But, if you are telling us that the Rust leadership will e.g. actively follow this very HN thread and base their policy on it then yeah, then I'd agree with you.
People don't need to be perfect, but if people are going to REPRESENT something (ie the Rust Language) they need to be better than the petty drama that the Rust team has been involved in over the last while.
Comments about how someone just doesn’t care about something is the worst kind of comment.
I’m a bit hesitant to say this out loud, but… you can only cry over this “betrayal”, “mistreatment” and “cruelty” if you have lived a very protected life.
It’s already barely acceptable in a purely American context. To me as a European, this is extremely off putting and culturally out of line which is a recurring problem with Rust.
So they need reverse psychology to express anger at injustice because of the Code of Conduct? What is this world we're building?
There were groups that still tried, but they were all too weak. The cultural conservativism of the 80s had no real hold anymore, and the political correctness of the 90s was mostly a joke. People would make fun of their opponents, but everyone openly disagreed. You wouldn't be fired from your job, or banned from otherwise unrelated communities.
We really thought that the internet was going to keep making this better. Instead we ended up with the most restrictive and widespread regime that has existed in most of our lifetimes. Luckily that seems to be losing its hold, but the specific doctrine isn't really the point. The frustration is that we had something closer to the ideal, however imperfect, and completely lost it, and have almost an entire generation that has been taught to think that that's a good thing.
I think it has more to do with social media culture, which seems perpetually hyped emotionally.
You can't release a press release without claiming to be absolutely super excited for you guys about $mildly_interesting_new_thing. You can't run a non-trivial YouTube or TikTok channel if you don't over-emote wildly all the time. [1] IG is full of people who are incredibly #amazed and #grateful and add the hashtags to prove it.
I'm currently watching a YT series where some people visit abandoned parts of London tube stations. There's an insane level of constant emoting. It's like children's TV. Everyone is smiling and happy and just fantastic, and everything they see is awesome, amazing, incredible, and absolutely their favourite thing ever.
Which is weird when they're mostly just filming dusty old abandoned corridors, some of which have some historical interest.
If this is normal for you, you can't say "I really don't like what happened so I'm going to resign" without turning it into a widescreen tentpole weepy drama movie experience.
However or whenever this happened it's clearly normalised now. I think we're going to be stuck with it for a while.
[1] I've known people who tried to cut down on the emoting and their stats went right down.
Edit: I used the term neurodiverse and then implied we all fell into one category of personality. That seems to conflict, but what I meant was that we didn't differ much in the way that we differed. It was a gatekept community of a certain category of people where the gatekeeper was just interest in the subject absent any monetary motivation.
An awful lot of people didn't have the luxury of being openly gay in the 90s and 2000s. Depending on how old you are, this is naive at best or disingenuous at worst.
Are you talking about Iran or Florida? :)
But more seriously, your overall response is quite cryptic. I can’t answer for the ‘activist left’, whoever you take them to be.
All of life is change and cycles and oscillations. Not just human society but even whole ecosystems. Very likely this approach will be pushed to extremes, implode and then the cycle will swing the other way. There are valid reasons for this cultural shift and like all such shifts those supporting it need to experience the failure of going too far. Eventually some less extreme equilibrium will come about.
Be direct. No bullshit. Don't worry about offending anyone, including the project leader; just say what needs to be said about the technical merits of whatever is being discussed. We're all here to [insert project goal]; let's do so with a minimum of drama.
But it's probably better to continue to not have a CoC, and just quietly lead by example instead.
Those who can, do. Those who can't, open an issue about the code of conduct.
And it kinda sorta works.
That’s not saying that CoCs were not a kind of response to some pathological behaviors in online communities: you often are going to get either socially inept man-children, or people on the spectrum, and there are kindergarten-level conflicts. You get programmers who attach themselves to their work too much, have very strong opinions, and often will treat a set of rules as a puzzle you need to game, without much concern towards any consequences.
But my oh my, do lots of popular CoCs look like solution for that problem invented by the same kind of socially inept man-children who are the part of the problem. They likely have read the word “empathy” in a dictionary, but don’t understand what it means in their bones.
I have an even less charitable theory of what CoCs might be about, really, but for now I’m applying Hanlon’s razor and stick to what I’ve stated above.
Everyone is free to nope out. And people noping out is something that Rust (the community) needs to take into account. _Because_ it depends on them. But as is.. I’m unsure if this kind of emotional involvement is even something Rust (the project) _should_ want
* Person is invited to talk
* Person asks "You know about X, right?"
* They say "sure, it's no problem"
* They talk in private and take decisions in improper venues
* The guy is slighted at the last minute, told it is because of X
... is an all too "professional" way to do it. This is how professionals will do it, when they want to let you know they don't like you. With a little deniability, but not too much. If what the complainant alleges is true, there are too much social skill at work here - skill at exquisitely snubbing someone.
I am a bit out of the loop (I don't know who the people involved are), but I tend to agree, I think. Sounds like a mix of miscommunication and group politics. Those are things that people might get upset, but the exaggerated response sounds like a cheap appeal to raw emotions.
In our paroxysm of righteous correctionism, we've lost track that that is really good advice, even though crudely phrased.
Also, this is definitely not true—-a spouse cheating on you would be a “betrayal” but I wouldn’t fault anyone for weeping over it.
This further emphasizes OP's point—nothing the Rust team can do to you should approach the emotional impact of marital betrayal.
Part of adulting is responding proportionally to childish behavior in others. Events like this feel like my toddlers fighting—he takes her pencil so she tears his paper so he hits her so she comes crying to mommy.
The adult in the room deescalates, they don't write an emotional blog about how betrayed they feel on behalf of someone else.
The real question is if the Rust project has an equitable governance structure that minimizes imbalances of power or if it doesn't. If it does then the author should follow that instead of a large angry blog post. If it doesn't then he may as well go with the large angry blog post.
We're teaching our children to respond appropriately to conflict—in the situation above, either one of them can deescalate by approaching the conflict reasonably. He could have avoided it altogether by asking nicely for her pencil. She could deescalate by recognizing that he really wanted her pencil and making a trade that they both are happy with. It's hard for them to do because their escalatory actions feel more immediately effective at bringing "justice", but they don't work out in the long run.
The cycle of childishness isn't going to be solved by a post that triggers an internet mob, that's just another childish response in the cycle.
Again you're using an example of two children who are equal in power dynamics. Now try having a child deescalate an angry adult. Most people would not find that a reasonable request.
[0] Still listed as such here: https://www.rust-lang.org/governance/teams/core
[0] https://www.rust-lang.org/governance/teams/core
[1] https://rust-lang.github.io/rfcs/1068-rust-governance.html
You just summarised 98% of all current cultural problem in Silicon Valley.
For some people, crying is just a way to deal with emotions. So please don’t judge.
I’ve been a professional software developer for more than 20 years. I still find myself weeping at work once in a while, especially when overwhelmed with hardship and negative feelings. I don’t see how this would be a sign of living “a very protected life.”
The original behavior is childish. And the quoted paragraph I have there about it revealing some internal mechanics of the leadership group is an important observation, one I'm much more concerned with.
It's revealing that Rust's open operation may not be so open after all. That can quickly cause a lot of problems if not quelled.
[0] https://www.amazon.com/Mountain-Three-Wolf-Short-Sleeve/dp/B...
I think it depends what you're uncomfortable with. I remember some drama about removing some speakers from security conferences a while back, because people were understandably uncomfortable with them being rapists.
But being uncomfortable with ... talk about how compile time reflection might work in future versions of Rust? Huh? What?
Also I do agree about the language. People are from different cultures and so on, yada yada, but to me the used language feels very overdramatized and childish.
There was also the recent easily preventable drama [1] around the trademark guidelines some people left rust over. I don't really find any of this drama coming out of this culture very surprising. I write rust every day, I don't have to identify or interact with any sort of community around it, but I care about the future of it. I just hope it's already too big to fail at this point, because there is way more drama coming out of this community in the future, that's for certain.
these are levels of cognitive dissonance not previously thought possible
IMO the root actually comes from the very heavy social signals that were utilized by the Rust team early on (you can read a lot about them through the core team's reddit posts atp, especially under threads about the code of conduct). This effectively became a beacon for many people to gravitate towards. So when you see these sort of very dramatic disagreements that's laughable to anyone outside of that bubble, it's because that's the type of people Rust was (unintentionally or intentionally) beaconing.
https://old.reddit.com/r/rust/comments/vxgzrl/changes_in_the...
Mod response:
> For all those wondering about removed comments, there was some trolling going on which was summarily removed by the mods.
> Please avoid any trolling and/or drama seeking comments and remember our subreddit rules.
"Trolling" on display in the archives of that thread: https://www.reveddit.com/v/rust/comments/vxgzrl/changes_in_t...
And then there's Graydon's reply to the "we will exclude you," in the code of conduct, and the subsequent drama: https://old.reddit.com/r/rust/comments/6ewjt5/question_about...
Frankly, even though no one has asked for my opinion, the amount of effort people put into the code of conduct (and the discussion around it) is ridiculous; utterly ridiculous. In a time long ago, before everyone was incapable of compromising and cooperating with one another, we had two rules in an informal code of conduct for interacting with one another:
1. Be cool
2. Don't be an asshole
And then we all went back to trying to achieving the task at hand.
We should not whitewash the past because the present isn't what we want.
The past that I lived in was comprised of people you personally knew; not anonymous membership in a large organization or group, where you could never hope to know everyone on a personal level.
There was very little opportunity for people to be unchecked dicks to one another, because you saw everyone consistently and could easily notice when something was going on.
Perhaps this is an unsolved issue about scaling human communities?
If I've learned anything for Reddit mod culture it's that when you see super involved rules on the sidebar it's still ultimately just post-defacto justifications for whatever emotional mood the mods are in that day. The longer the rules = a good measure how aggressively the mods gatekeeps their community for things that go well beyond the scope of what the community was originally about.
This is how things like Programming becoming lower priorities in such communities than personalities/views of the people running it.
Instead of a tool to be used to solve problems local to an organization or an event, it's wielded as a bludgeon in always the most public way possible (either by the org/conference or target of the CoC itself) and time and again this has shown to be bad for everyone and an endless source of drama.
Coc seems like a law thing but who is enforcing it? Laws you have democratic elected people voting which laws, you have police checking if people follow them, courts giving out punishment. See they are 3 separate entities for a reason. Coc is written by the org, enforced by the org an punished by said org. Doesn't seem like an improvement.
Also, lots of behaviour can be pretty shitty without being illegal.
It happens that not being an asshole also mean asking yourself if maybe everything was cooperative because you were excluding so much that none of the people with a different opinion could join.
As such... Making you the asshole. And not cool.
But you know, I definitely could be wrong here. But I will note that nothing you presented discredit that theory. All the arguments presented fit it as well as the theory that it was great before.
It is readers pick for what was happening here.
I think in my past, whenever I've been in a leadership position over a group of people, we've all been there to achieve some goal. We were all cooperating to reach the same end -- and those with a different opinion of that "end" were excluded.
I have also been on the opposite side of this: I've been a member of groups whose goals I did not agree with. And no amount of civility or communication would bridge that chasm; therefore my opinions and thoughts were excluded (and I voluntarily left).
There is no right or wrong here -- if I step back and stop injecting my own feelings into the conversation: there are just differences.
I don't like theories. I don't like abstract things that try to become a source of truth, while completely ignoring and marginalizing the very real human element involved. I have no respect for them.
In my view, "don't be an asshole" is basically: you join a group of people, do not carelessly or intentionally go against the norms of that group. Do not insert yourself into a group of people that you know you will not get along with. There is no right or wrong, but there is conflict and no conflict.
But even now, as much as I have tried to take a step back with an objective lens, and disassociate from my very real thoughts, feelings, and beliefs: what is the point? I hold all of these because they are integral to who I am. As do the people of the Rust community.
Disjointed thoughts, without a goal to neatly encapsulate them all. Or perhaps my goal was to share my human experience with others? To socialize and create bonds with others? Quite a silly thing to do on the internet.
In that sense, even if the tone stays civil in group, the problem is still there.
The people are pushed out because "their concerns are not something this project is about". Which is consensus and focused on getting results right?
Perhaps you are afraid that other people might not come to the same conclusions if you let them make their own judgements?
If you mean those with a different opinion about the overall "end" of the project, this would make sense.
If you mean those with different opinions about any part of it, like how the project should implement reflection for example, it makes absolutely no sense to exclude them.
This would translate into an authoritative culture, where everything is predetermined, and no dialogue is allowed, except perhaps for trivial matters.
What if you couldn’t leave? Perhaps the cost of leaving is too high, or you’re required to for a job. Membership in many groups isn’t even a direct action, it’s a by product of some other action. Take functional programming, I love it, but holy fuck I should have known as soon as I saw the word “pure” there’d be fucking Nazis, xenophobes, and bigots.
> Do not insert yourself into a group of people that you know you will not get along with. There is no right or wrong, but there is conflict and no conflict.
Take my functional programming example: I have caused and will cause conflict. Because sometimes “not being an asshole” is actually being an asshole. Life’s full of color like that, you know?
There are countless examples of this phenomenon throughout history. Take for instance, the formation of the USA, the Catholic Church (Great Schism, Protestant Revolution, etc.), the American Civil War, etc. On a smaller scale, I know I’ve worked with people who would be a good fit on one team, but don’t match the culture of another. Or people who are very passionate about something, but wouldn’t do well in a group focused on something else. Sometimes, even, people have the same ends and such different means that they cannot coexist in the same group. You can see this with sports teams; everyone wants to win games, and some players or coaches don’t fit on certain teams because their idea of how to win doesn’t align with others’.
The reality is not everyone fits into every group. Trying to force that will yield a lot of resentment on both sides, in my experience. Much better to nip the problem in the bud.
[1]: Disclosure: I'm a minority (disabled), but I'm also a white man.
> Some people, naturally, feel that the norms spelled out in the rust CoC makes them feel excluded. To which all I can say is, yes, it's true: the rust CoC focuses on behaviour, not people, but if there's a person who cannot give up those behaviours, then implicitly it excludes such a person. If someone just can't get their work done effectively or can't enjoy themselves without stalking or harassing someone, or cracking a sexist or racist joke, or getting into a flame war, or insulting their colleagues, I suggest they go enjoy the numerous other totally viable language communities.
Hm... So, if someone just can't get their work done effectively or can't enjoy themselves without going behind the backs of the whole ostensibly “Leadership” group, what then? Has that person been ostracized yet? Have they even been named?!? (I sure ain't seen no sign of it.) If not, why not? There seems to be a hyuuuge amount of effort being expended to spare that person's feelings...
Which seems a) misdirected AF, and b) all too typical of these “governance by namby-pambyism” CoC committee organisations that everything on the Internet appears to have turned into in the last half-decade or so.
sure, merit plays some kind of role, but so do many other things. what so many comments in this discussion (and every other discussion surrounding this issue over and over and over again ad nauseum) really seem to want to ignore is the many other factors that play into long term group/project success.
merit alone? hardly ever, if ever.
Online communities have a natural tendency to turn inward and become disconnected from the original purpose of the community. A good measure is how much meta/political stuff comes up in every thread.
[0] https://en.wikipedia.org/wiki/The_Tyranny_of_Structurelessne...
Which is even worse than an explicit hierarchy, because it provides more gray area for people with power to do things anonymously.
It parallels woke culture somewhat.
Much like priests hidden away in their sacristies, the Rust™ community meets my criticisms with the silence of a prayerful vigil, retreating to the cowardly sanctuary of downvotes instead of engaging in the enlightening pursuit of reasoned dialogue. [1][2][3][4]
1: https://news.ycombinator.com/item?id=35060939
2: https://news.ycombinator.com/item?id=34925457
Whether or not Rustaceans want to banish C people to the desert to write printer drivers or to commit apostasy and assimilate I am not qualified to say.
Perhaps those crusaders have also witnessed several centuries of islamic invasions of said lands, and countries all around the general area, and the takeover by force of the local populations...
There basically is no other usable compiler than the official rust compiler. So it has this 'leadership' thing that ... C never really needed
There was no "leadership team" for Rust at Mozilla as far as I know. It was originally a one-person side project like C++ or Python, then it was elevated to an official Mozilla internal project as its potential in the context Gecko was understood by the higher-ups. But again, as far as I know, whatever culture formed around the project did so organically, but also as a conscious attempt to avoid many cultural issues seen in other OS projects. And mark my words, the Rust community as a whole is genuinely friendly and welcoming compared to almost any other internet community of similar extent, and there's nothing sinister underlying that friendliness as far as I can see.
When Mozilla got rid of Rust, the leading technical contributors continued as they had always done (albeit now with considerably fewer full-time paid contributors), as an independent self-organizing entity, but now even less accountable – in regard to technical decisions – for any external stakeholders but the Rust community itself. But some organization was required to foster Rust's growth, to manage all the inconvenient legal things, the interaction with the now several large stakeholders and funders such as Google and Amazon, and so on. So the Rust Foundation was created to manage all that. But the foundation's jurisdiction ends where the technical aspect of Rust begins – all the technical teams are still exactly what they used to be, accountable only to the greater community.
At any point, anyone could have experimented with different implementations with no "committee" saying what to do, but let's face it: first, modern compilers, even simple ones, are extraordinarily complex compared to an early C compiler running on a PDP-11, and second, in light of the first, Rust didn't grow in popularity nearly fast enough for anyone else bothering to write an implementation to experiment on.
No matter, the point is that nothing has ever stopped anyone from writing a competing Rust compiler, certainly not any imaginary "committee." Nothing except the fact that, besides mrustc, nobody has bothered because why would you do that?
Like many other modern languages, Rust is a mono-implementation, where the same organization is both developer and standards committee, while at the same time trying to fund itself (without revenue from either standards docs or the compiler) and balance external commercial and non-commercial interests.
There are advantages and disadvantages to each approach, but they are very, very different. (and in a world of cutting edge open-source compiler technology, I'm not sure the approach which resulted in ANSI C is even viable today)
Hmm, not sure about that one. Rust has an enormous hype component to it, more than any other language I'm aware of.
It may have strong technical leadership, but saying it's gaining market share "precisely" because of it is precisely misleading.
No, Rust is winning because it is 40 years younger than C and 30 years younger than C++. Rust incorporates advances in computer language design that C/C++ cannot adopt without breaking backwards compatibility. Rust is winning despite its leadership rather than because of it.
EDIT: elaborated a bit more.
It seems likely that there are other important factors. It's debatable what they are, but clearly there is a difference of opinion about how much Rust's leadership accounts for why Rust is succeeding more than most.
Conflict resolution is hard! I struggle with it as an engineer who wants to please everyone, but I also recognize that it isn't possible to.
Whoever had objections to the talk and was not able to express those objections to their teammates in the proper forum before taking action without their approval is just... immature. It violated trust amongst the Rust leadership team, and trust is everything.
It’s actually even worse, because this person also wielded enough power to represent Rust to RustConf, and did so incorrectly. They seem problematic.
Leading people is always messy and requires the maturity to deal with failures gracefully, and a catastrophic failure from a simple task is not confidence-inspiring. I love Rust, so I hope they get their shit together.
Really? Nothing against a thing that leads to hypersensitive intolerant mob behavior and authoritarian/anti democratic tendencies!?
It is very difficult to use the terminology even though it is the most accurate, because conservatives are the most loud adversaries of it, but they are just hateful racists, bigots, ableists, sexists, transphobes, homophobes, islamophobes, xenophobes, etc. Which of course invalidates everything they ever say.
Perhaps you should re-evaluate these assumptions and actually listen to people before you dismiss them.
Too big to fail can easily also mean too big to fix.
Failure is often not the worst outcome -- at least failure creates space for a fixed alternative to arise in the space left open.
Similarly "white supremacist" is often used as an insult on the inverse side, even for groups that don't believe in or desire white dominance. If someone actually does believe in those things, though, it's still a totally fine term to describe them.
I'm not sure what SJW or "woke" means in this context. They cancelled a black man because they felt "discomfort" over him being the keynote speaker.
There's a reason people don't want to talk about racism, and it's not because it doesn't exist anymore...
It's like the opposite of how the N word became used by black people.
If you actually aren't any of those things you should adjust your language to be more specific to what you dislike.
I think your analogy to the "N word" makes it difficult to assume good faith, but if it were possible to do so regarding "woke," is there a way to refer to that idea without being offensive?
Perhaps just "progressive" or "left-leaning" would suffice, but my impression is that "woke" usually refers to a more extreme form that is focused on social issues. "SJW" also seems to have a negative connotation.
You can enable showdead in your profile settings (click on your username) to view [dead] comments. With enough karma you can also vouch for them which might result in the comment being revived.
It sounds like you don't think "woke" means anything and is therefore not worth replacing. Is that more or less correct?
My recollection was that the parent comment I was responding to recommended that its parent replace the word to avoid immediately having the appearance of bad faith, which is why I was asking about their suggestion for a replacement. It seemed like they might have something in mind.
I mean, someone bullying some veterans/old men because they're "woke and feminist" isn't going to earn any sympathy from me.
nowadays... "woke" just means "I'm better than you (so I can/will do things that are otherwise unacceptable to you)"
...I think we chose the wrong word. Rather than "woke", it should have been "NO BULLYING" -- which includes all things the real "woke" people tried to do, and forbids all things the wrong "woke" people are trying to do
I don't think it's fair to entirely dismiss either, there really is a lot of incredibly toxic behaviour in communities labelled "woke" (and agreeing with further up the chain, I can't help but feel being a bit less "inclusive" and demanding some commitment to the product might help, gatekeeping be damned). But we should strive to accurately describe what those behaviours are.
I wouldn’t want to work with someone that wrote this. I’m not sure which is worse—if it’s hyperbole or it isn’t.
—-
My decision to leave was driven by witnessing the negative impact on JeanHeyd resulting from the actions taken by Rust. The situation raised concerns about the treatment and the breach of trust that occurred. It made me reflect on the role I played in the development of the system and whether I want to continue to be associated with it.
—-
No weeping, no histrionic claims of betrayal.
-- another version by ChatGPT
The underlying problem seems to be: sidestepping democratic processes. IMO that is what should be addressed first and foremost.
Which is the case here.
The thing is that the people on here taking about “being adults” are the least tolerant or understanding that people experience things and express things differently.
Yes, treat people with respect, but we also need people to have even a marginal resilience to adversity. The bar for being emotionally damaged seems to be getting lower and lower for people.
If you can’t take criticism, don’t work in open source. You will never have 100% support from all people at all times. Many developers will manage social interactions (and organizing conferences) badly. That’s life
Though “downgrading keynote to talk” is obviously not the same as an outright disinvite, the fact that the original invitee asked explicitly about this content being pre-RFC (giving rust leadership the out to resolve this amicably!), just makes it hard for me to say “oh this makes sense”.
Perhaps this is inevitable in some sense if the critique is not brought up earlier. But it’s something that feels really unavoidable if people were more honest about their own feelings on other peoples work.
Consensus attained by a shouting match?
Of course that gives them a certain level of power of the discourse, but what is the alternative? Community-voted conference structures that fail to take many variables into account that you need to take into account for an enjoyable conference?
If I were invited as a keynote speaker and the conference organizers tell me that the stuff I produced is good, but not suitable for the keynote I wouldn't blame them, but myself. The only instance I could imagine was if they invited me specifically for a spicy topic and my talk was too spicy for them. But a tech talk? Come on.
There was somebody who circumvented the intended governance structures to make this happen, and this is probably where the frustration and this blog post come from.
They could (or should) have been more transparent with communicating their reasoning, but again: Anyone who has ever organized any decently sized event knows that in the end the buck will stop with whoever has to do the actual work. And if you ask me (you probably didn't), giving organizers that power and trust is generally reasonable. They have the best insight, they have to carry the consequences if it does not work out, etc.
Of course that trust can be lost and a community can decide to let other people organize their event next time. But the way I see it those made responsible for an event should be able to shape that event.
You still seem to be missing the point: Which “organizers”? The ostensible “Leadership” of the project – which one would think should be the final arbiters of any such organizing – did want the guy to do the keynote. The real issue here is that the stewardship of the whole project, to put it in sophisticated technical terms, sucks if some grey eminence can undermine the official leadership just like that. Then their whole code-of-conduct, leadership-by-committee, woke-and-adapted-for-Modern-Audiences governance foofarah is just flim-flam, a sham, a lie.
That's the real issue here.
The lack of emotional (and explicitly confrontational) experiences in modern society are underdeveloping skills to deal with them.
Consequently, you get childish spats over what should be a technical disagreement, because people aren't comfortable saying "I think you're wrong, but I respect your opinion. Here are the reasons I think you're wrong..."
As the quip goes, anonymity and the lack of physical presence turns everyone into an asshole on the internet -- and then we raised most of the world on the internet.
1. English is a Germanic language, not a Romance one.
2. Even for speakers of Romance languages, knowledge of the ancestor language doesn't really make a difference. Does it help a modern English speaker to know that silly once meant "blessed by God"?
3. The notion that Latin is somehow more logical than English is a pervasive one, but it has absolutely no evidentiary underpinning. It's pure classist bullshit.
The irony is not lost to me that the "it's just words" crowd is also sensitive to "just words".
I'm talking about people being thin-skinned, petty and passive-aggressive about other people disagreeing with their ideas, which is something I see _constantly_ in this field.
As a result of the current geopolitics, we don't have the self-awareness to realize that minor conflicts are minor conflicts and that the absolute best place to be and thing to be doing is spending time at home with your loved ones.
We certainly shouldn't be carrying out PR strategy wars against our colleagues like is happening here...
Do the Rust community really feel this is acceptable?
Everyone seems to hate it, so I can see that it's possible it's "just" bad leadership (which is a big deal of course).
If anything, people should be pushed to accepting feeling uncomfortable. It means they're meeting challenging ideas, opposing viewpoints, and getting out of their comfort zone and echo bubble.
A Go stack is looking quite achievable.
Ironic https://gcc.gnu.org/pipermail/gcc/2021-March/235124.html
Claim of "feeling uncomfortable" was invented to be a tool of political fighting which allows to declare something, or somebody as unacceptable, completely avoiding debates. As it's becoming generally normalized, it's absolutely logical that it spills into other fields of human interaction. It's simple, and efficient, so why not?
Is this sarcasm? I think it's pretty obvious why not. Broken communication, poor decisions, and the obvious fallout.
And, related to the OP, I believe one reason this ends up being used as a weapon is that it’s so arbitrary, you can never predict when or how it might be sprung on you, so it behooves you to go on the offense and invent the equity issues, vague “discomfort”, and declare others witches in the interest of self-preservation.
> They've also written an article about reflection in Rust[...]
> Rust members were "uncomfortable" with this purely technical viewpoint [...].
As I understand their own words (your link), they wrote the article, were invited to talk, and decided to talk about the content of the article and related things (because that’s what they had been working on recently and you generally give talks about things you work on).
Not making a value judgment, just want to point out the connection is less indirect than your comment implies.
https://soasis.org/posts/a-mirror-for-rust-a-plan-for-generi... - Is this the post ?
I don't know if their approach is the right one. I think the visitor pattern is a bit limited in usefulness (where it fits nicely for serde, it'll fall flat for other more exotic use cases I think. But I've not thought about it for more than about 5 minutes and haven't considered any other possible alternatives - they have.)
However, I agree with them in that the current song and dance with syn being the prevailing defacto crate most of our macros are built on is a bit absurd, especially since they refuse to open up proc_macro internals for use by the public. I can certainly see both sides' points but the net effect is that, right now, the macro business yields subpar error handling and feels very much hacked on rather than being a natural part of the language like most other things in Rust seem to.
https://www.theregister.com/2021/11/23/rust_moderation_team_...
There seems be something rotten at Rust and I've no idea what but anyone who gets a close look at Rust leadership seems to sprint away.
It doesn't seem to be a matter of stamping something out it'll be an entire overhaul.
Essentially no-one wants to do diplomatic stuff, so it falls to only person that likes doing that stuff (which isn't a good thing). Which can leads to episodes like this.
Here is another independent person blowing the whistle on rust culture.
https://hackmd.io/@XAMPPRocky/r1HT-Z6_t
How many times will this happen before people take it seriously?
I'm fully prepared for some horrendous revelations in the future.
And we'll all claim to have known nothing and seen no signs :)
---
It's not censorship, it's lack of resources.
We're volunteers. When it's too much work to moderate a thread, we just nuke it from orbit.
-- matthieum @ https://www.reddit.com/r/rust/comments/13tsmht/jt_why_i_left...
Those threads don't happen everyday either
https://www.reddit.com/r/rust/comments/13tsmht/jt_why_i_left...
Do read the full thing, but it roughly boils down to "If it happens at a time/on a day of the week when we have more moderator bandwidth available, we will make use of it to be more lenient. In the worst case it escalates to targeted harassment, and I promised myself to never let another 'Actix developer harassed into hiding' incident happen. Was it heavy-handed? Yes, and I wouldn't do it lightly. Also, I expect that anyone who really wants to know what was deleted can go to Reddit mirror/archive sites and the case you're referring to was the first time I had to act since Reddit surprised them by shutting down API access for the Pushshift service they relied on."
This reminds me of an episode in Scrubs where one of the residents volunteers to announce bad news to patients or family [1].
Several patients later, the lead doc tells them, "... if you could stop worrying so much about who does and doesn't notice... you. Even for a second... that'd be good; that'd be real good."
Their plaintive explanation previously was, "I just wanted to be colleagues."
It wouldn't surprise me volunteers pick up diplomatic work, and it just doesn't jive like a computer program at all. With humans, who knows what we are getting into?
Should we have goals up-front before we dive into open-source? Whether it's for respect and recognition, or a completely selfless quest for the good of a project we care about, or something else.
Maybe we just love to write code; the project is cool; and we just want to be involved.
I guess we have to be ready when the system does not behave like we expect, and we can't QA behavior or choices. That's the hard part of soft skills.
[1] Season 2, episode 4 (S02E04), My Big Mouth
Transcript: https://scrubs.fandom.com/wiki/My_Big_Mouth_transcript
I agree with everything that the speaker and JT have said in their respective posts. This is unacceptable, it needs to be fixed and the person who was “uncomfortable” needs to be held accountable.
But I think it’s worth waiting for a couple of working days before picking up our pitchforks. Let’s give folks the benefit of the doubt. Let’s not ask the Rust committee to “grow up” when they haven’t done anything yet and haven’t even had a chance to respond.
Rust may, or may not, be the next best thing. However, the zealotry expressed by some rust pundits, is very off putting to me. One thing I have learned, is that zealotry is where moral compromise enters, it is where "for their own good" and "the ends justify the means" starts, followed by concepts such as "we need to force people to understand".
Some rust pundits seem to be such zealots, injecting rust commentary into everything. Almost religious.
Thus, I am not surprised by this. To speak ill of the holy relic, to utter dissent, drives zealots to mad excess!
Have in mind that 99.99% of Rust devs out there chose it on technical merits and couldn't care less about their internal infighting even if we were paid to care.
No, my statements about zealots in the rust community, are not generalizations. Rust has more zealots, than every other language combined.
Note, advocates are not the same as zealots.
Every single Rust dev I've worked with is a normal programmer who prioritizes merit and rational process.
If you're already unfriendly towards the Rust community then this incident will only deepen your bias. I urge you to not assess the community with this flawed thought process. Rust devs are like all others.
At no point did I claim it did.
If you're already unfriendly towards the Rust community
Where did I state this?
It seems you are touchy on this front. And it seems as if saying that the rust community has some zealots, upsets you.
Most other dev languages don't even have "communities".
> And it seems as if saying that the rust community has some zealots, upsets you.
First saying "more than every other language combined" and then changing tone to say "some" is disingenuous. And please don't try to technically argue that the former doesn't have to more then the latter - the underlying insinuation is pretty obvious.
Further, most languages barely have any advocates, let alone zealots. Rust is a massive outlier here.
My statement is accurate, valid, makes sense, and is predicated upon observation.
My point is the same: most people don't care (and I mean 99.99%; what we've seen in the last days is basically high school drama and no aduy takes such feuds seriously).
The only real danger is that strong contributors leave. We the working Rust devs could feel that at some point in the future.
But even that possibility isn't that scary. Rust is quite mature in many ways already. Most innovation happens in libraries at this point.
The argument that opinion should be equally protected, or that conversely race and gender should not be protected seems very surprising coming from a gay black trans person, which makes me assume I probably don’t understand what you mean. I’m curious to hear why you say the sensitivity to race and gender is artificial and irrational, given the history of physical atrocities that have occurred.
All that said, this particular case isn’t about protected categories at all, is it? The issue was not the existence of a dissenting opinion, the issue was that it was handled unilaterally without consensus, against the stated mores and procedures of the organization. They had a codified process for “protecting” dissenting opinions, and someone ignored and broke that process. This isn’t to be confused or conflated with US (or any other country’s) labor law’s notion of a “protected class”, we’re talking about two completely different kinds of protection.
Effectively, but worth noting for clarity that they only explicitly wanted to demote the talk from keynote. But as this was disrespectful, the speaker withdrew entirely.
> Academic politics is the most vicious and bitter form of politics, because the stakes are so low.
Conference speakers is the definition of low stakes rife for pointless politicking.
I honestly don't understand why the Rust compiler reflection tech talk was the slightest bit controversial. Even if no one is in favor of the proposal, it can still be an interesting thought experiment. Such issues may expose design issues.
I agree with other commenters: anyone who is prone to playing politics with these low stakes issues needs to be pruned before they do real damage.
>> Come on, Rust committee. Let's grow up here, shall we?
It is too much power held by one group with too little accountability.
More transparency is needed and more people from different organizations need to be involved.
The fact that JT and the rest of us have to guess what really happened speaks volumes.
If so where is the transparency and accountability?
Who was the individual? Why did they do what they did?
If they do not represent project leadership, what will be done to fix this situation and prevent similar problems in the future?
If they do represent project leadership, why weren't the changes and the reasons for the changes communicated better?
A group of people mysteriously calling the shots in a closed room ultimately alienates the community and will stifle the long-term success of Rust.
The accountability must happen and shouldn't be ignored, and I hope that various parties step forward to handle the mea culpa responsibly, but it's a bit early to grab the pitchforks, light the torches and march to the town square.
Fair enough.
How the situation is handled matters, so I suppose we will see.
My understanding is that they (unilaterally) changed the talk's status from "keynote" to "regular talk", so they didn't quite push them out.
First the thing with the code of conduct and all that, that I think distracts from the technical questions. It is important to be inclusive, as not to exclude people who could make valuable contributions, but if it becomes a topic of argument, then it becomes counter-productive.
The second is the "rewrite it in Rust" crowd. I mean, no language is strictly better than another, it is all about tradeoffs. And rewriting a piece of software is not a decision to be taken lightly, see the "second system" anti-pattern. Rust has a place, maybe an important place, but I dislike fanaticism in general.
The first point seems to have died off a little, and most discussions I see about Rust now seem to be technical, which is a good point. And I expect the second point to become a bit less prevalent as the language becomes mainstream and stories about people being miserable with Rust will inevitable surface. I don't think a language can be considered mature unless (some) people start hating using it.
I have wondered now and then about how the Rust community culture might have damaged the language. In particular, I've said for many years that Rust botched error handling by eschewing exceptions yet including panics anyway, leading to a doubling of the error handling infrastructure (you pay for both error objects and stack unwinding support) and the inability of the standard library to survive allocation failure.
It's an unfixable mistake, although the language designers have walked it back the best they can over the years, culminating in the current yeet proposal.
Did Rust end up with both errors and panics because the community suppressed robust debate in the name of kindness and "safety"? Was the current approach a way to try to make everyone happy without conflict?
I've been hanging around /r/rust and poking at other venues since at least 2013 and my understanding was that the exception-like appearance of panics arose organically from:
1. Let's have monadic error handling for catchable stuff and an ASSERT equivalent for bugs that cannot be reasonably handled.
2. Our ownership system and mutex poisoning allows us to make strong guarantees about where invalid state is observable. Let's let a thread ASSERT without taking down the whole program.
3. It'd be nice to have RAII cleanup on an ASSERT
4. It'd be nice to have automatic diagnostics on an ASSERT failure
5. Gee, it's really awkward to have to spawn a thread in order to be able to translate an ASSERT failure into an error code when we're exposing a C API from Rust code. Let's add catch_unwind. (std::panic::catch_unwind didn't get stabilized until Rust 1.9.)
The clearest expression of this is that libraries cannot opt back into unwinding when the application that depends on them sets panic=abort. If an application says "I have no need to continue with the following job/request/etc. after a programming error in a single unit of work", the libraries it depends on aren't allowed to countermand that and, if they try, it's their fault for abusing panics. Panics are overgrown ASSERTs, not an underbuilt exception system.
If a crate is using panic because it encountered bad input or whatever then the crate isn't doing things in a rusty sort of way. Even if it's a wrapper around an unsafe C library that uses panic everywhere the language has tools to work around that which is not the same thing as having made an inherent, unfixable mistake in the design of the language (by having more than one way to deal with errors).
People seemed to have forgotten some of the early events from years ago when Rust was less popular.
>>The Rust project needs to stamp this out before it begins to fester
It has been there since the formation of the Lang, it is built into the DNA of the community. people that want technical merits to shine are the ones trying to change the community, not the other way round
Like seriously I’m on a computer remotely discussing tech with people. I don’t personally care about who the other person is or does beyond their contribution to the repo and topic at hand. Beyond that, to weaponize decent behavior as a tool to do additional things, is not right.
Sorry but when can we stop taking “developer advocate” type people seriously? They’re usually not devs or technical (at least in my own experience), and add all these side things which make no sense except in political organizations.
In the world of technology, fundamental tech like programming languages can persist seemingly forever but the truth is that there's great big winners and a whole lot of losers. We also don't like to compare seemingly-unrelated languages to each other because of their fundamental differences in how they're meant to be used but the truth is that a lot more people know and learn Python than will ever learn C or C++ (or Rust).
It's because C and C++ never really evolved into better languages. They never got rid of the bad ideas (e.g. goto) and just kept piling on new stuff, leaving new learners of the language just that much more to have to learn.
Languages like Rust and Python actually remove old, bad syntaxes/ideas and implement checks and helpful compiler messages regarding bad patterns. IMHO, this makes them vastly more likely to be around 25, 50, or even 100 years from now than languages (or OSes) that never remove technological debt.
C++ has evolved tremendously so I have no idea what you're talking about there. Removing "goto" would help nothing, and the more or less deprecated features keep old codebases alive while allowing for better things (shared pointers and so on)
If you were around the internet when Rust was first being formed at Mozilla, understanding the history there and the transition of Mozilla from a pure tech company to a political organization is part of the story as well
I will say my first introduction to Rust was not as a programming lang, but was one of the many many many posts around the internet at the time where the founder and other core members were defending their CoC, and talking about how they were more focus on the "behavior" of developers than on the code, or technical merits of programming.
Rust has always been more about about controlling human behaviors (i.e politics) than it about controlling computers.
Declining a keynote because you disagree with it just works to highlight a lack of welcoming of diverse viewpoints in the community. Having a perspective highlighted you disagree with would actually show how open and welcoming the community is.
This assumes of course the person was not making promises on behalf of the project to the community (who knows maybe they were?) but rather expressing their own opinions.
Having a keynote is not some endorsement that this is the future direction of the project.
I mean, it's good to discuss different viewpoints, but programming choices is a hill I would never want to die on.
If I understand the story correctly, they downgraded the talk from a keynote to a regular talk. Which — if, like you say, was about purely technical thing that was pretty widely disliked conceptually — maybe shouldn't have been a keynote in the first place?
This isn't a case of one person who was powerless to stop what happened and felt that making a big stink on the internet was the only solution—this was one of the primary decision makers shaping the future of Rust. I think there's a lot of context missing from this blog post about why they felt the need to resign rather than use their position to improve decision making.
For now I'm withholding judgement on who will turn out to be in the right.
[0] Still listed here: https://www.rust-lang.org/governance/teams/core
[1] https://blog.rust-lang.org/inside-rust/2022/10/06/governance...
As if their personal beliefs or demographic would be more acceptable things to have concerns over, in a technical conference setting?
This shit has just become too normalized and acceptable in contexts where it shouldn't be. You're not marrying them or making them friends.
If I was askwd to give a keynote somewhere and upon presentation of my topic the organization decides another talk is better suited I would trust them that they wouldn't do that lightly.
This is a very egotistical industry and this is one of many ways that manifests.
>And then they pushed them out of the conference behind leadership's back?
>Did I miss something? This is indeed really childish behavior.
You're jumping to a lot of conclusions here. The article was written by someone who is clearly upset about the incident and doesn't go into a lot of detail about the motivation of the other party ("as best as I understand it, because of the content of JeanHeyd's blog post on reflection"). Would the "uncomfortable" team members agree that it was a matter of "comfort" that was caused primarily by the topic of a blog post? Are any relevant facts, by any chance, left out of the article? We don't know.
What we do know is that it didn't happen behind the leadership's back: "This discomfort was brought to the interim leadership group [...] A person in Rust leadership then [...] reached directly to RustConf leadership [...] RustConf leadership decided to wait a week [...] giving Rust leadership time to change its mind."
Maybe that really is the problem. Too much reflection leads to clever, but hard to debug hacks. Look what happened with C++ templates and, further back, LISP macros. That way lies code that's unusually hard to read and maintain. Rust probably shouldn't go that way.
Do you want to have a keynote address on an idea of that type? It's more of a subject for a proposal talk.
That's what I think most people find terrible about Rust leadership's handling of the situation. It's not that this specific keynote was super important, it's that the team let the speaker spend a few weeks preparing a keynote and then pulled the rug on him.
[0] https://thephd.dev/i-am-no-longer-speaking-at-rustconf-2023
FTA:
> It was JeanHeyd who called Rust out for having no Black representation
The implication here is that this person was uninvited for pushing a SJW agenda that the author agrees with but that rust’s “shadowy” leadership doesn’t.
> More specifically, I was nominated by “Rust Project Leadership” (to be exact with the wording) to give a keynote
That wording is misleading. If what this “Rust Project Leadership” committee says doesn't stick but can be overridden by someone (or someones) else, then they're not actually leading anything; the overrider is.
Have these people realised yet that they're just a façade?
Someone is an expert in this field.
They're asked to speak at RustConf after a leadership vote.
They've also written an article about reflection in Rust - a purely technical thing that is already pretty widely disliked conceptually. (EDIT: the talk was about this, but it's also compile time reflection and came with the usual disclaimer that it was not representative of any of the Rust team's viewpoints or support)
Rust members were "uncomfortable" with this purely technical viewpoint - not their behavior, personal beliefs, or even their demographic?
And then they pushed them out of the conference behind leadership's back?
Did I miss something? This is indeed really childish behavior.
EDIT: oh. It's not even reflection, it's compile time reflection. As in, it's not the next Java but instead something that might actually be very useful for the language if done correctly.
https://thephd.dev/i-am-no-longer-speaking-at-rustconf-2023
> The sudden reversal smacks of shadowy decisions that are non-transparent to normal contributors like myself. It is a brutal introduction to the way the Rust Project actually does business that is not covered by its publicly-available Procedures and Practices and absolutely not at all mentioned in its Code of Conduct.
Agreed. The Rust project needs to stamp this out before it begins to fester. This is incredibly stupid behavior coming from what is being regarded as the next C++.
Come on, Rust committee. Let's grow up here, shall we?