Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Why I'm leaving the R community (ironholds.org)
65 points by Dawny33 on Feb 2, 2016 | hide | past | favorite | 112 comments


I wrote a reasoned, but critical, response to this guy and he edited my Disqus response with a childish personal attack before approving it. He justified it by saying my Disqus post history was about gaming and telling people they were overreacting. Take from that what you will.


Can you tell us more about what you wrote and what was edited? If the author is lying, it should be brought to light.


I suggest you read http://www.examiner.com/article/wikipedia-s-new-editing-soft... (especially from "His name is Oliver Keyes"). Our herald of sensitivity was previously known for outburst like

    [12:19:35 A] <Sophiie> hi, can a page be undeleted just to see what it once was?
    [12:19:47 A] <Ironholds> Sophiie, fuck off and die
    [12:19:50 A] <Ironholds> thank you
TBH, he looks more and more like a troll, and pretty talented at shit stirring. And removing people like that from your projects is best done early.


Ah, yeah. I understand perfectly why the decision "we're better of without you, bye" took like ten minutes.


I basically said that the concept of "giving head" had transcended a particular gendered relationship. In other words it had moved far beyond just being about a women giving head and that it was just about human sexuality at this point. I said his stance on the phrase was behind the times. It wasn't exclusionary, it was sexual and I think those are important to distinguish.

He edited my post to say I only cared about telling people they were overreacting and talking about games. I own a company in the video game industry. What do you think my Disqus history will have in it?


Code reference: https://github.com/wch/r-source/blob/b156e3a711967f58131e23c...

Personally It seems a bit of stretch to call that "exclusionary as all hell".


Crikey seeing this in context really brings home the triviality of this whole thing. The only reason somebody would be offended by this would be if they knew what it meant in the first place - it's plausible that it's accidental. Yes there is a case for making the change but in doing so you're acknowledging that it was a mistake in the first place (because an observer attributed it as such) and you're setting a precedent - are you going to have to attend to every prude that objects to anything? Anybody who is smart enough to read code should be smart enough to see this for what it is.

IMHO if this guy mounted a campaign on this issue banning was appropriate if a little heavy handed. A subtle talking to might be better but raising a bug is a matter of record, and that makes things a little trickier.


Or sexist, for that matter. Giving head is not limited to specific genders, if that even was the intent of that variable name.

It probably isn't about the variable name though, but about the response from the developer to the PR.


Sure. "Exclusionary as hell" is a stretch. In either case, I still think it shouldn't be in anyone's code base. There are some people who are offended by it and -- even though I'm not one of them -- the project can only lose by keeping code like this.


It's worth reading the comments on the article, as the author explains his position further:

  I am not saying "duncan is a sexist". I am not saying "this 
  language is sexist". I am saying "I suspect the end result 
  of decisions like this is to perpetuate a bias away from 
  the inclusion of marginalised groups, including women".
I'm not certain if that's true, but it seems like a reasonable discussion for a community to have. And if the immediate response to that argument is unilaterally banning the bug tracking privileges of the reporter and everyone who commented in favor of the bug, I wouldn't blame anyone for deciding that R is a poisonous community that they they no longer want to be part of.


It may look in innocent and reasonable by itself, but there's a history where someone starts something like this (changing pronouns to their favorite one, demand people are racist for using master/slave terminology, demand to kick someone from project because he said something on twitter, etc) and it starts an absolute shitstorm of various self-righteous commenters on github or elsewhere running a witch-hunt.

The standard practice for facing SJW lynch mob is to remove their ability to affect the project negatively, usually by making issues and comments contributor only (on github) and waiting for it to blow over because the Internet Hate Machine doesn't have long attention span.

It seems to me that the R maintainer just did this standard response.


Opening a bug about someone's embarrassing double-entendre in a non-native language usage and then asking everyone to comment is bullying and technically sexual harassment. Not wanting to be accidentally thrown into the situation of having made a statement that is misinterpreted as a sexual taboo isn't just a problem for particular genders.

Its all very fun to build pet theories about the reason for a lack of gender diversity, but doing it in official tools by casting attention on an individual for what is a really a random consequence of language that only a native speaker would even notice is the juvenile nonsense very similar to the problem to supposedly be weeded out. I would absolutely consider banning someone's access to official tools who did this with them, particularly when they clearly understood the actual situation.

If you aren't for a dedicated slang usage, then you also just let the proper usage stand when it accidentally still occurs or you at least don't make a fuss about your choice to change it. I don't even have kids, yet I know this very basic rule of not re-enforcing the power and humiliation of swears.


> And if the immediate response to that argument is unilaterally banning the bug tracking privileges of the reporter

Note that we only know one side of the story. Maybe the author has a history of stirring up drama and coming up with topics not interesting to the rest of the community (i.e. anything other than programming). If so, preventing further impact on the community is exactly the right response.


