← Back to context

Comment by rdtsc

10 months ago

A person can be in a tough spot personally and then things seem to spiral out of control around them because that just cannot be 100% isolated from professional stuff or other spheres of life. It seems like this might have happened to Hector based on the post. We've all been there and that part is completely understandable.

> I get that some people might not have liked my Mastodon posts. Yes, I can be abrasive sometimes, and that is a fault I own up to. But this is simply not okay. I cannot work with people who form cliques behind the scenes and lie about their intentions. I cannot work with those who place blame on the messenger, instead of those who are truly toxic in the community.

The abrasiveness though is the reason people react that way. Not everyone is going to respond with "hey that was abrasive, that's not how we do things, here is a better way to phrase it". The majority will simply shut down or start forming cliques in the background. I can't completely blame them either. Here is Hector threatening to launch a shaming social media campaign on kernel devs:

> https://lore.kernel.org/rust-for-linux/208e1fc3-cfc3-4a26-98...

"If shaming on social media does not work, then tell me what does, because I'm out of ideas."

That's not ok. Even if he feels he is right and they are wrong. People will create cliques and talk behind your back if you act that way. People will look on Rust community after this and say "Remember that time when _they_ where threatening kernel devs with social media drama?". It's not right but that's the perception that will last.

> People will look on Rust community after this and say "Remember that time when _they_ where threatening kernel devs with social media drama?". It's not right but that's the perception that will last.

Happened with actix, happened with serde, and now being threatened by kernel contributors. The perception seems at least somewhat based in reality.

  • There was plenty of indefensible behavior in the Actix debacle, but the reason it blew up was because the maintainer was genuinely wrong and was being a jerk on top of it. The sequence of events was:

    1) Issue found by Shnatsel

    2) Issue closed as harmless to users by fafhrd91

    3) Issue proven harmful to users by Nemo157 and reopened by JohnTitor

    4) Issue fixed and closed by fafhrd91

    5) Issue proven unfixed and proposed new patch by Nemo157

    6) New patch commented "this patch is boring" by fafhrd91

    7) Issue is deleted

    8) Fix is reversed by fafhrd91, issue still present

    http://web.archive.org/web/20200116231317/https://github.com...

    A maintainer that rejects a fix for an issue that was proven harmful to users on the basis that it was "boring" and then deletes the issue is a bad maintainer. Death threats and abuse were definitely not the right answer, but public criticism is not unreasonable in such a case. If it were just a hobby project and advertised as such then that would be one thing, but he plastered info about how it was used production by a bunch of big companies on the website. That is not how someone who calls their code "production-ready" acts.

    • I'm not sure what you're arguing. Are you saying that because the Actix maintainer was "a bad maintainer" that the community shouldn't be held accountable for harassing him?

      1 reply →

  • Rust, which is a language I really enjoy, generates more social media outrage and religious wars than any other technical project I have been following for the past 20 years.

    • > more social media outrage and religious wars than any other technical project I have been following for the past 20 years.

      It is unfortunately wrapped up in larger-scale outrage culture than just within tech/programming circles. Rust as a community is very gay and very trans:

      https://blog.rust-lang.org/2024/02/19/2023-Rust-Annual-Surve...

      https://blog.rust-lang.org/2025/02/13/2024-State-Of-Rust-Sur...

      To be clear I am 111% down for that as one of the Alphabet People myself lol. We just can't pretend like it isn't a factor.

      Disclaimer: I realize these numbers are probably skewed high due to self-selection of people who are willing to take diversity surveys. The actual percentages are probably somewhat lower, but Rust undoubtedly has the highest concentration of any programming-language community. Zero question.

      17 replies →

    • It must be said that from an outsider's point a view, in quite a few aspects it very much sounds like a cult.

      Get an HN article about C++, and you can be certain the comment section is going to deteriorate at some point into a religious war mentioning Rust. Get an article about Rust, and there is going to be drama in the comments.

      As a programmer that could potential consider Rust, it is off-putting.

      9 replies →

    • There's something about Rust that draws Zealots (or draws out zealotry in people). It's not at Haskell's level, but there are several culty elements for the fanatics: secret knowledge, being 'chosen' or set aside from the ignorant plebians, and an unshakable belief in a form of rapture when the language will inevitably win when everyone realizes the superiority of monads/memory safety.

      1 reply →

  • Hang on there: the serde issue drama would’ve happened in any other ecosystem and doesn’t quite belong in this list, because it was about shoving a pre-compiled binary into the supply chain.

    (The actix drama was stupid IMO and is fair to criticize the community over tho)

    • Not true at all. Quite a few ecosystem communities are comfortable with having binary blobs sitting around, and wouldn’t cause any drama over that.

      Should they be? Well…

      1 reply →

  • Never hire zealots who don't share your religion, they may be cheap - or free in this case - but in the long run they cost you a lot more.

> "If shaming on social media does not work, then tell me what does, because I'm out of ideas."

This is just an incredibly odd thing to say. It's so obviously out of line that it seems like someone's joking around.

The Rust community (generally-speaking) just can't see why people have a visceral reaction against them, independent of its technical qualities. In all my years, I've not seen anything like it.

  • Hector seems to both have the right intentions but also an inflammatory tone in discussions that makes it challenging to support his points.

  • Mightn't it just be that it's a newer technology, which newness has attracted a younger crowd, and this happens to be part of the younger culture right now, more broadly?

I started reading the article, having little background on kernel drama, and ended it thinking to myself, “Jesus, what did this poor guy do to deserve all this hate?”

Then I read the thread you linked and thought, “Oh. That.”

