Hacker News new | past | comments | ask | show | jobs | submit login
Whither Stack Overflow (vice.com)
36 points by opiumfireworks on June 27, 2016 | hide | past | web | favorite | 63 comments

The article casts users as the problem: help vampires, noobs and reputation collectors.

My strong opinion is that there are other serious issues that the article doesn't even touch on:

1) the silo model of creating dedicated SE sites. There should have been one SO for everything. Collaborative filtering etc would have been an infinitely better direction to go in.

2) the over-moderation by misguided 'defenders' who are too eager to mark something duplicate or move it to some dead SE site. Here's a group of users the article doesn't point fingers at, but which I believe is more of a problem than the noobs!

3) the shelf-life of answers. Almost all the accepted answers are now wrong. Frameworks change, features are added to languages, bugs get fixed. And woe betide anyone who asks a question afresh hoping to get a new and actually working solution...

4) that I'm ok with subjective questions. These ought be handled as such, rather than closed.

There are a gazillion little ways to fix this and make SO relevant again, but I think the mgmt and 'community' are a big part of the problem, not solution :(

(disclosure: I have well over 40K rep, most of it on SO)

On 2 and 3 - this is dead right.

As an example of 3) Here's a question that has an accepted answers that is wrong http://stackoverflow.com/questions/7635013 - it's regarding x86, x86_64 and x32. Since x32 was new/unknown at the time, a lot of the answers say "x32 doesn't exist".

And for 2) here's an answer http://stackoverflow.com/a/26522110 that is/was true at the time of writing - a nasty little bug in the Android NDK causes math library functions to not get linked in on pre-lollipop devices if you state you are using android platform 21 and ndk 10c. Two rules lawyers are spouting off about how the poster should post a new question or leave a comment. They are in over their heads. The comments are out of context and come across as patronizing. It is also now an example of 3) since all the tech involved is pretty old in Android terms.

I used to spend quite a bit of time on SO and OnStartups.

I haven't contributed to any of their sites since the ridiculous deletion of OnStartups due to the opinion of one moderator (If I remember correctly, which is vague now). I don't care that I lost half my rep. Some people had put really lengthy, researched, answers and a valuable resource was just rm'd.

There's far too many silos. Sure separate maths from games from Java. You have a tech question, is it webmaster, server fault, super user, or what? Seems like there's a very slim chance of getting it right first time. Sometimes it's the remit of several but none seem to want it. Or get marked as duplicate when it's fundamentally different to the marked duplicate.

Some of the subjective questions have attracted the best, or most useful, answers. Even when they've survived years they still sometimes get deleted.

Stack Exchange isn't worth the effort any more.

Wow... you're not kidding about the silos. I haven't used Stack Overflow much lately, so I thought it was still just Stack Overflow and Super User. Instead...

  Stack Overflow
  Server Fault
  Super User
  Web Applications
  Game Development
  Tex - LaTeX
  Unix & Linux
  Stack Apps
  Ask Ubuntu
  Wordpress Development
  User Experience
  Theoretical Computer Science
  Information Security
  Database Administrators
  Code Review
  Programming Puzzles & Code Golf
  Drupal Answers
  Software Quality Assurance & Testing
  Computational Science
  Computer Science
  Raspberry Pi
  Network Engineering
  Open Data
  Software Recommendations
  Data Science
  Vi and Vim
  Open Source
  Computer Graphics
  Hardware Recommendations
  3D Printing
  Retro Computing
And I'm sure I missed some. Unbelievable amount of fragmentation. Anyone want to take a crack at explaining the difference between "Computer Science" and "Theoretical Computer Science"?

I'm remotely involved there and my reply would be that TCS is research level while CS is not. There seems to be significant overlap in the questions, regardless.

In addition, the reputation model is actually incentivising the wrong thing. Answering some simple question that many people see will give you an answer that gets upvoted to the double or even triple digits. Answering something hard and well might only get a handful of votes if it's a niche topic.