I think you are onto something, he is apparently known to create drama, c.f.:

http://www.examiner.com/article/wikimedia-foundation-s-olive...


If that reporting is accurate (I've no idea or any basis for judging) then yeah, the parent post is amazingly hypocritical.


Given the post and especially the authors comments on the blog, this seems probable.

EDIT: I mean, the author definitely knew that this is the thing that brings hate mobs on twitter, so by this blog post, he wanted to start a harassment campaign.

I can understand why they would kick out toxic people like that.


Agree 100%.

Some are very sensitive to sexism and political incorrectness and some just don't care/notice.

Regardless, a leader should encourage community members to voice their legitimate concerns. Duncan's actions were simply immature and unwelcoming. I don't blame Oliver for leaving and hope we see a public apology from Duncan.


Indeed. My first reaction on 'iGiveHead' was to roll my eyes ever so slightly as my immediate reaction would be that it's 1) not really sexist at face value (to me), but 2) inappropriate enough to indeed remove, but just because it's crass.

In regards to 1, let me explain. First off, I've heard people use it more than once as a thing men do to/with women, as little sense as that makes to me, sort of like my female friends talking about 'ladyboners'. Second, giving head is also something men do to other men. And finally, nobody that I know considers 'giving head' in any way a degrading thing these days.

But...

That's just my interpretation, and I'm probably pretty atypical in this regard.

And regardless of how I personally feel about this, the response to this kind of thing, as a leader, should be sensitivity and willingness to make people feel 'safe', especially if there's no real cost to fixing it. It seems like common human decency to be inclusive in such a situation.

If there comes a point where this kind of inclusiveness and sensitivity actually causes problems, well then it's perhaps a more difficult situation. But this seems pretty simple and straightforward, even for someone like me who personally does not see any big harm in 'iGiveHead'


My question in these cases is always this: what is the percentage of people who don't care/notice compared to those who are sensitive bunch is like 1-10% or even 20 or 30% then it's better just to ignore their sensitivities. It just takes too much time to appease everyone, and that is at best an idealist goal. If you don't like something and it's just you and a handful of people, well maybe just _deal with it_.


It's not a reasonable discussion. There is no reason that every single group of people has to have a continuous debate about gender and sex just because a few people are obsessed with talking about it insist on it.

The R community should talk about data science, not be subjected to constant demands and debates because a single prude is having a fit about it.


> "I suspect the end result of decisions like this is to perpetuate a bias away from the inclusion of marginalised groups, including women".

I don't understand this


Bringing up concerns regarding sexism are abruptly shut down and labeled "shit disturbing" by a man in charge.


Not everything is sexism, even if some people like to pretend it is. Giving head definitely isn't sexist (both sexes do it).


Here is the function in question [1]; it has arguments named "give.attr", "give.head", "give.length", among others. It doesn't seem at all a good idea to rename "give.head" to something else, as it would break the API and it would be inconsistent with how the other arguments are named. The R team devs were unnecessarily rude but the bug report was misguided.

[1] https://stat.ethz.ch/R-manual/R-devel/library/utils/html/str...


I'm struggling to understand why such a term in a codebase would be offensive. Even if it were intentional (which apparently it's not) I fail to see how it could be considered 'exclusionary', as claimed. Frankly, the author comes off with the baffling sort of self-righteous political correctness which scares me a little in it's reductiveness.

That said, this is obviously not the way to build a community. Kicking people out for this sort of thing sets a bad precedent. If enough people found this offensive to enough to back a change, then maybe it's better to accept that view as legitimate, even if it's not one you hold.

Of course, we only know one side of the story, so maybe there's more to it.


My guess would be that they wanted to stop this sort of thing before it becomes a real problem. There have been numerous examples of this kind of "sjw" behaviour influencing and even targeting big open source projects, and people become afraid of it (Sarah Sharp is the only name I can remember at the moment from such an incident). I don't know the people involved though.


Imagine if everyone in every culture, using every language on the planet reviewed millions of lines of code and then filed bugs for any word that offended them or could possibly be related to a sexual innuendo.

Was the variable name an accurate description of what it was used for or not? If it was, let it go. If it wasn't suggest a better one.

Opensource software is not the place to enforce your views on society on someone else.


My primary opinion on this matter is that "let's not create a drama". Creating a drama is, whether intentional, accidental, unexpected or not, very consuming and basically a lose-lose game. If not creating a drama has a serious implication for the project, the project has to think hard about that, but otherwise (especially like this situation where changing the variable name has no other effect whatsoever) I would just accept that. I think the precautionary measure taken by Mozilla [1] on the Brotli Content-Encoding is an excellent example.

[1] https://bugzilla.mozilla.org/show_bug.cgi?id=366559#c147


But the people can make you do what they want by threatening drama, basically using terror tactics.


