105 comments

[ 5.0 ms ] story [ 164 ms ] thread
Seems like we are back to node.js vs io.js (Ayo.js) war :D
This is purely political. There's zero technical motivation.
A few weeks ago, concerns were raised by several TSC and CTC members regarding issues they had with @rvagg's interactions in the Github tracker and Twitter.

The specific issues that were reported include:

[Note: the specific list of issues has been removed at the request of several core collaborators who felt that listing the issues was not fair to Rod. This post was made with an effort at full transparency and with no ill intent towards anyone. No additional harm was intended by listing the issues - jasnell]

Ok, so what did they do? Does the announcement say?

EDIT: It looks like some of the allegations are at https://twitter.com/ohhoe/status/899748838302302212 but I'm having a bit of trouble parsing it.

Would it be possible to get "They said X, which is inappropriate because Y"? I don't know enough to understand why "apologizing to a contributor who had been repeatedly moderated" is bad (or what it even means, really).

On the other hand, I don't want my comment to be interpreted as a dismissal, or to put anyone on the defensive. I'm just asking for more info.

Here's a screenshot of the original posting to restore context: https://twitter.com/maybekatz/status/899760806551666690
I can't figure out what the issue(s?) is. What was the context of the moderations and associated apologies? And was another complaint that he was promoting specific companies to help them win more business within the Node community? And I guess he doesn't respect the concept of a Code of Conduct?

Maybe I'm dense but it's not exactly Damore level stuff here.

"Professional Mantagonizer."
The issue is that people have apparently on many occasions said "Hey Rod, don't do that, it's against the CoC (code of conduct)" and his attitude has been "I don't care about the CoC, I don't believe in CoCs, and I'm important enough that you can't touch me." This creates a really difficult environment for completely non-SJW-related reasons (I am very sad that people keep treating this as a social justice issue).

Codes of conduct are only meaningful if they apply to core contributors with all the more force than occasional contributors. The chief accusation lobbied against a CoC is "oh you just use those to go after people you don't like," much like, say, the police sometimes use US law. The only security against this accusation is that the CoC is applied with more forgiveness at the lowest levels and more stringently to the people-at-the-top. It's not social justice; it's consistency.

Admittedly I think a bunch of HN would like the anti-SJW approach of "let's just burn the CoC and forget that it ever existed," and in that sense I suppose that it is "social-justice-ish", but these are orthogonal concerns. The one concern is that members of the Node.js CTC are beyond reproach for shitty things they do; the other concern is defining clearly what things are shitty.

The issue is that people have apparently on many occasions said "Hey Rod, don't do that, it's against the CoC (code of conduct)" and his attitude has been "I don't care about the CoC, I don't believe in CoCs, and I'm important enough that you can't touch me."

The accusations would carry more weight if they were accompanied by links to examples of their behavior. At the moment, it reads like you're quoting him even though he probably didn't say that.

https://news.ycombinator.com/item?id=15079139

He had the audacity of standing up against black-rimmed eyeglass freedom fighters. How DARE he!

How DARE he suggest a code of conduct is bullshit and infesting projects left and right. I deleted my twitter because these goons are known to stir up shit when there is none.

Bleh, will this ever get better? http://archive.is/f2KWf

Note that the fork is just political grand standing. Look at the issues lol https://github.com/ayojs/ayo/issues

I'm pretty far on the sidelines here but I don't really understand the CoC hate. Code of Conducts feel like unit tests for a community along with a plan of action if one of those tests fails.

Just like there are bad unit tests, I'm sure there are bad Codes of Conduct, but on the whole it seems like a positive thing to clearly state how things should go in a community.

I've seen it multiple times: A project is humming along, lots of contributors and in pops this stranger that has no ties to the project whatsoever with a demand for a CoC. They also happen to invite their twitter swarm to the thread and demand a CoC or else they support some $horrible_group.

Example: https://github.com/opal/opal/issues/942

If members of your community are feeling discouraged to the point that they're asking for a CoC, it seems like something worth taking notice of.
I think the objection comes if the people asking for the CoC are from outside the community.

Of course, the argument can come that there's not going to be much people inside the community asking for a CoC because they're obviously comfortable with how things are running, or they wouldn't keep contributing.

