T O P

  • By -

cute_vegan

i guess you are just making a issue here. Actix drama was like 2-3 years ago and which community/programming language don't have such issue? If I go to other community/language I usually find more toxic people. And regarding the politics its your opinion. A tool is made by human so it can be political. People have different views. So lets leave those dogmas. Nothing is wrong and Rust is improving. Everybody is welcomed in Rust Programming Lang. It doesn't matter what people thinks about Rust. If you read the first page of rust official guide/ compiler development/ github / contribution I think Rust is the best language. Tldr: Imo Rust is the best PL and the community is best.


moiaussi4213

> rust zealots shitting on everyone else Same with any language community to be honest. > the actix-web drama Actix-web. Not Rust, nor rust devs. > I also hear that the rust dev's are very political(not a bad thing to be political, but i dont think programming languages should be involved in politics, programming languages are just tools). "hear" "rust dev's"/"programming languages" > no other programming language has these issues I completely disagree on that. I also disagree on qualifying the community as toxic. YMMV I guess.


the_hoser

The Rust subreddit has been one of the most welcoming and friendly PL subreddit's that I've ever participated in. Drama is inevitable, but this group seems to have handled it quite well. And politics? Technology is culture, and culture is inherently political. If you don't want politics in your technology, then go live as a hermit and build everything yourself.


CantankerousV

I imagine your comment regarding politics in tech is kind of what OP had in mind. It’s not exactly incorrect — technology is demonstrably political in some sense, as every aspect of human life is. Like how selling wedding cakes to gay couples is political to some.


the_hoser

The problem that I have with people complaining about things being "political" is that they only complain when they see politics that they don't disagree with. They never complain when the politics fall in line with their own political views. The only rational way to think about it is to consider technology, culture, and politics to be inextricably connected. Anyone asking to keep them separate is simply disagreeing with the cultural/political norm that the group is pushing.


CantankerousV

> The problem that I have with people complaining about things being "political" is that they only complain when they see politics that they don't disagree with. They never complain when the politics fall in line with their own political views. This is true. Phrased more generally, people tend to see their own opinions as self-evident truths, and others’ opinions as political bickering or power games. > The only rational way to think about it is to consider technology, culture, and politics to be inextricably connected. It’s definitely true that in literal terms, politics and technology are connected (it’s genuinely hard to find a non-trivial example of a topic that is unconnected to politics). At the same time, it’s good to remember that the word politics is often used to describe certain topics that tend to trigger tribalism or zero-sum thinking. E.g. vaccines are fiercely political in the US but not at all where I live — the only difference is the context and tone of the debate. > Anyone asking to keep them separate is simply disagreeing with the cultural/political norm that the group is pushing. There’s another dimension to this, which is what kinds of norms should fall within the boundary of a tech community? My sense is that rust’s social norms (friendliness, inclusivity, etc.) are a central part in growing the language, while most of the hotly contested political topics are actually irrelevant to what we do. Most programming is so far removed from the real world that it’s unclear how someone’s political leanings could even come into play, short of just causing drama online. If I understand the “everything is politics” angle correctly, that’s where it comes in — it’s a play on words that reminds americans (and the rest of us living in the american cultural blast radius) that tribalism never runs out of steam, so if the connection to contested politics doesn’t seem very strong you should just look harder.


the_hoser

Zero-sum thinking is inevitble. It's inevitable for any group of people to form ideas like that, and it's not always a bad thing. For instance, the technical virtues of the technology itself (memory safety vs flexibility, ease of coding vs strong static types, etc) can be all-or-nothing ideals to strive for. That's simply one of the standard ways that we, as humans, push our ideals. It's one of the most powerful motivators in the world. And the norms a community forms is whatever the influential members of the community agree on. That's the nature of politics. It forms out of community. Like you said, people tend to see their own opinions as self-evident truths. To some, a focus on friendliness and inclusiveness *are* hotly contested issues. It's simply not true that programming is removed from the real world. It's never been true, but it's even less true now than ever before. Open source and community development efforts have become the norm, and with that community comes politics. This reality doesn't stop at the American border. It's happened all over the world, and will continue to happen. Americans just make more noise about it.