Presumably if the general reaction whenever someone raised an issue involving bigotry was for everyone to instantly take on board what they were saying, you might be right. From my experience however, that is definetly not the world we live in. To be honest, even if it was, I think you need to draw a line between hypothetically possible and an observation of what actually happens in the world. The real question is, can you point out any examples of 'terror tactics' (in the context given I take this to mean people using bigotry as a reason for change without actually beleiving it is bigoted)? I wouldn't worry till then


I have clearly indicated that the project has to think hard in such cases. Not every drama can be avoided in advance. Just make sure that we don't intentionally create and keep dramas alive.


same. this could have been fixed silently for it was an unintentional mishap, instead he decided to make a big political point out of it, mailing everyone and consuming a big chunk of brain space out of the whole project for some days, then feeding the internet hate machine with this blog post.

in some ways, he's the one who brought the sexist tone to the whole conversation.

> our accounts had been banned and locked

also it irks me the wording, as there's a difference between "leaving" and being shown the door


That's a good point, yes.

The author could have sent a patch renaming the variable with commit message "oh come on" or "let's be profesional" and it would have probably worked, but instead he wanted to be a hero fighting against (probably not real) sexism.

It seems R foundation has no need for people who want to fell like a hero.


>Was the variable name an accurate description of what it was used for or not? If it was, let it go. If it wasn't suggest a better one.

>Opensource software is not the place to enforce your views on society on someone else.

While I completely agree, if you read the article he did suggest an alternative and submitted a patch.

Rather than the patch being rejected, he got banned from the community.

See below. Not a good look, but we only have one side of the story.

=== The second was a set of emails from Duncan Murdoch, President of the R Foundation and an R Core member, in which he dismissed my "bug report" (note the skeptical scare quotes he put on it) "about some variable name that you find offensive is clearly an example of nothing more than shit-disturbing" and stated that myself, and those who had commented in favour of changing it, were no longer welcome to participate in R's bug-tracker.


I did read the article. A developer in the authors words was "entirely proper, entirely reasonable", named a variable that describes what it does and filed a patch claiming it's "exclusionary as all hell".

Just the type of thing that will create drama, debate, and divide the community.

All because someone reads something into a variable name that wasn't intended... for a variable that is well named.

What's next banning unlucky numbers? Rating colors by political correctness? Favoring data structures because of their religious analogies?

How about saving bug reports for things that actually improve the application?


I don't find the use of the word fanny by Americans to be inappropriate, though it means something completely different in my sociolinguistic context. Even more similarly when a German colleague expresses her enjoyment of driving ("ich möchte fahrt") I'm not about to cry "filth" because one of the words sounds like a rude noise to my puerile mind.


I agree with you regarding the patch, and the name doesn't bother me in the slightest.

However I think Duncan Murdoch, being the President of the R Foundation acted extremely immaturely by blocking the accounts of all involved.


> Imagine if everyone in every culture, using every language on the planet reviewed millions of lines of code and then filed bugs for any word that offended them or could possibly be related to a sexual innuendo.

Slippery slope fallacy. Yes, protesting functions whose initials spell out a cuss word in Swahili would be silly and counterproductive. But no one has proposed that, or anything like that. This is an English-language code base, and there is nothing ambiguous about the English meaning of the phrase "I give head."


Exactly - "I give head" is clearly a reference to Herod's gift to Salome.

If we're looking for juvenile innuendo then presumably give.length and give_log are both also objectionable?


But by deciding to keep this people are “enforc[ing their] views on society on someone else”.

You cannot not act. Keeping the status quo is acting, too. Neutrality is just impossible and you have to decide how you want to deal with these issues in a graceful and fair way.


If there is an issue


"exclusionary as all hell" is such an overstatement it's hard to focus on the rest of the message in this post, but the response they got from Murdoch was completely out of line.

I would also be skeptical to contribute when one of the project's leads are so quick to ban and flog a contributor, regardless of their misinformed intentions.


While I thought the issue was a little silly at first, the project's response did sound like an overreaction. Though, after reading the comments, I wonder if they were perhaps already familiar with ironholds. The underlying attitude behind this change is awful.

> women do not trend towards [...] an absence of concern for those not of their background. Men (particularly cis, white men) tend to.


I find it ironic that his complaint was of "exclusionary language", when his own language looks like this:

> This does not mean "all men suck". This means "society's conditioning and understanding of what 'male' means tend to result in a condition of suck". It's toxic for everyone (including those men. Of who I count myself a member).


This reminds me of a PR merged into swift/master [1]. The PR renamed some "offensive" variables in one of the tests. It was merged almost immediately, even though it wasn't fully tested. We had a blast laughing at the stupidity of it all on Reddit [2].

[1]: https://github.com/apple/swift/commit/c2b5546512af24e52ed15c...

[2]: https://www.reddit.com/r/ProgrammerHumor/comments/3veu2t/swi...


I don’t really understand what’s wrong with using more inclusionary language. I’m so very confused by this attitude.