Doesn't seem like an easy call either way.

I mean, that's not what has happened here; the CoC has been around for a while. What's happened here is just that there is someone who is "above the law" that the CoC provides for and a bunch of others are just like "we don't support that, if we are going to carefully abide by the CoC then we don't want to work with folks who flagrantly disregard it and get away with it because they have a position on some committee."
I read that thread and ... I see that the people working towards a CoC are the calm, reasoned ones whilst the anti-CoC people are the rabid trolling libertarian nonsense "WHAT ABOUT THE MUSLIMS?" bullshitters (ie the very people you don't want in a community.)

You may have shot your own foot with that link.

The late Pieter Hintjens had some thoughtful criticisms of CoCs: http://hintjens.com/blog:108

From my understanding, he's concerned about harmful assumptions sometimes made in them and also how the policing of them can be abusive.

Trigger warning: link contains ESR content.

EDIT: my first ever flagging! I feel so proud. Thank you to everybody. The list of credits is long, but I'd like to start by thanking my parents, for bringing me up properly...

(comment deleted)
This Rod guy looks like to be a real terrorist, wow. I'd be so scared if he lived in my neighbourhood.
[citation needed]
I don't know enough to understand why "apologizing to a contributor who had been repeatedly moderated" is bad (or what it even means, really).

I think it means the contributor said something that was not allowed, got moderated, and then "Rod" apologized to the contributor that he was moderated for that.

Basically, undermining the moderation philosophy.

I'm not sure that's what happened, but it's the only way I can make sense of that statement.

The previous submission was flagged:

https://news.ycombinator.com/item?id=15078995

(I don't know why it was flagged -- I only noticed the story, I didn't read it.)

The comment threads about this turn into a disaster of people yelling about SJWs and so forth, would be my guess.

Edit: yep, happened again

The discussion was going badly for the political enforcers, thus the post was swiftly flagged and removed. Expect this one to go the same way, because they really don't have a good case here.
This one got flagged as well. Oh well.

edit: and it's not because of the story, it's probably because of the comments.

Maybe it was flagged because the broader technical community doesn't give two shits about some perceived internet slight and is not interested in childish politics infesting software projects.
there is no real technical reason for this fork, which is why everyone will just keep using node.js
Unless people see the code of conduct as enough social reason to move development to the fork.

Then there will be a technical reason because that's where the good new development happens.

It's not clear to my enough people loved over for that to be true. I'm not sure I even have a grasp on what the incident that trigger this was.

It would be naive to think that people move from x.y.z because of social reason. Most people don't care about those issues.
I was referring to the developers. For them the social dynamics of the project are very important.

End users will (usually) go wherever the software is better.

I think I understand why they forked Node.js, but what I don't understand is what they hope to accomplish. io.js implemented features that node.js didn't have, but all ayo.js has done is replace the word "node" with "ayo". How does forking the entire project help with protesting this perceived break in the node.js code of conduct?
ayo thinks that having a code of conduct will lead to a higher quality of contributor, thus higher quality library. The thought is that, if we have a code of conduct, more people will be interested in joining (because the "rules of engagement" are well defined, so people know what to expect when they join). And if more people join, we'll be able to do X better, faster, etc. etc.
By creating a project that is entirely focused on rigid enforcement of political views, what you will actually do is only attract the people who are in it for the politics, not the code.
Well Node.js already has a CoC accompanied with various institutions such as "The Node.js Foundation Technical Steering Comittee"[0]. It's just that some aren't happy with how the comittee has voted. The claim that Code of Conducts lead to higher contributions gets repeated all the time, yet no one has ever shown any supporting evidence AFAIK.

[0] https://github.com/nodejs/TSC

The abstract belief is that there are actually a ton of people who have felt systematically worn down and excluded from the community, both by this one person's hostile attitude and the broader problem of the CoC being used to attack "people we don't like" rather than being applied fairly. The claim is that Rod's full spectrum of behavior (beyond even the particular complaints raised) would have merited serious reprimand were he not in a position of power and authority, whereas the people on the core committees etc. should be more accountable to the community values than the occasional contributors.

Given that these people are excluded by the biased application of these rules, this forms a space where they can feel more welcome as those rules will be applied fairly within this space. This should encourage novel solutions and contributions to Ayo.js which of course right now Node.js is free to merge in -- but the people who work in Ayo.js won't have to deal with the perceived inconsistent standards of Node.js or the perceived-as-hostile personalities that can only make it in Node.js but not Ayo.js.

In general forks are not bad things and being 'forkophobic' is a sort of 'open-source smell'; see Bryan Cantrill's talks on forking illumos. I don't think anyone is ready to step up as a BDFL for Ayo.js just yet, but I don't think it's out-of-the-question either.

(comment deleted)
The only thing I see happening is that it will last for a time, then Ayo will be left in the dust and unmaintained will node.js will move along just fine.
(comment deleted)
I've still yet to hear an instance of what the guy from node did wrong except criticize code of conduct policies.

Everyone just clamors about the "code of conduct violations" and it isn't clear what they are.

So they're forking because they failed to kick out a guy for unclear conduct violations?

(comment deleted)
The left always eats itself. Can't believe I can't even find out what he was accused of. Did I miss the show trial? I guess the tribunal already voted.
But, part of the reaction that led to the fork included people specifically saying the TSC hid behind the Code of Conduct when choosing not to remove Vagg from Node. The idea was basically that you should have goals in addition to a CoC, and the CoC is only valid insofar as it helps the project achieve the goals.

This sounds reasonable to me on its face. But, I wonder if this is a refinement of how a software project should be governed, or just the latest step in a neverending cat-and-mouse game: We have bad behavior and propose a mechanism to address it. Then the mechanism becomes normalized. Then it's eventually used in a fashion counter to its spirit. So a new one is proposed, wash and repeat. Seems like we're moving from "adopt CoCs to defend against shitlords" to "only shitlords care about the CoC."

This quote from one of their issues is pretty much all you need to know about this: "I'd be open to re-merging if and when the problems plaguing Node.js are resolved. Problematic people removed; ..." (1)

This isn't another io.js, it's some stupid political bullshit. Their issues read like a comment chain on Tumblr.

1) https://github.com/ayojs/ayo/issues/4

> "I'd be open to re-merging if and when the problems plaguing Node.js are resolved. Problematic people removed; ..."

:D I guess it can be merged then.

People... removed... people... removed... people... removed...

Something about those words...

> bullshit

Yep, 100%. Could you imagine doing this bs internally in the course of work? These people would be fired - their inability to deal with conflict or share the same space as people who disagree with them does little more than stifle the project's success. /eyeroll

Absolutely. The twitter links that were removed were entirely unoffensive. There was a link to this argument for inclusion of neuro-atypical people.

http://quillette.com/2017/07/18/neurodiversity-case-free-spe...

Then people saying they wouldn't participate in an open source project because the person who tweeted the link is a big contributor.

Then arguments for "community over tech", in a technology project...

IO had legitimate issues that were resolved. IO had important contributors onboard.

"Ayo" is attempting to use stolen valor from that successful struggle. They have no major contributors, and zero chance at gaining any traction in a community that is disinterested in SJW politics.

I've said this before and I'll say it again: this is not an SJW issue. It's just not a social justice issue. The CoC existed long before these concerns, and it's going to exist in the mainline fork no matter what happens in Ayo.js.

The issue is inconsistent standards. Committee members are held to a lower standard than occasional contributors. Some people don't like that inconsistency and are leaving that culture. That's fine, because Ayo and Node can still share patches. The issue is purely that people who work on Ayo won't have to deal with any of the committee members from Node who can't be bothered to abide by their own code of conduct.

You can say it all you want.

There isn't any evidence presented that any committee member (Rod Vagg?) is violating any code of conduct. He merely tweeted a well defined argument for inclusiveness for neurologically atypical people. It points out that overbearing CoC can be problematic and points to several very important figures that were NAT and it is from a tenured professor of evolutionary psychology at the University of New Mexico.

It is disregarded by the SJW fringe of the node community because he has ties to articles around the men's rights movements.

It's fine that there is a useless fork of node. There are tons of useless forks of many projects, but it's not fine to act like anyone has done anything wrong. He merely apologized for having to censor someone because the CoC is pretty vague: https://github.com/nodejs/TSC/blob/master/CODE_OF_CONDUCT.md

It's not a violation of the CoC. They are attacking him for their perceived undermining. No one has to pretend to agree with something in order to not violate it. Acting like his expressed disapproval is a violation of the CoC itself is the exact type of demonization he argues that the CoC leads to.

I've yet to identify a core contributor to this project that has done anything of significance with Node.js. Is there a major player here, or is this just a publicity stunt?
Wait, why does the volume of their countributions matter for an issue like this?
Because if you don't have the experience or inside knowledge to actually change the platform in a way that anyone will want to use, then it's a worthless gesture.
why does the volume of their countributions matter

Because at the end of the day, working code makes a software project relevant. Nobody can deploy "Correct social and political attitude" to a server or system.

(comment deleted)
Why would you remove all the context, and then publish all this drama, clearly blaming the guy, and making him look horrible?

Isn't that against your own CoC?

Place your bets, will Ayo actually diverge more than the CoC and README?

When will people stop being so wound up and have some decent arguments about code instead of how to be a nice person in public. Also love how the SJW attributes this to "all the horrible shit that men in tech get to get away with" rather than someone being an asshole (which I can't even see btw because all evidence seems to have been removed.)

Yeah, as far as I can tell this is just a political stunt, not the next IO.js. I'll switch if and when Ayo becomes technically superior to Node. Until then, there's really nothing to see here (as least insofar as the fork is concerned).
Witch hunt. People who aren't busy coding get involved in this junk.
Node.js - the JavaScript runtime with a flair for drama.

At some point in the future, maybe someone will come up with vaccines for developers that suppress gender characteristics so we can all go back to shooting down bad ideas without being criticized for being sexist, racist, or biased.

> Node.js - the JavaScript runtime with a flair for drama.

As stupid as I thought it was when everyone started blasting Ruby & Rails performance because of a poorly-reasoned Twitter article that should have been about choosing the wrong data stores, I was so glad to see most of those people leave the Ruby community for their greener pasture because it's so much easier to get work done without their constant, wasteful drama.

To me it's sad how meta Node.js community is, even worse is with five minutes browsing on the tablet I can't even find out exactly what this nasty person said or did. I suspect this is another hypersensitive SJW act. It started with the legend Crockford being banned from NodeConf for saying dog-balls. Grow up ffs!
It's Animal Farm out there right now. Purges are in full swing.

One of the transgressions that caused this split was the retweeting of an article that suggested codes of conduct can be ableist, because they don't account for the eccentricities of people on the Autism spectrum. It's now controversial to suggest that we have compassion for people with mental disabilities instead of throwing them to the wolves.

I guess SJWs can't stand it when it is pointed out that their ableist behaviour is at odds with their professed beliefs. Do they pause, reflect on their behaviour, and mend their ways? No, they throw their toys out of the pram.

In a way this is a good thing. Now that there's an SJW fork of node.js, this will be a concrete test of whether SJW-inspired CoCs help or hinder development on open source projects. If Ayo does better than Node, it's evidence in the SXJs' favour. Likewise the opposite.

"It started with the legend Crockford being banned from NodeConf for saying dog-balls."

I'm sorry: what? Did that actually happen?

Yes
Thanks: I just spent a couple of minutes googling and do not feel a better person for the experience. And it only magnified my disdain for a particular vocal portion of the JS community.
NodeJS is a scary scene. I'm all for being vocal. But this? These are emotionally unhinged people. "Dog balls"? Yes, roughly half of all dogs have balls. Dog balls are curved and do look roughly like parens if you squint the right way. Do I personally think you should invoke imagery of canine reproductive organs in a professional setting? Eh. No. It's unprofessional. Should it be absolutely socially criminal? I don't think so.
I can certainly see your point on professionalism, although I will note that having watched the footage quite a lot of the audience appeared to find it funny.
That's true, but mob (majority) rule is also scary:

'In Federalist Paper No. 10, James Madison wrote, “Measures are too often decided, not according to the rules of justice and the rights of the minor party, but by the superior force of an interested and overbearing majority.”' - http://www.capitalismmagazine.com/2009/04/abhorrence-of-demo...

Just because lots of people laughed doesn't mean they're correct. Could just mean they were uncomfortable.

I remember arguing to keep the word 'suicide' in due to breaking API changes it would cost to fix it. They made the change and it ended up breaking a bunch of modules and also was way more of a headache to implement. All because a word that is not a great choice.
That's messed up, seems they witnessed the python django community removing the word slave in reference to databases from docs due to it being a word with a weighted impact and said 'hold my beer...'.
Personally I am excited for a CoC-oriented Node fork so I can watch how they string up one person after another for crimes against humanity.

Pretty disturbing when a CoC is not a means to an end but the end itself. Codes of Conduct as the end never end well.

Most extremely disturbing how the evidence has been removed and now secret while the accusations are public.

There won't be any attacking of members because there won't be any members. There also won't be any contribution, because these people aren't technical. They want to put "community over tech" in a technical project.
(comment deleted)
The name seems ripe for confusion when spoken in conversation. "Ayo" sounds like "io" to me, which I understand is another fork of node.
> The name seems ripe for confusion when spoken in conversation. "Ayo" sounds like "io" to me, which I understand is another fork of node.

io.js was merged back into node.js (or, depending on how you look at it, node.js was merged into io.js, since they adopted some of the governance structure from io.js).

Either way, io.js is no longer a separate entity, which is why Ayo intentionally riffs on the name with a homophone.

The project description says: `It's pronounced like "IO" would be in English`, so it seems to be intended to be pronounced that way for some reason.
Maybe Node.sjw then? ;-)
No I am not using software called Ayo, and I will not type "ayo" to initiate commands.
99.99% of Node.js users don't interact with the core platform, so the Ayo.js team is going to have to stick to their guns for quite a while if they're going to see any benefit to this move.