(disclosure: 11K rep, mostly on tools like make, autofoo and cmake.)

I once thought of a potential solution where the number of reputation you would gain would be directly derived from the number of tag-experts who saw the question (and did not provide an answer).

But maybe this would lead to it's own problems too.

Bounty somewhat alleviates this problem, but only partially... Maybe there should be an option to "tip" good answers, where (part of) the tip would be taken from your own score?

I'm not sure what you mean, isn't this exactly what bounties on SE currently do?

^ This.

I sympathize with 2-4. Those things make it much harder to earn reputation by asking then it used to be. Fixing those problems requires fighting a bunch of institutional inertia, so it will require either time or some sort of judo move.

But I don't understand how having separate sites relates. If you contribute to some of the smaller sites, I think you will find you'll get excellent answers from people more focused on the sort of problems the site covers. Frankly, I've seen DBA questions asked on SO that get short-sighted answers from programmers. Those questions should be asked of people who really know how a database works under the hood.

I can see how collaborative filtering might help. But a big reason people have moved to dedicated sites as opposed to SO is that they want to have separate moderation policies for the questions they enjoy answering. (I've put a little bit of thought into the criteria for spinning off sites on meta.SO: http://meta.stackoverflow.com/questions/271989/does-it-pay-t...)

(Disclosure: I'm a Community Manager hired by Stack Overflow.)

From the point of view of person who uses SO just to find solution, incorrect answers are the biggest problem. It seems that "you don't know what you don't know" does not compute with many people involved in answering SO.

But that kinda make sense: at the beginning, SO was great because answers for noob questions where hard to find. At this point, there are so many other resources to get these noob questions answered or they are already answered. Now, people start asking hard stuff - but engineers (I intentionally do not say developers) who know answers on these questions are not interested in answering.

> There should have been one SO for everything.

What could possibly go right about mixing Judaism questions and Christianity questions into the programming questions?

The collaborative filtering thing stands out as a really good idea to me.

Anyone here who can say anything about the community size you would need for something like this to be viable?

I don't have a problem with separate Stack Exchange sites for topics that are fairly separate, but I do have an issue with the sheer number of computing-related sites - the difference between StackOverflow and Programmers.SE, for example, is a bit arbitrary.

Is this a problem with wikipedia.org? Imagine both of these sets of questions tagged as `religion` and you have a common source for all people interested generally in any religion.

Are you kidding me?



Also, there's a very good reason "the dramaboards" are called that.

Ask reddit.

On a more serious note: Stack Overflow started out as a technical site. Questions about programming often crosses the border to hardware or networking. They rarely however cross into theology.

I'd be fine with opening a different site for theological questions as long as I could have all my technical questions in one place (and more importantly not having someone move them around.)

Well, it might put the fear of God into programmers, which wouldn't be all bad.

And the fear of computers into God, perhaps.

There are other options like the subreddit model, where the users define and moderate the divisions themselves.

...and where petty factionalism (among other factors) led to the creation of, say, /r/math, /r/maths, /r/askmath, /r/askmaths, /r/learnmath, /r/mathematics, /r/badmathematics... and so on for every topic you can think of.

Sure. I think that's preferred to the one community going stagnant--math is one of the only areas where that is arguably preferable.

They could use tags and machine learning. Have you been to Quora lately? they are a good example.

My thoughts as well. Wish someone would create that site.

Will be happy to try to contribute.

There is so much SO got correct that I think just changing a few rules could work as long as we could manage to get the word out.

As managed above silos probably makes more problems than they solve (partially because of the moderators but I guess the silos should go away anyway).

Same goes for strict rules about what belongs (Case in point: question about inter-company WAN traffic being rejected on networking because site guidelines says something about "inside corporate networks"). Rules about what does not belong (acceptable content) should be OK as long as they don't prevent technical questions from being asked and answered.

A way to deprecate answers (and a way for viewers to "flag" them as "still useful".)

And yes, a way to handle subjective questions. (Quora already has a grip of this only their IMO insane policy of sharing my every click on the site made it unusable for me and a number of others.)


anyone want to crack an interesting problem, and earn a bounty in the process?

A few days left and not a single answer on my recent question here: http://crypto.stackexchange.com/questions/37102/culling-equi...

> make SO relevant again

Curiosity: is there any more relevant alternative?

I stopped being really active on SO around the end of 2012. I don't think the reason was anything from the article. For me it was 2 fold: the rise of members who criticize everything and the feeling of shouting into a void.

I don't have a good name for these users like help vampires. They seem more like Harry Enfield's old "Only Me!" character who show up to say "you don't want to do it like that" without providing anything useful. Post an answer to something that is tricky and doesn't really have a good solution and within minutes you'd have a comment saying "that's not the way to do it, the real solution is for the OP to start over using some other methodology". Often I'd get an accepted answer, but the comments were just grating. They'd gloss over the problem to post a rep-safe comment undermining your answer.

Then the other problem I had was I would find a problem that I'd suffered before asked as a question. It was usually something fairly uncommon. I'd post an answer, then there'd be nothing. No upvotes, no response from the OP, no comments... just nothing. I figured if the original askers don't care about their questions, why should I bother? Eventually from 2012 to 2015 I just stopped answering at all. I still occasionally visit the site but don't feel motivated to get involved any more. :-(

I'm with you. As far I'm concerned, Answer Puritans are more harmful than Help Vampires.

Just as you mention, for most questions on StackOverflow, there is at least one "Never Do That!" answer. Nobody seems to be aware that users seldom care enough about the sites the visit to "Read the FAQ" and no matter how many of them you hunt down and guilt, you will never find them all. The site has so much moral righteousness, it's kind of like the "Stanford Prison Experiment" of help sites.

While StackOverflow has many good qualities, it makes the mistake of "blaming the customer." It's an illusion to think you can improve a site by making people feel bad. The energy they spend on hunting witches, would be better spent on ways to fix the quality problem that focus on carrots only.

The problem with addressing question quality by making people feel bad, is that you're setting yourself up to be (ugh) "disrupted." As soon as someone finds a way to get the same quality of results without all the pithiness, and finger pointing, you're at a big disadvantage.

> Then the other problem I had was I would find a problem that I'd suffered before asked as a question. It was usually something fairly uncommon. I'd post an answer, then there'd be nothing. No upvotes, no response from the OP, no comments... just nothing. I figured if the original askers don't care about their questions, why should I bother?

I try to look at it the other way around. My memory is not that good and I might encounter the same problem again a few years later... Wouldn't it be nice if I found a nicely articulated answer on SO? :) That has actually happened to me more than once.

I myself stopped being active (as in: chasing the score) when a question I put a lot of effort in and was actually important to me got shut down because "we don't do library recommendations here". It wasn't the first time either, but that straw broke the camel's back. Now I just take care of myself when I need something and ignore the rest of the circus. (5k+)

You want a nice misty buff.

Interesting read. Here's how I'd sum up my history with Stack Overflow:

1) SO launched a few years after I graduated college and was an immediate and invaluable resource to me.

2) I learned more, got in a position to be able to answer some questions, and started trying to answer questions. Realized there were people on the site that were much faster than I was at answering (and often more incomplete) and stopped.