I mean, I can understand someone not viewing it as particularly important, but you seem to view it as very obviously ridiculous which is an attitude I really struggle to understand.

This seems like a tiny little harmless improvement of the world.


What's wrong is that the original terminology is both more correct and has been convention for decades. There really is no replacement that can convey the intended meaning. I really don't see how one can get offended by terminology, as long as the usage is not intentionally offensive.

What makes it all hilarious is the fact that the PR was merged almost immediately into MASTER without being fully tested first. It's as if not merging it ASAP would have started WW3 or something.


Indeed, I think you're correct in this.

You'll find two arguments against this in the wild – "we've always used that terminology," and "it's the only way to describe the relationship." I don't think either are that convincing.

I used to be pretty clear that I thought this was a stupid thing to complain about, until one day when I was presenting a small distributed software project to a group including non-technical people. I explained about the 'master' and the 'slaves', and at the end someone asked 'why did you use those terms? Isn't there something nicer we can use?'.

I realised that they weren't complaining because they were offended or anything, but because slavery is sort of not a nice thing to talk about – the fact that I was used to those terms in a technical context maybe blinded me a bit to the fact that others might find them distasteful. They were changed, everyone was happier, nothing was lost.


It is ridiculous because the meaning of master-slave in this context has nothing to do with exclusionary language and leaser-follower doesn't mean the same.


Furthermore, until we start actually running into the thorny issue of computer AI, it's consciousness and the ethical dilemma's surrounding it, the relationship actually is that of a MASTER and a SLAVE.

It's like banning Huckleberry Finn for using the word 'nigger', or Der Untergang because it's about Hitler.


in fairness as much as this iGiveHead discussion is the stuff of nonsense I have in fact been skirting around this nomenclature - coincidentally with leader/follower too - and I do agree that this falls on the other side of appropriate. It's not "Master" that's offensive, but "Slave" does carry some obvious negative connotations that are best avoided. As a society we don't "do" slavery any more and I do kind of feel that the usage of this terminology in anything but a derisory context should be discouraged.

TL;DR I totally agree that commonly used terminology that can be perceived as insensitive to some is best avoided.


May I ask who you think should be offended by the master/slave terminology? There are two possibilities in my view.

If you're black, I think you wouldn't give a damn about using the word in a technical setting that makes sense. Please correct me if I'm wrong; I'm not black but I'm using logic I feel my black friends would use.

If you're white and feel the word is insensitive, you're actually making a big deal out of it when it's really not your place to do so, which is ironic in my opinion. If you think not using the word where its meaning is used properly and in no way is intended to offend will somehow lessen the heinous and repulsive nature of the acts committed by your predecessors, then you're misguided.

Of course, this is the way I see it. Perhaps I'm out of my depth.


> If you're black, I think you wouldn't give a damn about using the word in a technical setting that makes sense.

Being offended by words without regard to context, meaning, or idea being communicated isn't really a race-specific thing, its a thing a certain subset of the population independent of race, gender, etc., does.

People in that group who are black or concerned with the black experience in America are likely to be offended by "slave" in any context (except, perhaps, an actual disapproving reference to the historical practice of slavery.)

People who are not in that group, even if they are black or concerned with the black experience in America, are unlikely to be concerned by the use of "slave" in this context.

(Since apparently we need to disclose this in this discussion, I am black. I am actually offended by people making a deal about things like this without reference to context and meaning, because it distracts from and trivializes actual racism, which remains a real and significant problem.)


