#DeleteStackOverflow

The time has come — actually the time is long past — to #DeleteStackOverflow. I mean stop using it, delete your account, and ban it from your search results.

Why? It’s useless. It’s perverse. It’s even malevolent. And getting worse.

There are so many problems it’s hard to know where to start. But let’s try:

  1. The entire Stack Overflow business model involves ripping off wealth in the form of the knowledge of expert users and transferring it, with no compensation, to the owners of Stack Exchange, the parent of Stack Overflow.
  2. After a steady downward progression over past years, the site has now turned into a vast river of sewage containing the same questions asked over and over again, most often in nearly illiterate form, and all too often answered by clueless newbies who know barely more than the posters if that. The system of flagging and moderation is completely incapable of stemming the deluge.
  3. The experts whose knowledge has powered the site are utterly ignored when it comes to governance — if you can even use the term “governance” to describe how the site is run.
  4. More basically, the site has no way to gracefully “age” old information, or manage questions and answers related to obsolete technologies or versions of those technologies.
  5. The excessive priority assigned to Stack Overflow by Google (from which three quarters of its traffic comes) mean that SO answers can monopolize almost the entire first pages of results for many queries. This makes it harder to find better, more up-to-date resources on your question.

It’s fairly clear that a major factor in this descent into dystopia is the long-planned IPO or other big transaction for Stack Exchange. The valuation for such a transaction — in other words, how many billions of dollars will flow into the pockets of founders and earlier investors — is almost entirely a matter of eyeballs. So it’s natural that that’s where the exclusive emphasis would be put, to the detriment of the long-term health of the site, or its role in the programming community, or how it treats its long-suffering expert contributors.

But actually the problem is worse than StackOverflow, the granddaddy of programming Q&A sites, merely having begun its long, inexorable decline into irrelevance. Even if some folks line their pockets in a buy-out, and some private equity firm flips it again a few years later after cutting costs to the bone, making another few billion dollars, why should we care? It’s because Stack Overflow is now causing active harm to the programming community. I talk about this towards the end of this essay.

By the way, if you try to research Stack Overflow’s problems by doing something as simple as Googling “StackOverflow sucks”, you won’t find anything very useful. Most of those people are complaining about how unfriendly SO is to newcomers. I don’t care about that. As I will discuss, I actually think it should be more unfriendly to newcomers, who pollute and dilute the site’s content. What is important is the fundamental dysfunction on the site, the poor experience for the experienced users who should matter, as well as the failure in both developing and implementing the strategy, which over time is slowly and surely going to ensure its demise.

Perhaps Stack Overflow is a vast wasteland. Perhaps its traffic metrics — measuring the all-important eyeballs — are flat or declining, as they are. But can it not still flourish like any other agile tech company, by pivoting, or leveraging its core IP somehow, or developing new business models, or possibly even reinvigorating growth in its legacy business?

The Documentation fiasco

The signs bode poorly. One significant initiative in recent years was their abortive “Documentation” project, thankfully since put out of its misery. According to this plan, a major pain point in the computing world was the lack of documentation, or the fact that it was poorly organized, or not accessible, or out-of-date, and Stack Overflow was uniquely positioned to solve this problem by building the dominant, authoritative set of documents on all major computing technologies. It’s puzzling who would have imagined this was either necessary or useful. And who would write this documentation? Of course, it would be written by the same experts already answering questions, for free— but don’t worry, the experts were to get special extra-cool “badges” for writing documentation, if they had not already left the site. If no experts contributed, and of course none did, the fallback was to be non-expert users capable of creating nothing more than a wasteland of fragmented, buggy content.This entire initiative progressed in total ignorance of definitive, extraordinarily high-quality, well-indexed documentation which already existed in areas such as the browser/front-end in the form of sites like the gold standard, MDN Web Docs.

The plan for this Documentation feature was widely panned, by the very experts on whom Stack Overflow depends, on their “Meta Stack Overflow” site, designed for discussions about how the site itself is run — those experts opinions on the utter ridiculousness of the idea being ignored just as all their other opinions are.

Surprisingly, for a company which prides itself on its technology and design chops, the architecture of the proposed Documentation feature was also severely flawed. It was never integrated into or linked properly to the legacy Q&A part of the site. The format the “documentation” was supposed to take was basically a grab-bag of disorganized examples. It goes without saying that search engines never bothered to index this shoddy mass of “documentation”.

Growing the legacy business

Well, what about growing the legacy business? Unfortunately, SO has reached a dead-end here. Virtually all programmers in the world already now come to SO to find answers to their questions. Even to continue at current levels assumes that Google will continue to drive traffic to the site. What’s more, as mentioned, at present for many programming questions, a Google query brings up half a dozen answers from Stack Overflow on the first page. This is both a blessing (now) and a curse (in the future); as Google’s algorithms evolve, it could easily start bringing up fewer SO results, and this is especially likely to happen as overall answer/question quality continues to declines, as discussed later. In fact, this is much more of a risk than an opportunity for SO. Their organic search traffic could easily fall off a cliff.

Much if not all of any recent visitor growth is from developing countries — SO derives a large portion of its traffic from such countries, including one-fifth from one particular South Asian country which I love and where I reside. But the eyeballs in question are notoriously unmonetizable. These folks are mainly coming to SO for rudimentary questions on jQuery to help them maintain the ten-year old jQuery app their employer has contracted to work on for $15/hour. They are hardly the material being looked for by companies in the Bay Area who sign up for SO’s Jobs service.

But wait — as new technologies proliferate, couldn’t more questions and more answers increase visits by existing users? Unlikely. The fact is that the vast majority of useful questions about programming on SO have already been asked and answered. There is some minor potential for new questions about new technologies, such as AI or AR perhaps, or to a lesser extent questions driven by new versions of software. But this is not the stuff of hockey sticks. Experienced developers who could in theory ask interesting new questions about either existing or new technologies, or provide interesting new answers, have been leaving the site in droves, primarily driven by the flood of drivel on the site, or simply exhausted after years of chasing rep points. One can also make the point that one effect of the overall progress in computing technology over the last decade has been that new systems and products are better documented and supported than before, reducing the need for ad hoc solutions like SO.

In any case, the number of users at SO (25M) is already more than the number of software developers in the world. That’s probably because that 25M includes casual developer and hobbyists. In any case, the underlying annual growth of developers is believed to be in the single digits, severely limiting any upside for SO from more visitors even if it could maintain its share.

New domains?

What about new domains? This is the insight that led to the entire “Stack Exchange” model of a family of Q&A sites on dozens or hundreds of topics, all utilizing the core technology. This is an obvious form of diversification. Unfortunately, none of the more than one hundred sites now in existence has come near to SO in popularity. For instance, a Japanese Language site started five years ago, which I occasionally contribute to, gets a trifling few thousands visits a day. The reality is that the audience for non-programming domains just is not a good fit for SO’s entire approach of intense gamification, nerdy adherence to strict rules, no discussions, and “high -rep” contributors playing power games. The success of Stack Exchange sites, most of which are ghost towns, depends on a “network effect”; more people visiting, resulting in more people asking questions, resulting in more experts answering questions, with this virtuous cycle repeating, something which unfortunately has not materialized with the bulk of their sites.

New business models?

So we are left with new forms of monetization. The current major initiative in this area is Stack Overflow Jobs. Developers can put up their CVs and be matched with hiring companies. But this entire business model suffers from debilitating flaws. First, unlike LinkedIn, SO does not naturally capture data about job experience, so all this information must be re-entered (and LinkedIn, obviously, does not permit SO to scrape it). More importantly, recruiters are in general looking for more experienced, more knowledgeable people–in SO terms, people with reputations of 1000 or more–whereas the typical SO member is a newbie whose contributions there hardly make them more attractive to recruiters. There is also a self-disqualifying aspect at work: why would companies want to hire people with high reputations, when that very reputation itself demonstrates a proclivity for addictive, time-wasting behavior? Finally, as already mentioned, the more experienced people for whom Stack Overflow Jobs could make sense are leaving the site, if they haven’t already.