3) Started asking more subjective questions. They got really useful, long, smart answers from experienced people. Example question: "How do I plan an enterprise level web application?"

4) Started contributing to SO less and less as the correct SO answer would often be a top Google hit. 5) Noticed that many of my subjective question posts were closed or moderated in some way.

6) Tried asking more subjective questions that were immediately closed by moderators as being too open ended. Got frustrated. Stopped thinking of Stack Overflow as a place to go to get an expert's opinion.

7) Noticed as I got more experienced that the quality of answers was extremely variable. Sometimes the most upvoted answer or the answer that was marked correct either lacked import context/caveat information or conflicted my firsthand experience with the problem.

I don't use SO as a source of learning anymore other than when API documentation isn't available or sufficient.

It's an invaluable tool for a junior developer but becomes less and less useful as a person grows into their career.

> I don't use SO as a source of learning anymore other than when API documentation isn't available or sufficient.

The latter point is really important. I use API documentation whenever it is actually reasonably complete and up-to-date. But with many abysmal documentations (cough Rails cough) I just go straight for SO because the thing I'm looking for is probably not even documented. Or if not, I won't find it in there because search is only by class/method name, not by task.

I often wish there was a site like SO with a great community around building task-oriented code-first samples to replace shoddy project documentation. Often with SO the accepted answer is too specific, outdated or not descriptive enough but its existence locks out better responses. I would prefer a canonical, up-to-date wiki answer than strict authorship most of the time. I've taken a few stabs at building a solution to this problem but I think finding the right mix is super important.

Yes, I am in the beta. Does not seem like it provides much of the topic hierarchy (beyond 1-2 layers) or ability for long-form content that I would like. I built this https://srcbottle.com that approximates what I would like but am still playing around with it.

> "How do I plan an enterprise level web application?"

I think the SO community will often vote to migrate such open-ended/broad questions to http://programmers.stackexchange.com/

or a specific stackexchange site like http://webapps.stackexchange.com/ in this case.

NB, but your experience reflects mine. Though on a different system.

I remember discovering Usenet and how amazing it was. Not only isn't it what it once was, but what it once was leaves some things to be desired.

I remember discovering Slashdot and how amazing it was. ...

I remember discovering Wikipedia and how amazing it was. It's actually still pretty good, but the manipulators, idiots, and politics are brain-numbing and/or blood-chilling.

I remember discovering University and how amazing it was. It's actually still pretty good, but the manipulators, idiots, and politics are brain-chilling and/or blood-numbing.

I remember discovering books and experts and scientific articles and documentary series and ... Lots of stuff.

Some of it's still good. Some of it now strikes me as painfully stupid. Often it's not so much the answers that aren't known but the questions. Or we discover there are black swans and have to toss a bunch of priors. Or the words and moralities on which The Elders based everything on have changed beyond recognition. Or The Elders' message has been so distorted by a game of Telephone run a few millennia too long. Every generation or two, everyone seems to toss everything out (especially the good stuff I worked so hard on) and start making basic mistakes from scratch again.

That other system is called life. SO is a lot like life.

Understanding is hard, it doesn't transfer well, the Guardians of the Knowledge start seeing the primary goal as Guardianship rather than Knowldging.

Then something comes along and grinds everything into the dust and it's built up again and a new generation of bright-eyed, bushy-tailed young'uns comes along and discovers an invaluable resource.

So it goes.

The programming SE is where you can ask questions like that, as far as I know.

I kinda left SO primarily for how trivial-oriented is has become. Say you write an answer on how to automatically distinguish images of floorplants from general pictures; 3 up votes. What is the current content type for JSON(P)? Hundreds.

The same goes for questions, if you ask something that is moderately complicated it will go largely unnoticed and unanswered (even if you bounty the hell out of it).

And then you have the zealous behaviour of some mods, some of them don't even have the slightest sense of consistency - I've seen extremely helpful questions with tons of valuable answers being closed as "off-topic" just because the post was (still) getting a lot of attention. Where as mostly related questions / answers in another thread (but with much less value in terms of knowledge) are still alive.

What is interesting to me is how good their "are any of these questions similar to yours?" suggestions are. When searching fails, I usually start asking a question - often just to find a solution without posting it. And if not, I can still just post the question.

The article summarizes a study that "confirms [the authors'] hypothesis as well as the community perception that the system was flooded by content that nobody cared about, while really interesting content was getting rarer" and presents this as a problem to be solved.

I think this is actually not a problem, because most users can still successfully find the answers they need on Stack Overflow.

