+++

class = "post"
date = "2020-05-31T00:00:00-04:00"
tags = ["support", "floss"]
title = "Problems in FLOSS Projects #2 - Support Vampires"
description = "How to spot and deal with people draining your community's life-force"
type = "post"
weight = 1
draft = false

+++

## Welcome

Welcome to part two of my "Problems in FLOSS Projects" series. In this entry, we talk about "Support Vampires" a.k.a. "Help Vampires", how to spot them, what to do about them, and how to avoid being one. I hope you enjoy.

## Support Vampires

In FLOSS communities, there is a kind of user dreaded by everyone who's spent significant time in chat rooms or forums. They appear out of nowhere, and at first seem like simple, new users. But as time goes on, you notice something strange happen. This person posts more and more, but is always asking the same questions. They don't respond well to criticism, warranted or not. And sooner or later, no one wants to deal with them, and by extension anyone else. You've come across a support vampire, and they're sucking your community dry.

The term "Support Vampire" is my own, though a similar term, "Help Vampire", is used in [this wonderful post by Amy Hoy](http://slash7.com/2006/12/22/vampires/). Her post does an amazing job at explaining, in a somewhat snarky way, what they are and how to deal with them, but I think this is a subject so common, but also so unknown-in-name, that it deserves another post nearly 15 years later.

To really discuss support vampires, we must first define what they are. The term, at least in my conception, derives from that of the "psychic vampire". Put simply, a psychic vampire is a person who, through your interaction with them, drains you of your mental energy and desire to help. The quintessential example is the toxic friend who demands endless time, understanding, and support from you, while providing none back, thus leaving you in a state of near total mental apathy, unable to devote mental energy to anything else. For introverts, very common in FLOSS and Internet communities in general, this is especially damaging, as our wells of interpersonal interaction energy (to borrow the phrase from the Autistic community, "spoons") are even more limited.

A support vampire is, fundamentally, the same thing, applied to a support community. They are a user, or sometimes contributor, who's interactions leave community members, and in serious cases the entire community, drained of all energy and desire to help. This not only hurts the individual members, but the community as a whole, making help even harder to find in the future even for those who will give back. Below, we will investigate what makes a support vampire and how to spot them, how a community can deal with them, and finally how to correct one's own ways if they realize they're being vampiric.

## Identifying Vampires

Generally speaking, in their first interactions, support vampires look like any other (new) user. They often join the community looking for help with the software or for general guidance. But what really distinguishes a help vampire from a normal user worthy of help, is in how they respond to the interaction, and their future actions.

Amy Hoy's guide offers a quick checklist, which I will quote her verbatim, with my own thoughts interspersed.

> Does he ask the same, tired questions others ask (at a rate of once or more per minute)?

The required time-frame may be a little hyperbolic, but one of the most common traits of support vampires is their *unwillingness to accept answers given*, thus resulting in the same questions being repeated over and over. A new user who spams the same question a few times to no answer is more likely a troll or just generally lacking in netiquette, but what really distinguishes a support vampire is this behaviour occurring over longer timescales. For instance, a user asking about feature Y, getting a reasonable answer, then a week or two later asking the same question again. The user is almost certainly fishing for a different, "better" answer, and this is one of the most definitive and useful early-warning signs.

> Does he clearly lack the ability or inclination to ask the almighty Google? 

Now, as a veteran of the Internet, I'll be the first to admit that Google-Fu is a skill, and often turns up little to nothing of value, especially for more obscure problems. But the first step of any user should be to check the available information. Asking questions that are readily available in an FAQ or (for forums) in a stickied thread is a sure sign that things will quickly go downhill and that a vampire is about to strike.

> Does he refuse to take the time to ask coherent, specific questions?

Asking incoherent questions, especially combined with the first point (asking the same question over and over in varying ways) is a common support vampire trope. General questions that require 50-page answers are not helpful to anyone else. Asking "how does X work" or "what does X do" are time-sinks for those responding. And on a deeper level, having to dig specifics out of the support vampire is precisely the sort of energy draining that makes support vampires so toxic - no one wants to spend 20 minutes trying to pry the *real* question out of someone asking for help, since 100% of that time is wasted.

> Does he think helping him must be the high point of your day?

A key trait of the support vampire is entitlement. Demanding answers, threatening, spamming until they're answered, are all toxic behaviours that will quickly strip a community of its patience. While an entitled user is not automatically a support vampire, the Venn Diagram of the two is nearly a perfect circle - the lack of respect for others inherent in entitlement leads directly to a lack of concern for the consequences of their actions on the community and its members.

> Does he get offensive, as if you need to prove to him why he should use Ruby on Rails?

I think this one speaks for itself - anyone demanding you spend time proving to them why your project needs them of a user can be met with one answer: it doesn't. Being indignant and offensive about it is entitlement, which as we saw before, just leads to a support vampire.

> Is he obviously just waiting for some poor, well-intentioned person to do all his thinking for him? 

> Can you tell he really isn’t interested in having his question answered, so much as getting someone else to do his work?

The next two, together, say almost the same thing and speak of the same problem: a support vampire wants *someone else* to think for them. This is, I think, the reason they are so willing to do the various other things above. They want an easy answer, a cut-and-paste solution, and when they don't get it, they turn to entitlement ("well why should I use this?" "I demand answers!"), vague questions ("I don't understand the details, just give me the answers!"), and spammy responses ("If I don't get my easy answer I'll just ask until I do!"). This is the root of the problem, in my view. And it is simultaneously the easiest and hardest thing to fix.

## For communities and members: I have a vampire, what do I do?

It's unfortunate, but support vampires are common in any online community devoted to helping users with a project or solution. As mentioned above, this is almost always born out of laziness and a desire to avoid thinking about their questions. There are a couple things a community can do to help fix the situation.

First, do not take shit. Always remember: as a contributor to, or user of, a FLOSS project, *you do not owe anyone your time or effort*. This is an absolute. If a user is abusive, call them on it and ask them to stop. You can do this politely in an otherwise-helpful response, and in my experience this is an invaluable part of helping guide a vampire past their support-sucking predilections. If someone doesn't know what they're doing is wrong, they can't ever be expected to change it.

Second, as Amy calls it, "Cease Enabling Behaviour". Don't just past an answer or respond with snark. Enforce autonomy by providing resources, not direct answers. Foster thinking by responding with questions rather than answers. Reward self-help and helping others by actively and openly appreciating those who help themselves and help others. And finally, be friendly and thus encourage the reformed vampire to help out too.

Third, provide resources for the project as a whole. From experience, a project with little or no documentation is also the most likely to become quickly infested by help vampires. Not because of the support vampires themselves, but because it is impossible for them to find information themselves. Create guides, tutorials, and FAQ lists, especially if you keep getting the same questions over and over from *different* people. When a support vampire arrives, you can point them at the documentation instead of wasting your time. If they help themselves, that's the first step to reformation.

Fourth, do not hesitate to weed out a hopeless case. If a user is informed their behaviour is wrong, is given the chance to reform, and fails to do so over and over, let them know they are no longer welcome. No one likes banning a user, but if the choice is between one hopeless help vampire and your entire community, the choice should be obvious.

## Oh no, I'm the vampire, what do I do?

If you're reading this, and think you might be a help vampire (especially if someone sent you a link to this post), the first thing to do is stop what you're doing, be it spamming, being belligerent, demanding special attention, or otherwise feeling entitled. You are not special or entitled. No one owes you anything. The people you are interacting with want to help you, but if you make that impossible, you are more likely to get cold shoulders than the praise and thoughtless walkthroughs you seek.

If you have not yet, go and read [asking questions the smart way](http://www.catb.org/~esr/faqs/smart-questions.html) by Eric S. Raymond. His personality aside, this document is an absolutely invaluable resource to understanding the people you will be interacting with, and how to not only get their attention and get a (useful) answer, but also how to ensure you are not a burden on the community.

Show humility and a desire to learn. Everyone is a newbie at some point. The key to getting past that is to recognize that you must put in the effort to learn, and that you are not entitled to easy answers or simple fixes. Read the documentation, read the forum history, and above all, be respectful to those you ask for help. Especially in FOSS, you are not paying for support - the people helping you are willing volunteers, and if you abuse that, they will show you the door.
