binford2k.com

Cranky community members

You know the kind. There’s that one person who always has all the opinions. Sometimes there are many of them. But they’re critical about that thing you built, or the workflow you designed, or that issue that you haven’t responded to since they filed it last year. Especially if you hear it long enough, this criticism can cut deeply.

Technical Open Source community members always have something to complain about. Maybe they don’t feel like their work is appreciated. Maybe bugs or pull requests aren’t addressed in a timely manner. Maybe they have opinions about your product’s functionality. Maybe your product is genuinely bad and they’re trying to tell you that.

Whatever the reasons, you’ll soon come to learn that few communities all agree on everything. There is always some amount of dissent and so there will always be someone complaining about something. You’ll also find that corporate and community interests are rarely perfectly aligned. Engaging in a technical community will always require navigating these imperfect alignments.

So what are we to do? Luckily, there are some strategies you can employ to engage with unruly community members, primarily by understanding them better and learning how to make the jabs less hurtful.

Work is not your identity

The most helpful strategy is to emotionally separate yourself from your work and from your company. Chances are that someone else is responsible for your product’s architecture, for its design, for its featureset, its roadmap, its priorities, and so on. Chances are that you are building something that’s largely dictated by others, and that their decision making is driven by business needs and priorities.

These business needs can be driven by all sorts of things. Maybe there’s a market play going on. Or portfolio diversification. Maybe the company is preparing for IPO or an acquisition. Maybe it’s working for a new certification. Perhaps there just aren’t resources to do it the right way and corners had to be cut. Maybe you don’t even know what’s happening behind the scenes.

The key is that it’s unlikely that you’re responsible for any of this, so you shouldn’t own the complaint either. The most you can really do is to ensure that the community member files a ticket to get the feedback in their own words and then raise the ticket to the appropriate party. And don’t feel obligated to defend the underlying business need. Chances are that’s not your job either.

Community members raise concerns because they care

With a few exceptions, people complain because they care and want to help you improve something. They aren’t complaining just to be jerks.

The ones who are complaining to be jerks are usually readily identifiable – often because other community members will call them out on their toxic behaviors. You don’t have to give these people the time of the day. Report them to your community managers, share the code of conduct, or just flat out ignore them.

Spend your quality time with the ones who care and are trying to help. Remember that the words they say aren’t always what they mean. Listen for the problem underneath and remember that people are often reacting out of frustration, especially if it’s an ongoing problem they’re referring to.

Communication styles are hard

And that brings me to my last point. Most of us are engaging in global communities or diverse communities of people from all walks of life. The life story that shaped your communication style is likely not the same as that of the customer support engineer from the deep Bronx and that of the SRE from Berlin or Melbourne and that of the infrastructure architect from Johannesburg and that of the OSS contributor from Atlanta.

We all have different stories and life experiences. Some of us went to school and some learned from the school of hard knocks. Some of us took computer classes as school kids and some of us are busy learning a new profession and how to manage effective blameless code reviews. Some of us were trained on the American shit sandwich feedback style and some of us don’t mince words and just say what we mean. Some of us are neurospicy in the way that makes us speak bluntly and some of us are neurospicy in the way that finds that incredibly offensive.

The point is that what you find to be insulting and snarky is usually not meant that way at all. When the German SRE provides curt feedback that’s direct and to the point, they’re not doing it to be an asshole; they’re doing it out of kindness. Because to them, that’s the most effective way to communicate their needs and help you do your job better. Now it’s on you to choose how you want to hear it.

To recap

  1. If you aren’t personally responsible for intentionally making something bad, then don’t take feedback personally.
  2. Remember that people are providing feedback because they want to help make things better.
  3. You don’t have to choose to hear negativity in the way people communicate. It probably wasn’t meant that way.

Happy open sourcing. Go forth and collaborate!