So I feel I need to be clearer about my position, because it's being misconstrued as being a "race thing" - It's just to do with the fact that Master/Slave is innappropriate when it comes to describing a subordinate relationship. I am certain that the terminology emerged in a context (I'm thinking mechanical engineering for instance) where the slave analogy was a commonplace way of describing this but it isn't any more. Slavery thankfully is behind nearly all of human society now and it should stay there. We need to be making an effort to describe these relationships differently, and to use a set of terms just because "they've always been used" is just laziness. The fact that "some" people are offended by it (whether justly or otherwise) is just a supporting argument for this line of thought - not the sole reason.


> Slavery thankfully is behind nearly all of human society now and it should stay there.

If only. https://en.wikipedia.org/wiki/Contemporary_slavery

> We need to be making an effort to describe these relationships differently, and to use a set of terms just because "they've always been used" is just laziness.

Using terms that have well-established meanings in a particular context for those established meanings in that context isn't "laziness", and its not something that needs to change because the origin of the terms is an imprecise metaphor.

It might need to change if the origin is a metaphor that incorporates, e.g., blatantly racist or sexist, etc., assumptions -- which master/slave does not, even though the practice of slavery in some times and places was tied to institutional racism -- (though even there maybe not if the use and language is so distant that there is no immediate association with those assumptions despite the origin.)


Master/slave incorporates the definition of a supplicant subordinate relationship which is not appropriate for the context it is frequently used in. People just use it "because it's there". Boss/Worker, Leader/follower, coordinator/actuator and sender/receiver are all more suitable terms in the areas where they are used. None of them imply that one subsystem owns another or must be unquestionably obedient - in a system this kind of relationship is rare.


Good point. I never really thought about it that way.


I agree. First, in the context of computers and humans, or computers/systems and other computers/systems, the master/slave terminology is the most accurate.

So then the only real issue left is whether on a social/psychological level the words can cause pain. If someone is bothered by it, because they are bothered by it, then it's up for discussion and change. I also doubt that anyone is actually upset by the use of master/slave in these contexts.

So what's left is 1) people who for whatever reason find it necessary to get upset on behalf of a hypothetical other, which leads us toward lots of pointless drama, and 2) people who cannot distinguish symbols from their meaning.

A very similar issue that also seems to be particularly American (although I'm not sure) is 'forbidding' or 'taboo' words. In my culture (Holland) we don't have any words that even remotely carry the weight that a term like 'cunt' carries (I cringe even as I write it, because, well, American culture is big in Holland too). Sure, we have rude words. And using some of them offend people. And we have our practices that are being discussed and rightfully so.

But we have no words that are so bad that even neutral usage is socially punished.

And that strikes me as very sensible. The more weight you give something, the more power it has, and the more it can be abused by various parties.

Instead, consider how the word 'gay' has been, to a degree, actively defanged and as result lessened in negative power.

What bothers me the most is that I cannot help but feel that very real issues are sometimes coopted by people who just want to be righteous about things and pick fights. To me, that's almost worse than accidentally using offensive language, and definitely worse than doing nothing at all.

And then what bothers me is that I write this with the greatest trepidation, because the previous paragraph itself could be coopted and reinterpreted in various ways to prove that I'm a terrible person...

Can't we all just take a breath and remember Vonnegut's words:

"There's only one rule that I know of, babies - God damn it, you've got to be kind."

Can't we be kind and try to work on these issues?


Well master/slave could be changed with primary/standby or primary/replica in most situations, still we can change terms all we want people will find reason to be offended. Sometimes they have a point, often they should just go away if they are offended by something. Drawing the line right is responsability of the society, but the problem is hate group waves amplify only certain kind of extremists and almost never the voice of reason is to be heard within the stream of hateful posts.


I've actually used "master/slave", maybe a 15 years ago, and "primary/replica" is the first time I've heard something that really describes what we were doing. It actually fits better than "master/slave", because the primary wasn't giving orders to the replica, it was giving update data. I thought it was the perfect term.

But then I realized that "primary/replica" is offensive to the replicants out there (think Blade Runner)...


LOL! - I think if that were the case, and said replicants had been emancipated then you would have to be a little more careful with those terms. Not worth getting your fingers broken for.


Well that's just it .. I don't agree that master/slave is the most accurate terminology, in many of the places that it is used. It's a term that has emerged quite innocently from a particular cultural orientation.

I don't think it's the most accurate term because in many cases the subordinate actor ("Slave") is not "the property of" or entirely subject to, the coordinating actor ("Master"). Usually it is a matter of coordination, or of information flow, signalling path or perhaps merely a question of which process is accountable when a decision needs to be made.

In that light, Boss/Worker is another couplet of terms I've seen used that seems more apt.

But otherwise I agree with everything else you have said.


> If you're black, I think you wouldn't give a damn

You're not, and neither am I - it's not your right to say one way or the other, but it is my right to be prudent. But this isn't just a racial issue - it's one of generally accepted social mores. Language changes and evolves. Nothing is lost in the transition to more eloquent terms.

It's like when visiting Southern Africa a few years ago - whenever I asked for black coffee I was prompted "you mean coffee with hot water?" on a few occasions before I realised it's a politeness thing. As oversensitive as that might sound to my privileged ears it wasn't my place to argue - so from then on it was "coffee without milk please!" - as with leader/follower nothing was lost in the translation but I found myself getting fewer funny looks.


I agree, it's not my place to represent black people. Regarding your anecdote from SA, I find that a bit extreme to be frank. It's likely because the apartheid is still fresh on peoples' minds. However, I don't see how it connects with the master/slave example.


It connects, because selecting one set of terminology over the other makes little difference to you, but it might matter to somebody else - even if for reasons you're wholly unable to appreciate.


Hm... seems like the author was creating unnecessary drama about a topic completely orthogonal to programming, and then complained when s/he was prevented from creating more drama.

These are the people you kind of want to exclude from any community.


In the comments the author acknowledges the term is not gender-specific, but claims the term is "generally exclusionary"

A "microaggression" not aimed at excluding anyone in particular. Not even an aggression of any kind.

The mind boggles.


It's especially confusing because outside the US, sex is usually not considered wrong per se or sinful or whatever.


It's usually not considered wrong or sinful in the USA either.


Ironholds has a long history of creating drama wherever he goes.


To me, the problem this incident is pointing out is the toxicity of code review.

We speak about changing the name of a local variable used four times in the whole codebase. Was this that a big deal? Merge it already and be done with it. Easy way to make people happy to contribute.

Instead of that, people had to comment that change and explain why they don't like it, leading to confrontation, frustration and the departure of a team member. This is so typical.

The worst part in code review is that people are convinced they do the right thing. How being aware of changes and trying to do some peer work could be a bad thing? Well, it's basically commenting over and over other people work, leading authors to mistrust themselves and to the feeling of unfairness. Reading other people code is cool. Commenting it... well, you should think you have a very good reason to do that.


Are you proposing that the ability to comment on proposed changes is toxic? How exactly is a group of people supposed to come to a consensus on technical matters without the ability to communicate? Are you really suggesting that certain changes proposed by certain people get special treatment, immunity from discussion, and expedited merging to mainline?

Technical excellence in such an environment is impossible. Nobody's stopping you running a project that way, but if you tried to introduce this kind of discrimination, prejudice, and, well, privileged treatment into a project to which I contribute, I'd fork, and everyone who actually wanted to write code would follow me.


I don't get how you come to thinking that reading my comment.

It's not being able to comment that is problem, it's feeling that you have to comment.


Your comment calls "code review", the practice, "toxic". You go on to suggest that project maintainers "merge [the pull request] already and be done with it", suggesting that the normal review process not apply to this particular diff. You suggest that there should be a high bar for commenting on other people's code.

Your comment sounds to me like it advocates lowering the bar for merging of external patches. That's a sure way to technical inferiority.


> Your comment calls "code review", the practice, "toxic".

Oh also, I think it should be clarified.

I'm not advocating code review is a bad thing in itself and we should stop doing it. I think it could be done better, by internalizing the impact of a comment and measuring its cost before doing it.

I see doing code review as better than not doing it (because you read other people code). I see being moderate when it comes to decide if something is worth commenting as better than the usual practice of considering comments are cheap and we can just comment anything.


> Your comment calls "code review", the practice, "toxic". You go on to suggest that project maintainers "merge [the pull request] already and be done with it"

I'm with you until there :)

> suggesting that the normal review process not apply to this particular diff

If the normal review process is to feel diff should absolutely be commented, then yes, totally, applying it to such a small and casual diff makes what I feel is the ridiculousness of the process totally shine.

Note that I'm not saying the diff should not be read. I'm not saying either we should not comment other people code if we feel there is a problem with it. I'm challenging the fact that this diff should have generated discussion, and call the fact that it had a problem.

I don't think making teams more efficient lead to technical inferiority. And to me, the abuse of commenting code is all about inefficiency (regarding both productivity and sane relations between team members).


Homo, bi and heterosexual women and men can give head to each other as a happy adult consensual sexual act.

How the hell is this offensive to anyone?


Because I want it to be an offensive phrase.


If the author feels they can't be part of a community because of some code containing a suggestively-named (in their particular culture) variable, then that's their choice and more power to them.

The response from this Duncan guy was probably unnecessarily rude, and while I mostly agree with the content of his response, he certainly came across as a bit of a dick.

That said, I fail to see why we should care. A person was part of a community until they had a snit and left it. Okay.

(Edit: As rightly pointed out below, the author was effectively kicked out of their role after complaining about said variable. So fair enough, I'm upgrading Duncan & co. from 'bit of a dick' to 'complete dick who shouldn't be in charge'. In which case we should definitely care about a project's admin abusing their power in that way.)


If Ironholds didn't have an history of stirring shit for the sake of stirring shit, and being kicked of projects for doing so (see his Wikimedia Foundation history), you'd have a point.

No one was feeling excluded by that properly named variable (even if kinda unfortunate, but the most it can extract from someone is a smile), and certainly not the author. Also, filling a bug report was improper as it certainly wasn't a bug, so the quotes around "bug report" in the answer were well justified. The CRAN maintainer chose not to feed the troll by not engaging and cutting contact. It's usually the way to go, as they do it for the attention. This discussion is proof of his talent...


If the author feels they can't be part of a community because of some code containing a suggestively-named (in their particular culture) variable

This is very obviously not an accurate description of events. In reality – author feels (rightly or wrongly) offended, submits a patch to resolve this, and in response is essentially kicked out of a core position.

That's not just 'unnecessarily rude' – it's a stupid and broken way to run a community.

That said, I fail to see why we should care

Because I think generally we want to encourage reasonably welcoming open source communities, and responses like this seem generally disproportionate.


> essentially kicked out of a core position [snip] > That's not just 'unnecessarily rude' – it's a stupid and broken way to run a community.

The project owner was harsh, but I respect his pragmatism. The perpetually aggrieved are never satisfied. Anyone who complains about something as trivial as the variable name in question is someone who lives for attention-seeking and virtue signaling. It's better to immediately and fully separate yourself from that kind of person, even if it involves a short-term reputation hit, than allow that person to gain influence and endanger your project's existence.


I do understand why he behaved this way. Look at the recent attempts to coerce various high-profile projects into adopting a particular code of conduct. These attempts invariably introduce identity politics and drama into a previously purely meritocratic community, and result in a huge amount of wasted time and lost productivity.

Regardless, I don't think he went about it the right way. It would have been more effective to simply reject the patch with a note stating that the variable name was appropriate in context (assuming it was so).


I wish more project maintainers would emulate the good example Duncan set here. Identity grievance is a terrible disease for an organization to contract, but the prognosis is good with early and aggressive treatment.


Let's be clear – it is not pragmatism to kick productive members of the community out of it over minor issues. If anything, it's the opposite.

Anyone who complains about something as trivial as the variable name in question is someone who lives for attention-seeking and virtue signaling

As I've pointed out elsewhere, I find the complaint ridiculous. I'm also keenly aware that my view is not the only legitimate one; there appears to have been an number of other people who felt the same way about this particular issue.

It's bad community management to tell participants that their views are not valid, and to unilaterally kick them out. One of the authors points is important – it creates a perception that complaints or suggestions will not be taken seriously. And that's not useful to a community.


De jure you are correct re community management. But in the context of a person who has a history of stirring drama, stopping said person in his tracks is probably the better decision.


After a re-read, you are indeed correct. And I agree, that kind of behaviour does warrant warning potential contributors away from the project.


Very bad reaction from Duncan to revoke access to issue tracker b/c of this. They could have closed/rejected the 'bug report' and all would be fine imho. (If one keeps pestering then it's another matter).


Perhaps because I'm not living in the USA and I'm not part of its culture, but to me it seems that there is a very big over sensitivity to anything politically incorrect.


It seems to center around virtue signaling. Those who participate the most seem to be indirectly involved and locked in an arms race to see who can be more indignant on behalf of those who might possibly take offense, when and if they exist.

Its a bit insidious because usually there is some merit to the complaint (as in this case, the variable name was a bit embarrassing and should have been changed with little more than a self-conscious chuckle) but thanks to the cult of PC, everyone over-reacts.


I have put a lot of effort in NOT writing a very snarky reply.

The situation is becoming ridiculous. Get over yourselves. The world does not revolve around you.


The author is a man called Oliver, so it's even more ridiculous, because he is getting offended for someone else.

EDIT: parent formerly referenced the author of the article as "lady".


Yeah, I figured it out pretty quickly and edited. Sorry for not mentioning it. I'm very perplexed by all this sensitivity surrounding us.


Virtue signaling persists only because too few of us are willing to speak out against it. The good news is that I've noticed an increasing amount of opposition to political correctness culture in the FOSS world. We're fighting back, and we're winning, albeit slowly.


Can anyone explain the sexual reference? I am not a native English speaker


I leave you a link to the urban dictionary item for this term: http://www.urbandictionary.com/define.php?term=giving+head


I can fully understand being upset even though I'd probably reject the patch. It's not the content that is being debated that is sad. I don't mind either position, personally I lean towards the "don't care about so called microagressions in codebases"[1]. The way this request was handled would upset me a great deal though so I can understand why he reacted the way he did. R is cool, sad to see a good member of the community leave.

[1]"exclusionary as all hell" is too religious for my taste. Please change that language.


I've met Oliver (Ironholds), Martin (who wrote the code with the dodgy variable name), and Duncan (who banned Oliver and others from the bug tracker for "shit-stirring"). All three of them are smart, delightful people in my experience.

This strikes me as a bit of a storm in a tea-cup, but there is some background context worth noting. R's academic roots have created some interesting cultural aspects within the community. For example, in academia you spend a fair amount of time critiquing other people's work and trying to find flaws. It's perfectly acceptable to trash someone's argument, even to their face when they give a presentation. Once you accept that it's not personal but necessary for research to progress, it's OK, but to begin with its a horrible experience. Outside of academia, this is mostly just awful impolite behaviour.

That attitude of being allowed to correct people's arguments without bothering with any formalities has been a feature of the many aspects of the R community since its inception. In particular, the R-help mailing list and the R bug tracker can be scary places for new users. As the R community has grown beyond the confines of academia, this has led to tensions within the community. These sorts of cultural issues have long worried a lot of R users, and I can only guess that Oliver's position on the R Foundation Task Force on Women led him to worry about diversity issues more than most.

The other relevant aspect of the R community is that R is developed and managed by the R Core Team (https://www.r-project.org/contributors.html), which consists of 20 guys, about half of whom are actively working on R, and all of whom have day jobs beside being in R Core. They do a great job, but the R community is now several million people, which means that managing the mailing lists and the bug tracker - dreadfully tedious tasks at the best of times - must now be rather overwhelming. I've personally been (mildly) scolded a few times when submitting bugs that I thought were reasonable but members of R Core thought differently. While I think that Duncan's response was a big overreaction, in the context of him trying to optimize not having to spend time dealing with the bug tracker, I can understand why he chose to ban Oliver.

My opinion is that a lot of strife could be avoided if R Core delegated a lot more of the admin work - I'm sure there are plenty of grad students who could be persuaded into acting as first line support on the bug tracker, or moderators on a mailing list.


Isn't this entire complaint about the variable name heteronormative? Also, are we supposed to assume that women are somehow more prudish about things that remind them of but aren't referring to sex acts than men are?

Just because someone can imagine a hypothetical problem doesn't mean it's an emergency that others need to worry about.

Eventually all code will be reviewed by Beavis and Butthead, and if they can manage to find anything to huhuhuh about, it will have to be changed. "Huhuhuh, that said 'Insert', huhuhuh."


In Germany police (or any governmental authority in fact) has to use the "mildest effective method" to deal with some contentious situation. For example, it is illegal to water cannon the shit out of say loud pensioners petitioning for more public parks.

Regardless of how you see the issue with the variable name, the action taken by Murdoch is moronic, abusive, and over the top.


We only know one side of the history


It's really important to kick these people when they behave this way and we need to start supporting this.

If you contribute to the code, you have a right to comment, else fuck off and go back to leeching.

Start by actually giving to the community rather than finding faults that waste peoples time who are creating things.

How much time will this destroy from the R core community.


This is going to keep happening. While I respect a project maintainers right to decide to what extent language should be policed in their own project, the pragmatic thing to do is probably just quietly merge.


I am a man, and I don't understand the "microagressions" word, and I usually protest anti-men ("feminists") politics (like for example the fact that in Spain, by law, for two exactly equal murders you will be fewer years in prison if you are a woman). But in this case the R Foundation has acted as sexists.


I usually protest anti-men ("feminists") politics

I'd point out that this 'anti-men' is not really equivalent to 'feminist' and you might want to reconsider that position.

But in this case the R Foundation has acted as sexists.

It's hard to say this is anything to do with gender at all – the author is a man, the 'accused' is a man…


I know anti-men does not mean feminist. I am a feminist, I'm pro gender equality. Anti-men are not feminists, they are "feminists", with the quotes.


I don't think he is analytically equating both but stating that they empirically are.


> The second was a set of emails from Duncan Murdoch, President of the R Foundation and an R Core member, in which he dismissed my "bug report" (note the skeptical scare quotes he put on it) "about some variable name that you find offensive is clearly an example of nothing more than shit-disturbing" and stated that myself, and those who had commented in favour of changing it, were no longer welcome to participate in R's bug-tracker.

> I independently confirmed that our accounts had been banned and locked - as had the bug, and replied to Duncan explaining my thinking and motivation and asking in what capacity the ban had been made.

> The variable name is still there. I never got any reply to my email.

This bit needs to be emphasized, because the incident is invariably going to be spun as one over-sensitive prude throwing a temper tantrum because he didn't get his way. We need to keep focus on what actually happened: Keyes pointed out something he perceived as a problem, going out of his way to be polite and non-accusatory; Murdoch punished and censored Keyes and anyone who had publicly agreed with him.


This is not censorship, like, at all; people get a free speech right, not a feeling inclusion in any community right.


But we don't know what actually happened. Perhaps you can keep your judgement for AFTER you hear both sides of the story?


Keyes' story was pretty clear and detailed; I don't see much room for misinterpretation. I suppose it's possible that he's outright lying and the locked bug he linked in the article was actually Viagra spam, but I don't think it's reasonable to suspend all discussion on that basis.


Or perhaps it went something like this:

A person who has a long history of creating drama wherever he goes sees a very aptly named argument with siblings which follow the same nomenclature. The person opens a bug report to change the name of said argument because he perceives some grand social injustice with it. This person is rather impatient so he hammers it, effectively spamming with emails the maintainers. But that's not enough, he hammers the mailing lists and contacts directly the (very busy) maintainers just for good measure. He doesn't get what he wants because he is being obtuse and ridiculous, so he decides to elevate this to the head maintainer and emails him directly, insisting actions to be taken to indulge his caprice. Maybe he even posts on twitter to get other people with nothing better to do on his side and exert pressure. Maybe, just maybe, this person feels excited and warm inside as he posts on twitter. He did it again. People will engage in meaningless rhetoric about things that are not really there and he is center of it all. Oh, the hours spent going back and forth and back again and all the ATTENTION.

But the head maintainer sees right through it and will have none of it, so he just blocks this person from stirring drama YET again in the future.

Not saying this happened, just fyi, but it's possible, even probable, one might think. And after all, here we are, creating rhetoric about things of absolutely no significance whatsoever.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: