Here’s what I learned from my mentors: If someone makes a mistake, or does something you don’t think is right, you talk to them about it privately and give them the opportunity to correct it.
This not only gets the mistake corrected, but it offers a learning moment to the person, increases their understanding, and keeps them “on board” with the overall project. As a leader you’re being empathetic to that person and offering them benefit of the doubt. Often they aren’t being malicious they just don’t understand why something should be done a certain way. Why not teach them? Put yourself in their shoes and ask, “What do I know that this person doesn’t know, which would cause me to act like them in this situation if I didn’t know it.” That’s the very definition of empathy. Public shaming elicits people’s fight/flight response and it’s hard for them to learn in this state which is why a private consultation is more effective.
Ben made a mistake by not understanding how important the gender pronoun change was in the pull request. But he was trying to interpret the commit rules, and he did write 28% of the current libuv codebase. This is more than any other contributor by far except Bert and 3x more than all of Joyent’s sponsored contributions combined to that library. Ben is super dedicated to Node’s stability and performance and we have all benefitted. I would think he deserves a private discussion, a phone call, a teaching moment. He’s on IRC constantly – it’s not that hard to reach out. If I make a mistake, I’d like to be treated the same way – call me and tell me what I did wrong and how to correct it.
StrongLoop does not support or condone any sort of gender or sex discrimination from its employees, customers, community or vendors. But people deserve a chance to correct their mistakes and improve. This mistake can be corrected and already has been. Other contributors landed the patch quickly. I can’t understand a post on a corporate blog with nasty name calling and a public call for firing someone else’s employee… from the “corporate steward.” If corporate and community interests don’t align, that’s historically when it’s time for a foundation.
The best outcome here would be if we kept Ben’s productivity, kept him included in the community and raised his awareness to this important issue, even to the extent where he was teaching others. We’d get progress, inclusion, and empathy, all goals of the community. I think it could be possible, although I’m worried we got off on the wrong foot.
Since the original misunderstanding here was about protocol for commits on the project, which grew into an issue about the gender pronouns, I suggested to Ben & Bert that as leaders of libuv, they clarify the commit rules to make it known the procedure they’d like followed, and for good measure that they include a requirement about gender pronouns in the commit rules. Ben committed these new guidelines just now. This should prevent future issues similar to what we saw today.
If Ben can’t learn, we’ll fire him. [Edit: See comment below. This is not meant literally.] But if he can, we’ll get Node v0.12 delivered a lot faster and have a stronger community. Isn’t that what we all want?