Until there's enough of an accumulative technical advantage to using their version, most people are going to completely ignore it. Almost no one actually used io.js in production, it was mostly a vehicle for the PoC of using the latest V8 engine.

That being said, Node.js steering has been completely taken over by IBM and Samsung, through their thinly veiled use of StrongLoop and Joyent. Anything that shakes that up even a little is A-ok in my book.

Whenever I see Ayo I think of the Chris Brown/Tyga song. Pretty sure that isn't the kind of lyrical content they would support though... but it does make me smirk a bit every time I read it.

Edit: Not a lot of Chris Brown fans on here it seems...

Just like any democracy, things were voted on, people didn't like the outcome, so now the output is to rebel.

The system doesn't work if you don't respect the system.

But in a way, the system did work, right?

To me, the greatest thing about open source software is that you can fork a project for whatever reason, even if it's a bad one.

People need to stop being so damn lazy. Seriously - Rosa Parks didn't start a bus company when she did not like the rules on the existing bus. MLK didn't start a new religion or form a separate government to avoid oppression of existing ones. Susan B. Anthony didn't hold her own elections when she couldn't vote in official ones. They stood their ground, walked in the shadow of the valley of death, stared down the dragon, ventured into the bear's cave and put in the work and sacrifice to change the system. A lot of people are so spoiled and hardship-adverse that they can't be bothered to do what needs to be done to facilitate actual change in an existing ecosystem. Instead, they just take their ball and go home - or hide behind "safe-spaces". Like dude, the world isn't safe and you can't sterilize it by fussing and complaining until you've forced your sensibilities onto everyone you disagree with.
(comment deleted)
Resigning committee positions at Node.js and forking the project is just about the only "non-lazy" option in open source. Like, the closest thing we have to a sit-in is a DDoS and while that might be suitable for Anonymous's hacktivism it's not very suitable for open-source contributors who feel left out at inconsistent application of Codes of Conduct to committee-members versus occasional-contributors.
This is a joke, right? A bad one that isn't at all funny.

I suppose it could be argued that this is a legitimate piece of an ongoing conversation about how OSS projects should be run, and how people who contribute to OSS should be expected to behave.

The problem is, to me at any rate, it looks like yet another dose of JavaScript community drama with a bunch of people having a good old strop on and behaving like toddlers.

I swear, there are people in the JavaScript world who are not happy unless they're butthurt about something. And I don't know enough of the background or have enough breath left in my body to care.

Forked by snowflakes who can't separate a person's opinion from their position within a group. Nice...