Wish we had more role models these days who were willing to disagree with decisions and work to fix them rather than loudly resign or point fingers. Feels like there is a lot of pressure these days that if you are part of a "bad" system then _you_ are bad, even if you are trying to improve it from the inside. So it's understandable people quit instead of taking on the burden of having to prove their "goodness", it's just a shame our media/algorithms lazily spread outrage rather than spotlight diligence and compromise.
Golang has lots of good examples of design discussions without vitriol in their RFCs and proposals. There is the occasional bikeshedding and needless bickering granted, but it mostly stays civil and is the most mature language community I've ever had the pleasure of being a part of.
Almost all of the work the rust project does is like this too. The RFC process is pretty consistently lovely. People just go back and forth talking about different design approaches with respect and thoughtfulness. I wish decisions happened faster, but decisions certainly get made and everyone is listened to.
These conversations just don’t make the front page of HN.
I think there might be a connection between Go's pragmatism and the culture fostered around it and Rust's correctness and its culture.
On the other hand, it could be that Google owning Go makes the bigger difference. I know that Ian Lance Taylor created several versions of generics that got shot down, which must have been frustrating. However, I don't remember hearing the slightest bit of internal conflict from the core team. (I pick on generics because it was the largest and longest "conflict" in Go's history.)
The primary language developers/owners work at the same company, so presumably they have more bandwidth (behind closed doors) and more financial incentive to provide a united front. Or, they're just a pragmatic group of engineers with drama turned to -11.
Similarly, in the C#/.NET community, most of the drama fits one of the following two archetypes:
1) MS taking control of something the community doesn't want them taking control of
2) Important open source third party library switching to a proprietary license
Rarely do you see drama centered around specific individuals like you see in the Rust or JavaScript communities. So I think that lends some further credence to your theory that the design goals of the language help foster specific cultures around them.
> I know that Ian Lance Taylor created several versions of generics that got shot down, which must have been frustrating.
I always felt like he wrote down those non-final designs more as an effort to discover & document why exactly each one wasn't good enough, so they might guide the future design(s). I think he was well aware of the various flaws and unwanted trade-offs, and wanted them to serve as a guide to the conversation.
So does Rust. And Golang also has good examples of bad design discussions with vitriol, such as the one about metrics collection. This is a silly comparison.
The drama around Go modules comes immediately to mind as a counterexample – and that one was a technical snafu that impacted many projects using Go. Pobody’s nerfect.
I took it as referring to the world in general, not Rust specifically. It happens every day in the news that someone loudly resigns to make their point. It's much less common that you see an article about how so-and-so spent five years of their life working hard to change a culture from the inside and finally is seeing results.
You can certainly try to view it that way, but I would submit that, at best, you're being overly charitable regarding interpretation when the very thread we're on is centered on discussing issues within the Rust ecosystem itself.
Oh, they're certainly meaning it to also refer to the situation at hand. I took it as "I wish we had more role models that would stay in and stand up, because the people loudly resigning in this case are copying others they've seen loudly resign."
lolinder is exactly right on what I meant to say (including what they said in the sibling post to this comment). But I hear your point, too, Klonoar. It's definitely worth pointing out that people can have good reasons for "going public" after realizing they couldn't fix things from the inside.
The "don't leave, stay and fix things from the inside" pitch is how the political schemers try to pull the tech talent back into an arena where they can be worn down into submission, so that their skills can be co-opted by those whose only real talent is to steal the productivity of others.
The only way to free a project from such entrenched rot is an ultimatum; "You can have the builders or the schemers, but not both".
Agree with you that in the case of entrenched rot there's not much that "stay and fix things from the inside" can do to help. I just don't think that the Rust community/leadership has gotten to that point. OP's blog seems to support that, too:
> I was able to reassure myself, by checking these private discussion places, that there were good people, fighting for the right thing to be done. That things weren’t irremediably broken. That there was hope for improvement in the near future.
“If you saw Atlas, the giant who holds the world on his shoulders, if you saw that he stood, blood running down his chest, his knees buckling, his arms trembling but still trying to hold the world aloft with the last of his strength, and the greater his effort the heavier the world bore down upon his shoulders - What would you tell him?"
I…don't know. What…could he do? What would you tell him?"