The Heart of Stack Overflow's Bad Vibes

Stack Overflow recently made a series of announcements that focus on fostering a positive community, making it a safer forum for new and underrepresented developers. While I certainly support this newfound focus, I think its success will be muted unless they revisit their achievements program. They’re changing a few rules, which is great, and they are kindly suggesting that privileged users stop their bad habits. But a fundamental part of the issue is the incentive structure, which doesn’t appear to be in their plans for change. I’m not saying it’s the only thing to worry about, but I’m saying it’s a foundational detail.

The irony is some of these structures, I suspect, were built to prohibit trolling. But as it stands today, the best way to join the site anew and fully participate in the community is to troll.

Privileged Users Only

The rewards concept, originally built in 2008, means the site is only populated with “privileged users” by their own definition. Using their wording, literally if you are underprivileged, you cannot participate. In order to participate (and I define “participate” as “post things”), a new user must unlock various actions. To do so, s/he must acquire points (which to me, means wealth). Unfortunately, the most effective way to acquire points is through some dedicated trolling. In fact, in its most basic form, the default mode for fuller participation for a new person is through maneuvers that are classic troll maneuvers.

Consider the wiki. To edit the wiki on StackOverflow, you need to have 100 points accumulated. This is counter to the very definition of a wiki, which according to Merriam-Webster is “a website which allows visitors to make changes, contributions, or corrections.” I assume a “visitor” can be anyone, but in the case of the SO wiki, you need to gather points first. Ergo, visitors are not welcome to edit the wiki. Now, a new user can create wiki pages with fewer points (10). This means that if an underprivileged user wants to improve a wiki page, s/he must create a new, competing page with better content. Indeed, as a newbie who wants to update a wiki page, if you have 10 points, but not 100, your only option is to troll whoever the poor soul was that last edited that original page, with something like a page called “FooBar_Corrected”. In any wiki, this is not an acceptable maneuver, which leaves the underprivileged in a difficult position.

Other kinds of basic transactions require points, like adding comments (50), voting for an answer (15), or even creating tags (1,500). The only things a new user can do is ask and answer questions. If we want a robust and helpful community, unfortunately, a new user…

Basically, new users are cut off from the usual, collaborative activities that power a site like StackOverflow. Indeed, some of the incentive structure seems driven by the need to repel trolls, but the barrier to entry for an engaged, new user, remains high.

Similar to the wiki, if you see an answer that is perhaps 98% correct, but that last 2% is important to you, your only option is to create a new, competing answer. If you do this, you’ll get slapped with an “already answered” or “duplicate answer” from a privileged user very quickly. Nevermind the fact that this is your only option as a new user.

Becoming Privileged

There is another layer to the point system here, which is bounties. If you are a more established user (75 points), you can make your own question special by placing a bounty on it. This means you award more points to the person that answers that question. In this case, if a user is lucky enough to be online when it’s asked, and is able to answer it, that person will get more points. The idea of course is that there are some questions which are hard to answer, so answering a “good” question (as defined by someone who has enough points), will be more richly rewarded. It’s meant to be an incentive. When I was complaining to a friend about how hard it is to get access to make a clarifying comment, he told me he could post a question for me with a bounty. This buddy is not a bad person, but rather someone that wants better engagement on the site. The bounty system, however—intended to reward the helpful folks—turns into a special inside track to get full site access. If you “know a guy”, then you can get in through the back door.

In regular flows, how hard is it to get points? There are various activities that allow someone to gain points, but keeping in mind that a new user only has access to ask and answer questions, we have to look at it with only that rudimentary tool. Remember this is the only entryway for someone new.

Good questions

The act of asking a question doesn’t get you points. It must be a “good” question according to their incentives. A user gets points if the question is voted up (by people that have at least 15 points) and not voted down (by folks with at least 125 points). An upvote for your question is +5. So, you must ask a question that’s good and has never been asked before. This means if you’re someone that’s getting good at java, you’re useless to this site, since so many of those questions have already been asked and the language is so popular that you’ll be racing against other users to get a good question out before someone else. Instead, you need to pick a niche technology or rev version in order to have a chance at asking a unique question.

Good answers

An answer must likewise be voted up in order to receive points (+10). Important to note, it is not appropriate to answer questions that have already been answered (you may even lose points by down votes). This makes sense because it repels trolls. However, this system turns into an even more competitive rat race. You must answer a question adequately, quickly, so that the user accepts it, votes it up (if they have enough points for that) and closes that question as answered.

As it stands, if you want to pat someone on the back, vote up a good question or answer you found, or otherwise give props to the content on the site, you will need to troll for that luxury. You must watch the questions flow in, and jump all over a question you think you can answer, then hold onto your seat thinking, “pick me! pick me!” in the hopes the person that asked the question is still online and agrees with your answer. The only way to win the battle is by dedicated significant time—time away from doing your job and acquiring skills as a full-time developer.

How Bright Is the Future?

One concrete update I saw mentioned was: “We’re planning to test a new ‘beginner’ ask page that breaks the question box into multiple fields.” So, new users will fill out a form. Just new users. In various blog posts and tweets, I’ve seen nothing about actually leveling the playing field or lowering the barrier to entry (in fact that one suggestion just puts up another barrier: underprivileged users would get their own special form). The only adjustments I have seen for the already-privileged users are: some coaching. That roughly translates to, “be nicer to those lesser than you.” I do not see any suggestions for coaching the new users, other than raising those kinds of new barriers. There is no mentor-mentee relationship planned. If you really are someone that just wants to learn and improve, you now need to fill out a form and otherwise suffer the same feedback mechanisms and -1s that are in place today. Once someone has cleared those and the training wheels come off, it’s fair to say that some of the users that are still engaged will arrive at their privilege frustrated, and ready to put the tenure system onto someone new.

Similarly with comments, the ones allowed today come from privileged users, and those comments are building a reputation for being pedantic, sarcastic, and condescending. Granted, SO is trying to tackle that through flagging and some user-driven moderation, which is great. However, without touching the incentive system, it will simply be the ruling class bickering with itself.

Like any developer that wants to touch it once, I find that I am most engaged when I’m deep in a problem. It’s at that moment where I’d love to participate, whether that’s clarifying information I see posted, actually asking a good question, etc. However, I am an unprivileged user. As an attentive lurker, I can see there are clear social norms for asking and answering questions, commenting on things, etc. But I simply don’t have access to follow those norms, and my only choice is considered either boorish or stupid (re-answering a question or re-asking with a new question). So: it’s better for me to continue lurking and focus on my job. I have little doubt that I am but one of thousands of users sitting on the outside unable to fully participate because the barrier to entry is too high. Hopefully SO can take a look at their incentive structure and realize that while the attitudes on the site are oftentimes unhelpful and unwelcoming, that behavior has been encouraged. It has been encouraged not just by the people, but by the very structure itself.

On top of all the positive messaging, to foster the kind of community that everyone wants, the awards system needs to change.