So why are these top contributors leaving the site? In a nutshell, it’s because there’s no longer anything useful or interesting to keep them there. Their main motivation has always been contributing solid programming knowledge to share with current and future developers, either for its own sake, for the sake of enhancing their reputation, or both. The problem is that the opportunities for them to do so are dwindling rapidly, primarily because of good questions having become exhausted; in addition, the site is now inundated with vast numbers of trivial questions from new users that they must wade through in order to find interesting questions to answer. They may skip over this drivel or valiantly stop to comment or try to close those questions, but this takes time, and in any case good answers they do give are all too often “downvoted”, pissed on, ignored, or even closed. At some point, even the most devoted, and most addicted, lose both interest and hope, and leave the site, in one famous case taking many of their best answers “with them” by deleting them on their way out the door (which, it turns out, is not allowed, because as you might have guessed the copyright to all of their carefully crafted answers belong to Stack Overflow). It’s not like they need to stay on SO like one would stay on FaceBook in order to keep in touch with grandma (actually many people are now #DeleteFacebook’ing even though Grandma is on it).

But aren’t there processes in place to identify and fix these kinds of problems? Unfortunately not, and that is one of the key underlying issues. While SO management continues to seem to be interested in nothing other than keeping its pageviews and valuation up, an undercaste of top users confers incestuously with itself on a companion site called Meta Stack Overflow containing Q&A about how the site should work, laboring under the delusion that their discussions and conclusions, such as they are, actually matter and might somehow actually eventually become reality in the form of changes to how the site operates. In actuality, this group never comes to any conclusions. For instance, many ideas have been proposed to counter the flood of drivel on the site, including making it harder for new users to sign up, making it harder for new users to ask questions, making it easier to close bad questions from new users, or discouraging people from answering bad questions. Each and every one of these ideas has invariably been batted down, for reasons ranging from something similar was proposed before and somebody didn’t like it, or I’m in a bad mood, or it won’t solve all our problems so we shouldn’t even think about it any more, or it violates some written or unwritten philosophical precept of SO, or it has the theoretical potential to be abused in some contorted hypothetical scenario. Many of the ideas, which will never be agreed on or implemented anyway, vastly underestimate the importance of the expert contributor, who is mainly expected to just sit there and continue to spend hours sifting through chaff, their rewards coming in the form of some inchoate form of self-satisfaction, points of reputation, “badges”, or the special package of SO gear such as coffee cups when, after many years of toil, the magic 100K level is reached. The entire governance structure is irretrievably broken and incapable of healing itself.

Protecting snowflakes

A particularly puzzling phenomenon we observe at Stack Overflow over the last few years is an overwhelming fixation on an image of their users as fragile, emotionally vulnerable snowflakes whose self-esteem may be damaged by the most innocent blunt comment — so damaged that they will leave SO never to return, meaning their eyeballs will be lost forever to SO’s monetization machine. For instance, I left a comment post saying “What was the OP (original poster)’s problem and how does this solve it?”, which was “flagged” by some overzealous user as “rude or offensive”. When I asked about this particular case, a moderator sent me a list of my recent comments with all their flags, in which I could see that the system automatically highlights the word “learn” in bold red (along with “useless”); apparently they do not feel they can even rely on their trusted moderators to detect possibly offensive words, and have decided that comments containing the word “learn” (as in “why don’t you learn to use Google”, I suppose) are likely to be rude or offensive.

The first word mentioned in the new Code of Conduct for Stack Overflow is “kindness”. It is no longer acceptable on the site to characterize some approach or piece of code as “suboptimal”, because that would not be “kind”, and might hurt someone’s feelings, and God forbid you use the word “useless” (another word highlighted in bold red in lists of possibly offensive comments the moderators see). It’s quite mysterious that SO management is now spending its time worrying about issues such as these.

Harm to the Computing Ecosystem

Some may view much of the above as poor snarkiness. If I don’t like SO, why don’t I just not hang out there? Actually, I’ve already made that decision, after having reached the semi-respectable reputation level of 65K (in other words, within the top 2000 of Stack Overflow users all-time).

There is a more fundamental problem with Stack Overflow which is that it is now actively contributing to lowering the level of programming skills. Stack Overflow is not just a common place to go to to find some code to cut and paste into your app; it’s no exaggeration to say that it almost defines the practice of cutting and pasting. This is not even intelligent cutting and pasting; remarkably few SO users these days exercise any powers of thinking neither before, during, of after searching for answers. This does not just result in sub-par code getting into systems all over the world. There have been cases, for example, where incorrect encryption code which could cause serious security vulnerabilities has been put up as an answer on SO, and then “accepted” by the original poster, thereby gaining an authoritative-looking big green check mark, which can never be removed. Upcoming generations of would-be programming are being taught that coding is all about thoughtlessly grabbing code from somewhere on the net and mindlessly sticking it into your program.

SO is not your average Q&A site, and has been much more successful and lasted much longer than others, in part due to its innovative sets of rules involving reputation and community voting, and has created an unparalleled body of knowledge that, for a time, improved the programming world. It’s now come to the end of that run. Perhaps this is the natural life cycle of any Q&A site. I strongly question that even a radical change in governance could now halt SO’s decline.

#DeleteStackOverflow

To delete Stack Overflow, visit your profile page and choose “Edit Profile & Settings”. Choose the “Delete Profile” link. After you read the caveats and click Delete, you account will be removed in 24 hours. If you have set up profiles on other Stack Exchanges sites, which their system makes it easy to do, you’ll have to delete them one by one. Even then, your “network profile” on Stack Exchange will remain; to delete that, you’ll have to write an email.

To remove Stack Overflow links from my search results, I use Google’s Personal Blocklist.