Here's how I believe I and other users use Stack Overflow. We have a problem. We Google that problem (or occasionally search on Stack Overflow). We usually find a fairly popular (and high-quality) question with a fairly popular answer. We're satisfied by that answer.

The article points out that the number of good questions has remained constant, but the number of bad questions has increased. Maybe there's really a close-to-constant number of good, searchable questions that can be asked at any given time, and the declining average quality is just a result of Stack Overflow's popularity.

I know that I was looking for answers on specific Lucene problems and found multiple questions that were basically the same. There were some good answers on there, but the questions were closed.

My main issue is that there's a lot of closed questions that probably shouldn't be.

I also agree with many other comments that there should be far fewer SO sites. There's no reason why a lot of the technical SO sites related in some way to programming need to be separate ones.

Everything does NOT belong on StackOverflow.

I wish SO highlighted http://stackexchange.com/sites so that people can participate in the respective stackexchange communities where they will be more welcome. I have seen that a lot of good questions on StackOverflow get closed/migrated simply because they are irrelevant on StackOverflow.

A similar analogy would be to think of something that would be gold in the right sub-reddit but controversial/irrelevant on the main reddit page.

StackOverflow encourages constructive Q&A.

The SO community has always aimed to close any questions whose answers will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise.

What's kind of telling is that the highest rating SO questions are those that would nowadays be closed as "primarily opinion based" or "unclear what you're asking".

I know that the current tendency for those questions is that they should be posted on programmers.stackoverflow, but I found the quality there dubious at least (too much armchair architects).

I totally disagree. Back in the day a lot of these questions fit on Stack Overflow just fine. A lot of the sites are too specific and have to few users for good answers.

> The SO community has always aimed to close any questions whose answers will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise.

This isn't true back in the day people gave good opinions on things with subjective answers. Frequently you'd have author of framework A saying whats pluses and minuses it has and the same for framework B and C. I didn't see any flamewars. The problem is that they started moderating questions instead of answers. If you get a bad subjective answer simply remove it with a warning.

> A lot of the sites are too specific and have too few users for good answers.

Thats what! If enough people aren't interested/participating in a particular stackexchange site, then an open-ended question on StackOverflow is not likely to generate any canonical answers with proper references from the people hanging out on StackOverflow.

Also such a question is likely to be too-specific i.e. "ahead of its time" to be discussed in an open forum without enough people having experienced first-hand the various nuances involved. Ergo, Fanboyism/Flamewars ensue...

The strict community moderation guidelines on StackOverflow, make it a very "clean" and informative part of the internet. This is at the cost of few "borderline-acceptable" questions being closed.

Right now, it appears to be a conscious decision to accept this fact on StackOverflow.