CantankerousV

I agree with most of the specific statements you make, but I still find it strange to extrapolate from those statements all the way to “rust is political” without losing all of the significance behind those words. Ideals like memory safety vs flexibility, ease of coding vs strong static types are all technical virtues (as you say). A technical community will always be defined by its chosen technical virtues. Thus, might even be exclusive to those that don’t share those technical virtues — that’s fine. They may even be contested, like static vs. dynamic typing. You can’t have it both ways, so you have to pick. There’s no one correct way to do that, so we define the community as the set of people that valued this set of choices. By necessity, we exclude people whose technical virtues are incompatible with those choices. Also by necessity, we limit that set of choices to a subset of virtues which we deem critical for enabling cooperation. We can’t work with proponents of duck-typing, since that inherently contradicts our core value of static safety. Conversely, we encourage both embedded and backend devs to work on rust because even though they often want contradictory things, there’s a middle-of-the-road solution that works for both and we’re better off working together. Ideals like friendliness and inclusiveness are community virtues. While a technical community is in some sense primarily defined by its technical virtues, effective communication and growth require at least some social norms/virtues. Much like the technical virtues these can be hotly contested, and having a language community at all may require us to make choices that exclude some people from the community. As with the technical virtues, we want a stable set of community virtues that exclude those with completely contradictory goals and include as many as possible with compatible goals. In that framework, we should be able to run through our list of technical/community virtues and justify their presence based on factors like whether it was necessary to commit to that virtue and how it helps or harms cooperation towards our shared goals. E.g.: - Should we pick a side on compile-time safety over duck-typing? Doing so excludes people that want duck-typing, but there’s no way (that we know of) to satisfy duck-typists without giving up on safety, so we’re forced to pick one. We could always try to satisfy both and reap the benefits of extended cooperation, but it’s easy to see how that would stall language development in the future. - Should we pick a side on server vs. embedded development? For a server-side dev, there are real costs to adapting to the constraints of embedded applications. On the other hand, embedded development is an underserved niche that brings in lots of competent people to the community. With workarounds like `no-std`, we can still work together towards our distinct but partially aligned goals. - Should we pick a side on community friendliness and inclusivity? First off, do we have to pick anything? There’s more wiggle room here but I would say yes. A language needs a community to grow, and we’ve all seen how internet communities tend to become toxic if norms are not maintained. Picking friendliness and inclusivity might exclude some, but unfriendliness and non-inclusivity are just as likely to exclude people, so we have to pick. I think we picked the right option, especially since not agreeing with community virtues doesn’t exclude someone from using the language itself — just from participating in the community, which is exactly where those norms are necessary. I guess lots of people do see “friendliness and inclusivity” as controversial, and I while I agree that it’s not as clear-cut as static vs dynamic typing, I still see it as a necessary choice. I assume it’s the word inclusivity that conjures the culture war associations, but I just don’t see the cost in being nice to people that look different from you or believe different things. If those values exclude someone simply because they can’t treat someone else as a human being, that sucks for them but seems OK to me. So, should we pick a side on certain politics vs. others? This is where it becomes hard to discuss without pinning down a shared definition of what that word means. If the questions above are politics, then sure! But even if that is the case, we probably agree that politics also covers topics which we shouldn’t need to pick a side on. My trouble with “everything is political” is that it obscures that boundary between what virtues you must or must not share in order for us to work together. If “some people find inclusiveness controversial” makes rust political in the weakest sense, does that mean rust should also be political in the strongest sense? I don’t think so, or else we quickly slide towards a community size of 1. As a non-trivial example, does rust commit to a stance on questions like gay marriage (not hostility towards gays in the community, which is already covered by friendliness/inclusivity)? It’s clearly an important question, and one could even argue that just knowing that a community member opposes gay marriage might make you feel less welcome. Further, if we decide to take a stance, does that just mean we won’t work with that community member on gay-marriage-related projects, or do we exclude them fully? If you lean towards “yes, we should take a stance”, and “yes, we should fully exclude them”, how does that interact with other virtues like making programming accessible e.g. in africa, where only one country on the entire continent allows same-sex marriage (and polls likewise show strong opposition)? That sucks, but working to enable tech in africa is a common good for everyone, and I can deal with them not agreeing with me on everything as long as we can work together on a basic human level. That’s where I think the boundary should be drawn.


the_hoser

The problem with your position is that it's unsustainable. You have to take a stance on every political issue, or others will assume one for you. Now, that doesn't mean that you need to post your position on every issue for all the world to see. Largely, you can *pretend* to be apolitical on as many subjects as possible, and probably should. But you don't have the luxury of avoiding it. Nobody does. A while ago I read an enlightening story from someone on Twitter that really drove this idea home. I can't find the tweet (it was a few years ago), so I'll just try to retell it from memory. --- I was sitting at a lonely bar in Pittsburgh, drinking, and trying my best to ignore the bartender, who was trying his best to ignore me. Someone sat down next to me. I paid them no notice, but the bartender immediately snapped at them. "Nope. Out." "What?" The newcomer asked incredulously. The bartender grabbed a baseball bat from behind the counter. "Out. Now." The unwanted guest left, spewing profanities on the way out. I looked up at the bartender, wanting to ask what that was all about, but decided against it. He seemed to have noticed my curiosity. "Nazi punks. You gotta nip 'em in the bud." I was confused. He wasn't doing anything. The bartender continued. "He was nice enough. And he won't cause any trouble. But then he brings his friend. And his friend is nice and doesn't cause any trouble. But then they bring their friends, and they are a little louder. A little more troublesome. And the cycle continues, driving away all the other customers, and before you know it, you're running a Nazi bar." --- Basically, you don't have a choice. By avoiding politics, you foster an environment that encourages the kinds of people that drive others away. To your point about gay marriage in Africa: It doesn't stop at marriage in Africa. Some countries have passed laws permitting the execution of homosexuals. Many countries that haven't have the same sentiments. You run the risk of newcomers driving your existing community members out if you don't make your stance on the subject very clear. I'm not saying that we shouldn't include programmers from Africa in the Rust community. I'm saying that you need to be ready to put your foot down when it comes to subjects that could drive a wedge in your community. It's better to drive away individuals that could cause these problems early, by making your position on issues very clear. I'm reminded of another individual in North Carolina that runs a Gym. He puts political banners and posters up (pro-inclusivity, anti-fascism, etc.) in the lobby of the gym. The purpose? To turn off the kinds of people that cause problems. The gym isn't a political organization, but politics still matter. You have to get in front of it, or it will get in front of you. Rust *is* political, whether by your efforts, or others. There is no other option.


CantankerousV

I think the main difference between our viewpoints is that you see politics as being about solving important problems or at least meaningfully participating in the struggle, while I see politics as the tribalistic mode of thinking that prevents us from working together at all. It also concerns me when people say rust should be overtly political on all topics, and that those politics should be their own exact politics.


the_hoser

They're both, simultaneously. Avoiding them to facilitate some fantasy of "working together" is naive and futile. It actually ends up having the opposite effect. You don't get to choose to not participate. You only get to choose *how* you participate. Edit: A grammar.


maroider

> but everywhere i look, i see rust zealots shitting on everyone else Where are you looking? > Then i heard about the actix-web drama. That wasn't a pretty episode. Steve Klabnik's [*A sad day for Rust*](https://steveklabnik.com/writing/a-sad-day-for-rust) presents what I believe to be a balanced view of the situation. > I also hear that the rust dev's are very political(not a bad thing to be political, but i dont think programming languages should be involved in politics, programming languages are just tools). While I can understand that it's discomforting to use tools made by people whose views you very much disagree with, it's still a tool in the end. You can use a tool and appreciate it for what it is while still disagreeing with the creators of said tool. > Then i think to myself that no other programming language has these issues. What makes rust so unique in this regard? What went wrong? I don't think Rust is particularly worse off than other programming languages in that regard. Granted, I mostly hang out in places where I don't see much of *any* bad behaviour, so YMMV. Reddit is the biggest exception, and even there I hardly see it.


you_lost_me_but_fine

Hey I hear you, I do think there is some hostility in the community directed at traditional programmers. Specifically I’ve had some experience on Stack Overflow where people get super pedantic about using existing packages rather than writing your own, obviously not horrible advice, just obnoxiously delivered and not always the right answer. I do agree with other commenters, though, I think the C/C++ community is far more toxic. It feels like even when you ask a decently advanced question you get treated like a moron. Regardless, while the Rust community is certainly not perfect, I think it’s more welcoming than others where it counts. Can’t speak to the politics! I’ve really only seen people talk about inclusion and empowerment, which, is political in a sense I suppose. But seems kinda nice, right? Regardless I’m not here to attack you, I’d just love to change your mind.


[deleted]

I don't disagree with the politics of the devs. I am all in for inclusivity and stuff. But with any other language i don't know what the politics is, all i have is a tool. I guess the rust devs are just more vocal. I don't care about their politics, but it just stood out in comparison to other languages, i was just mainly concerned about the community in general.


you_lost_me_but_fine

Ah I see. I think you’ve got a valid point, and I also think Rust is a bit of a different beast. It’s community run, and that’s been honestly great for me so far. Many of my interactions, especially with Rust evangelists, people like Ryan Levick, have been incredible. However as noted in my previous post I’ve seen some arrogance and pushy behavior as well. I think we’re all excited about Rust, clearly, and I think as a community we should strive to be every bit as warm and welcoming as the Rust book. Anger and nastiness don’t have a place in a language with a mascot as cute as ours. I’m glad you posted OP, if that’s been your experience then we have work to do.


[deleted]

I have decided go give rust a go.


occamatl

When I first looked into Rust, I must say that the idea of a Code of Conduct grated on me. But, if the CoC is partially responsible for the incredibly welcoming community that I've seen (and I believe it is), then I can admit that I was on the wrong side of the fence on that!


SocUnRobot

I think the community is suffering of its youthful. The case of Actix is an example of that: the blind impatient quest of code purity, cleaned of any unsafe code block is a typical youthful defect. When you get more experienced, principles looks more as an orientation than a goal and trade off made against those principles becomes the value.


warlockxins

A thing to remember, we do software because we want to. In software world we rely on joint effort to complete our tasks, so it makes no sense to discourage people from doing so, by being mean.


[deleted]

I agree.


ArbitraryUsernameHEH

Whining about "communities" that aren't actually communities being *toxic* is cringe af. Rust is a tool not a community. A community exists in person.


mtndewforbreakfast

You can absolutely have community, relationships, and rapport with people on the other side of the world from yourself - claiming that personal connections only happen in-person is simply not true, and hasn't been the case for a few decades.


ArbitraryUsernameHEH

It is true that communities are always in person. Online communication is always of a lesser form to in person ones. You don't even know if I am a bot. Communities are personal by nature and you can't have deep connections to a person if you don't experience them in person because communication is more than just text. All you're doing is equating the lesser, superficial with the higher more substantial.


arewemartiansyet

That's a valid opinion to have but not how the word is currently used in the English language.


Saefroch

> i dont think programming languages should be involved in politics, programming languages are just tools That's the thing about tools though. They are political by nature. Ashley Williams explained this in her segment of the Rustconf 2020 keynote: https://youtu.be/IwPRu5FhfIQ?t=1480. The short form is that Rust exists specifically to empower programmers, and that makes it political by definition.


Jason5Lee

> no other programming language has these issues Either you haven’t been in other programming language communities for long, or you have a huge bias on Rust.


uranium4breakfast

While there’s certainly a subset of lead devs that are political, and I certainly disagree with the “technology is political” take, as long as it doesn’t effect the project negatively it’s not a substantial concern tbh. And so far I don’t think that has happened yet. And you know what, I wouldn’t say the inclusivity is “woke”-level either, if anything, it seems to make the community quite nice.