To be clear nobody deserves to be harassed or threatened, but Hector’s messages make it clear he is astoundingly good at making himself into a victim of injustice. When his messages mentioned “cancer” I immediately thought that meant another kernel dev told someone to get cancer or die of cancer or something, which would be completely unacceptable. He was using the word metaphorically to describe the way Rust is slowly making its way into the kernel, like a cancer growing.

How anyone (read: Hector) could think this requires CoC action is baffling to me. Insane language policing.

  • > he is astoundingly good at making himself into a victim of injustice

    This was my same thought. And then at the end of his rant, he writes:

    > If you are interested in hiring me...

    No one who values a drama-free work place would hire this person.

  • It seems at the heart of the issue is the vision for the future of Linux kernel.

    One group believes it is Rust (progressives), one group doesn't believe that and wants to continue with C (conservatives).

    If they cannot find a way to live at peace with each other, I think the only solution is for the Rust folks to start building the kernel in Rust and not try to "convert" the existing kernel to Rust piece by piece.

    Why they cannot live in peace seems to be: a way that C kernel folks would not need to deal with Rust code.

    At the core, the story is not that different from introducing new languages to a project.

    You are introducing a new tax on everyone to pay for the new goodies you like, and those who are going to be taxed and don't like the new goodies are resisting.

> That’s not ok.

Then entertain his question and tell us what is? Bringing up people’s attention to the matter to finally somehow resolve the situation is his last resort, after spending years trying to upstream even trivial patches. You can eat your cake and have it too - you can’t say you want rust in the kernel and then sabotage any upstreaming efforts

  • > Then entertain his question and tell us what is? Bringing up people’s attention to the matter to finally somehow resolve the situation is his last resort, after spending years trying to upstream even trivial patches.

    When upstream won't work with you, the answer is to maintain a separate tree. Yes, it's a lot of work to maintain a separate tree. No, you won't get as much use if you're in a separate tree.

  • How do you respond at your job when people don't do what you want? Do you weaponize social media against them?

    Also, the person rejecting the patch seems to have never claimed to want rust in the kernel.

    • How would I respond at my job if someone openly antagonized my project(s) and completely refused to work with me? Probably complain to management.

      3 replies →

  • Your assumption is that others owe it to him to have this situation resolved in a way he finds acceptable.

    • I don't think that they owe it to him, but I do think it's shitty to string people along for several years without merging their code, often refusing to even review their code, without giving any technical reasons and while behind the scenes straight-up conspiring to sabotage their efforts.

      I mean, that's the kind of abusive dynamic I'd expect from a horrible corporation: stringing along underpaid or unpaid interns for several years and refusing to hire them at the end of it without giving any actual feedback.

  • > Then entertain his question and tell us what is?

    In this particular case, Hector himself with the blog post hints at it, but a lot of damage has been done already: "I am working on personal issues currently, I'd like to step back for a while and will not be contributing. Thank you, all".

    > Bringing up people’s attention to the matter to finally somehow resolve the situation

    Not everything has a clear and fast resolution. I think Hector's team were hoping the resolution to be "Shut up everyone, we're doing Rust now, this is all merging in and that's that!". But it could have been "Shut up everyone, we're not doing Rust any longer". They would have been even more upset saying "this is a leadership failure, they're on the wrong side of history" and so on.

    > you can’t say you want rust in the kernel and then sabotage any upstreaming efforts

    Two wrongs don't make a right though. Call people out and ask them to explain their position, get others on your side. But threatening to drag their names all over Bluesky or X or Reddit or whatever latest thing is, is not productive, even more so it's anti-productive.

    • > Not everything has a clear and fast resolution. I think Hector's team were hoping the resolution to be "Shut up everyone, we're doing Rust now, this is all merging in and that's that.!". But it could have been "Shut up everyone, we're not doing Rust any longer". They would have been even more upset saying "this is a leadership failure, they're on the wrong side of history" and so on.

      I'd argue that we're basically at the point where that _is_ what the de facto policy is, except without it being actually stated. There's a subsystem maintainer blocking any Rust code from being merged (even to be imported as a dependency from outside their subsystem) who said they will do "everything in their power" to stop Rust from being merged into any part of the kernel, and when people asked Linus to clarify whether he still thought it was viable to have Rust in the kernel, he said nothing. Hector made the infamous comment about social media, and _then_ Linus stepped in to say that we needed technical debate rather than social media brigading, which gives the not-so-great precedent that invoking social media was actually more effective at getting some sort of response than the technical debate that he actually said he wants. So now, the status quo is that someone with the power to completely block any progress towards actually including any amount of Rust in the kernel will presumably continue to do so, but Linus still is sticking to the line that we can have "technical debate" about it even though the outcome is predetermined to end in failure.

      You're right that not everything has a clear and fast resolution, but given that the only possible ways for this to end other than just making the "no Rust in the kernel" policy explicit is either for Linus overrule the maintainer blocking any Rust code from being merged or every single patch containing any Rust code to be blocked, it seems pretty clear to me that the way things are now is just a slower, less clear version of the negative outcome, so having a clear and fast resolution with an undesired outcome would be far better. This seems like the real cause of frustration that Hector has; it's hard not to feel like the reasons for this path to "resolution" was picked over just admitting that it's essentially official policy that Rust isn't allowed for reasons that are ultimately purely social rather than technical. The correct resolution in my opinion would be if Linus said something like "regardless of my opinion on whether Rust should be allowed in the kernel, I'm not willing to overrule the decision of the subsystem maintainer in this case, so the current status quo will remain unless someone is able to convince people to merge things on their own". My best guess for why he didn't want to do that is that it would essentially paint a target on any maintainers refusing to merge Rust code, which is understandable but seems like it will just cause more frustration in the long run than simply ending acknowledging the reality of the current situation.

      1 reply →