It would be good to ensure that people who ARE interested in a sub-domain are aware of he relevant stackexchange sites. Discover-ability and the ease of browsing/following related tags across the various stackexchange sites could be easier, so that people can "hang-out" in the relevant sites. Is there a way to generate unified feed or search for a tag across all sites on StackExchange? (i don't know. maybe it would help improve participation in the relevant sites)

I had a schoolmate in high school who believed that every question has an objective answer. Man, what a pita it was when he set out to find it and wouldn't let go even after all the others gave up and tried to abort the discussion...

Sometimes I am looking for subjective answer, because let's face it - objective one doesn't always exist (if ever). Saying SO is not the correct site for this is of course a legitimate response, but the feelings it evokes in me (especially after it replaced myriad of forums where I could have gotten a better answer) are not very friendly. I deal with it in my own way (not actively helping others), but it's a shame...

Just some thoughts about SO:

* The android section is terrible. The questions are a mixture of people not knowing how to write java code at all mixed with questions of people getting hindered by the terrible SDK. (I develop software in Java for 10+ years and Android still gets me sometimes.)

This situation would be better if it wasn't so easy to shoot yourself in the foot with the android-SDK, but nothing we can do about that now.

* Sometimes I have in-depth question about libraries which, if I follow the support-instructions, often go like this:

1. Ask in the chat (ugh, why chat?): I almost never do that, because I need archivable asynchronous communication not chat.

2. Ask on the mailing-list if there is one. This goes well in some projects.

3. Open a github-issue. In overwhelmed projects like react-native, you get immediately forwarded to SO.

4. Ask on SO where nobody answers because nobody knows the technical details.

So… The maintainers of projects like react-native often get spammed with general coding questions of newcomers, which leaves no time for in-depth questions.

Another problem is that, especially in Android, many answers are not actual solutions but crude workarounds that work in specific cases and might even break more stuff in the future. But: "Hey it compiles!".


Hey, really, you find Android SDK terrible? Genuinly curious, which parts? I have written my share of Java (though I wouldn't consider myself a hardcore Java programmer) and I found Android... logical, well documented and in general a delight to work with (well, apart from Eclipse and sloooooow emulators).

It's gotten better, but check my comments from some time ago:

https://news.ycombinator.com/item?id=8329034 https://news.ycombinator.com/item?id=9476547

Generally: bad inheritance, bad separation of concern, unidiomatic java (I think much of it was automatically converted from C++), overcomplicated classes and just so many wtf-moments I had.

Example: You want to store state.

1. In standard activities you have this really nice method "onSaveInstanceState" where you can save state to a "Bundle". And "onCreate" where you are handed a bundle to restore. You write the logic for doing that and should be done.

2. Then you learn that "onSaveInstanceState" isn't actually called when stopping an app, only when rotating the screen, so you have to save your state elsewhere. In onStop for example, sounds nice.

3. onStop doesn't take a "Bundle". Hm… ok let's see save it to disk.

4. Oh, Bundle isn't meant to be serialised because the internal format is allowed to change, so you have to write serialisation again after all. Ok, "Bundle" is out. Let's use json and be done with it.

5. But for some reason it sometimes doesn't work. Turns out "onStop" only sounds like it's being called when your app stops. It's actually not guaranteed to be called, so you have to use "onPause".

This is just one example of many where things could be more aptly named, better documented and so on.

Thanks for the explanation. I guess I never even looked at the names of these callbacks because I just followed the app lifecycle diagram - yeah, I agree, the names could be much better.

Well nothing in the diagram here says anything about onStop being not guaranteed:


Whats more interesting is every other overflow doesn't work at all ( Except the original 3, perhaps mathematics and specialised server fault ones like Ubuntu )

It's just not replicate-able outside of the world of computers.

And it not because these other fields don't have solid answers, it just seems it's to hard to get consensus on what they are.

There is a best way to cook an egg, it's not subjective, but fked if cooking overflow can work it out.

a well-written summary of a paper by Ivan Srba and Maria Bielikova of Slovak University of Technology, published this week IEEE Software. from the Vice article, near the end:

> Stack Overflow's talent for self-regulation is really, truly impressive and, sure, results in some dickishness, but asking bad or lazy questions is its own kind of dickishness. It would be a shame to see it erode further.

Like Wikipedia, it's users vs. bureaucrats now. I actually dislike the "edit queue" that appears at the top of the profile; I'd rater opt out of participating in this patronizing crap completely.

Do Stackoverflow use ML learning algorithms to filter out duplicate questions answers? Perhaps this could reduce some of the problems listed in this article?

Stack Overflow needs to be front-ended by an AI which tries to find an existing answer to the question. There are sites which have keyword systems to do this, but it's time to move beyond that and have something with minimal intelligence.

"Now you have two problems."

(Though there's some sense to that, yes.)

We changed the baity title to the one encoded in the URL, often a good place to look for something more neutral.

Better still would be to change the URL to the paper the article reports on, but it doesn't seem to be accessible online.

I'll leave you to ponder whether or not HN wishes to officially link directly to Sci-Hub.

That said, those willing to thumb their noses at paywalled science may do so here:

I think that degree of anthill-overturning would be past prudent.

It's the first two words of that response I appreciate most.

The proposal was considerd. Rejected, but considered.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact