(joke in the title stolen from a redditor)
Context: some Rust kid vandalized cppreference.com today.
As someone who learned a lot from C++ and that now loves Rust, this annoys me.
That kid is an asshole because cppreference is doing the lordâs work.
Also, I know that language choice is one of the most important decisions when starting a new project but, personally, I work on a highly performance sensitive project thatâs written in PHP. If you think you need Rust to be performant or type safe then you donât really know what youâre doing yet. It makes it easier and increases theoretical limits - that is all.
An attitude Iâve seen a lot among software developers is that basically there arenât âgood languagesâ and âbad languages.â That all languages are equal and all criticisms of particular languages and all opinions that some particular language is âbadâ are invalid.
I couldnât disagree more.
The syntax, tooling, standard library, third-party libraries, documentation quality, language maintainersâ policies, etc are of course factors that can be considered when evaluating how âgoodâ a language is. But definitely one of the biggest factors that should be considered is how assholeish the community around a particular language is.
A decade or two ago, Ruby developers had a reputation for being smug and assholeish. I canât say I knew a statistically significant number of Ruby developers, but the ones I did know definitely embodied that stereotype. Iâve heard recently that the Rust community has similar issues.
The Rust language has some interesting features that have made me want to look deeper, but what Iâve heard about the community around Rust has so far kept me away.
I write Java for a paycheck, but for my side projects, Go is my (no pun intended) go-to language. Iâve heard nothing but good things about its community. I think Iâll stick with it for a while.
In my experience the actual rust community that youâll be seeing if you work with the language is actually incredibly nice and open minded. Itâs got a lot of autistic people and other minorities who are more emotionally mature than a lot of adults. Rust people can be smug sometimes talking to âoutsidersâ but once youâre in the community the problem disappears
But definitely one of the biggest factors that should be considered is how assholeish the community around a particular language is.
I think all of the factors youâve mentioned are extremely valid, but this is the one factor that I think should absolutely not count into whether somethingâs a âgoodâ or âbadâ language. If Iâm choosing which technologies to use for my next project, the question of whether it has a rude vocal minority in its community is AS FAR DOWN on my list as possible. Right next to whether its name is hip or whether their homepage is engaging.
A toxic community wonât help you in good faith when youâre running into issues, and this makes it harder to develop using a language with a toxic community.
Yeah, but the shittiness of a shitty community will come through in documentation that talks down to you and doesnât dain to explain things properly. And then when you go and ask a question because it wasnât well explained in the documentation and get derided for asking.
Fanboys are also likely to mislead (including in documentation) by downplaying caveats in libraries and such. Documentation can end up being more like marketing speak than technical reference.
You speak of âvocal minoritiesâ, but I donât think itâs quite as simple as that. Languages have cultures around them. (As do lots of other things. Video games. Hardware devices. Car brands. What have you.) If a language has a toxic community around it, it might be an indication that the people behind the language may lack the ability or motivation to maintain a better community. Or worse, that theyâre doing things that promote or attract the shittiness.
So, in short, I disagree with you. For one thing âeverything about this language is great except its community is shittyâ makes me suspicious that maybe everything about the language isnât great and it has a really fanboyish community that likes to suppress any (even legitimate) negativity. Where I have to, I use the language I have to use, but when I have a choice, a shitty community is generally a deal breaker for me.