It's possible to overanalyze the outcome but in my opinion, the reason is rather simple: search results. In my programming-related searches, I never saw a result pointing to StackOverflow documentation. Whatever I wanted to know was already answered in a SO question. Take npm documentation for instance, which has covered topics like, "Configuring", "Publishing" npm packages [1].
As much as I loathe the state of documentation of some projects, I'd rarely open a specific website for help - I'll just Google, "publish npm package", "configure npm package", for which, none of the search results point to a StackOverflow documentation page.
Which is strange thing. They always have something [unneeded] in a collapsable block at the top, but I never seen Documentation in there, in SO answers, in google, anywhere.
Few announcements through regular comment notifications would be fine to me even if not interested.
My first impression when seeing that there is "Why would I look at the documentation for Stackoverflow, I know my way around this website for what I need to do".
Same here. I've been googling around Django _a lot_ over the last few months (first time using Python for anything web-based, and first time setting up anything more complicated than just nginx/Caddy on the server in a long time, so I had a lot of questions).
I probably ended up on SO hundreds of times in that period, and never once saw Documentation mentioned (I _may_ have technically seen it in the nav bar, but just seeing "Documentation" in that context I'm going to assume it is documentation _for_ SO and just ignore it).
E: Forgot to mention, even reading the title of this post my initial thought was that it was documentation relating to the sunsetting of SO (which sounded crazy).
> Forgot to mention, even reading the title of this post my initial thought was that it was documentation relating to the sunsetting of SO (which sounded crazy)
And I thought it was Stack Overflow sunsetting the very idea of tech documentation because now everybody just read the SO thread for everything they want to do, which is even craziest.
Django is a weird case too because the official docs are so good and also offer very good tutorials. And the Two Scoops book is such an invaluable reference too. Reading both would put you in the position where you won't really need SO for Django questions.
Definitely, the official docs are fantastic. A lot of the SO use came from having a solution based on the docs, but wanting to check I wasn't missing a prefered/recommended way to do it, or being fairly sure something would be a Django built-in but not finding it (so SO was a bridge from how I was describing something to where it was in the official docs).
Now that MDN is an excellent resource, and MS finally made MSDN documentation more search-engine friendly with docs.microsoft.com I'm hoping it will mean W3Schools will be relegated to lower ranked google results.
I don't know how they're able to hold their place still, I really don't.
To be fair, they offered a complete JS reference when none existed (at least that I knew of), in format which was easy to understand. I don't really know where the hate against w3s comes from... I still find them easier to use than MDN for quick lookups.
The hate comes from little inaccuracies that have caused hours of stress and confusion. It is probably not as bad now but I recall getting pretty frustrated after spending hours debugging only to find out the docs were wrong.
It doesn't really teach you anything in depth, opting instead to just spit out a bunch of examples.
As someone who used it initially years back starting out, I would have appreciated if it actually gave me context about how things worked and why rather than just copying and pasting code.
The only real reason it seems to get attention is due to the feedback loop of its ranking. Users see it as a top result and assume it must be some sort of authority on web development.
It has nothing to do with the W3C despite the name. Not to imply that beginners might know about W3C in the first place but still!
Examples are super useful; for the cases I've used w3schools, their example either worked almost directly or at least showed me how to do something quickly. Keep in mind that I'm not a real web dev, so my usecases are trivial stuff.
> It doesn't really teach you anything in depth, opting instead to just spit out a bunch of examples.
You spelt the very reason it is (was?) popular. The documentation/tutorial that gets traffic isn't the one with the most in-depth technical treatment, but, one which gives accessible examples to get started.
The very first thing you see is a huge green box "Why does MDN look different?", which is completely irrelevant to what I'm looking for. Scrolling down reveals thin gray on gray fonts which make the page hard to read. The amount of information is excessive if you're in a hurry.
Note that it's called W3Schools, not "w3cschools". Lots of people assume they have something to do with the W3C because they named themselves something confusingly similar, but in fact they are not related to the W3C at all.
Yes I'm surprised they don't mention this as a reason for failure because, if it doesn't show up in Google search results, the whole project is doomed regardless of its merits. Nobody is going to go specifically on Documentation, use the custom search, often not find what they are looking for, and then go to Google.
I am sorry, I might be uninformed, may I know the merits of the product? As far as I know it wasn't really helpful. It was like someone built github for writing technical documentation.
Some pages are pretty good, and poor quality content gets downvoted and eventually deleted anyway. To take an example if you search for "php mysql" on Google, the top result is a w3school page full of ads with little content.
But again if it doesn't show up in search results it doesn't matter. That also means there's less of an incentive to improve the content since nobody will read it.
Agreed. I didn't even know Documentation existed. I googled for it and eventually picked at random this page about Java lambda expressions [1]. Then I googled for Java lambda and Documentation is not in the first page. To be fair, there are no Stack Overflow results in that page.
However, if I google for a more specific issue such as Java lambda foreach index, guess what's the first link I get? This Stack Overflow page [2] Actually, the first six links are SO pages.
So, it is possible that they busted Documentation because of bad SEO for generic plain vanilla searches.
There's no such thing as "the top Google result", Google's search algorithms don't serve up the same results for every search for everyone at every time.
SO Documentation had low Google results because nobody used it, didn't have that many good examples, so people rarely linked it and so it had low pagerank.
I wonder how the reputation affected how it all played out. Lots of people threw in minor edits, irrelevant topics etc. in hunt for the insane amount of reputation it offered. After a few weeks the reputation gain was tuned down, but what happened the first days is kinda set in stone. The structure, topics etc., all which is hard to change without a concentrated and directed effort from a lot of people.
so i think the decision to give rep for documentation posts contributed substantially to its failure. Two reasons why i say this:
(i) (as you mentioned) it encouraged early rep mining by novice devs and in at least some case, created a top-level structure that i found suboptimal (to say the least); and
(ii) i think giving rep also provoked the high-rep SO users enough so that they never went near documentation, and so if docs were going to work, it was going to be without the same folks who helped build the Q&A. The OP mentions "New users weren't coming to Documentation" (as consumers) but at least in part that was because not enough quality content....
As for (ii): I’m not exactly high-rep with 1.9K rep, but that is pretty accurate. The rep-mining that went on in the beginning and the resulting atrocious quality turned me off completely from SO Documentation. I don’t answer much, but if I do I put in a quite some effort to provide a well-thought out answer and with Documentation it seemed like that was not appreciated or wanted anymore. I don’t really care for the rep, but I was slightly pissed off that you could get massive gains on the main SO site by posting absolute garbage on Documentation, because for me that felt like SO had jumped the shark.
After hours of bug hunting I can spend a few minutes to share my solution on SO. Documentation writing is so much different task. Additionality for many people English is a foreign language.
But also I never saw a link ON Stack Overflow point to said documentation. I wasn't even consciously aware of it, even though I must have seen the announce when it launched.
Really, I don't know why they needed so much firepower on that anyway. Just a glorified wiki + maybe paying some good known documenters to kickstart the site with a few very high quality guides would have been enough to get the ball rolling (given internal promotion).
I think in order to have a succesful project like this, you must allow it go through a longer span of the passage of time. People need to create new projects, write docs for it etc. It felt like SO Documentation was pretty much invisible and now they are just shutting it down.
However, I didn't really see the need for it anyway since most larger projects already have their own documentation and don't want to host it on a third party site. Smaller projects just have some examples on the readme. So who is SO Documentation targeted for?
I think a good use case for SO Documentation could be writing tutorials and guides on how to setup stuff. How to install stuff etc.
As a few other meta posts said, rename it to "Examples" instead of (official) documentation and it probably would've done well... but then again, isn't that what a lot of SO content already is?
I've never wished for better documentation instead of a clear example for my specific scenario, and it seems the existing site already has that well covered.
The link the appropriate examples/tutorials from the pages of related questions. Then they can leverage their SEO for people's issues and drive traffic to documentation.
But most people go to SO to find solutions, so it's probably in the nature of the site to privilege short reads over longer ones. That could change but it takes time.
I was very skeptical about this early on. IMO, documentation is best left close to the code. Collaboratively editing is what git and project wikis are for (esp in open source).
Speaking of sunsetting: I wish there was a way to sunset a StackOverflow question as "no longer true" or "superseded by new version".
Rust and Android Studio, for example, are particularly bad about getting relevant, working current results buried under mountains of not terribly old stuff that is now deprecated or moot.
The tried and true way to do this is to either edit one of the best existing answers to include different solutions for different versions or to create a new answer with that same info. And you can liberally take from or excerpt the best existing answers too.
It, of course, may take a long while for a new answer to get upvoted towards the top.
Besides the obvious reason, not showing up in search results, there is another glaringly obvious one. Well, obvious to anyone except Stackoverflow: their documentation site is horrible.
There was no structure to the docs, no way to create structure or promote relevant parts of the documentation.
Let's open Python docs. Right now it looks like this:
- Getting started with Python Language
- Incompatibilities moving from Python 2 to Python 3
- List comprehensions
- List comprehensions
- Common Pitfalls
- Generators
- Classes
- String Formatting
- Functions
...
Yes, there are two `List Comprehensions`. I mean, wat.
As you go into each "Chapter", they all consist of random sections, and the table of contents (called Topic Outline) helpfully hides all links to all sections saying something like "13 more examples" that you have to click to expand.
And the list of problems just goes on and on and on. All of these issues have been raised numerous times and dismissed out of hand by SO developers.
Sounds to me like they didn't really dismiss those issues, they just didn't have the resources to fix them.
> Unfortunately, we can't afford to work on the problem at the moment. While we have an exceptional team of engineers, there just aren't enough of them to support all the projects Stack Overflow is working on.
Look at the organization of the python documentation. Consider how useful that is for learning how to program in python.
Then go out and get an actual book, targeted at your experience level for programming. Do you need a bunch of tutorials? Or just a language reference?
Without a reasonable investment of volunteer curators for the material, the SODocs will never be as good as the focused material.
There was too much focus on making it so everyone could contribute with not enough focus on the workload of the people who knew the material, tried to invest time into curating it and ultimately gave up under a deluge of people just there for the rep.
To be clear, I don't mean to claim that the Stack Overflow docs are currently a good answer. I just mean that Stack Overflow Q&A is designed to answer narrow, specific questions, not broad ones like "how can I write a program in Python?"
I find starting something is easier than closing / shutting it down. We know several metrics to start something. Demand, high chance of success in the future, niche market, etc. But how do you think about shutting down something? I mean, how to distinguish "failure", "must struggle a little bit more", and "buying more time"?
Ever since StackOverflow started closing strictly off topic questions that were interesting and still related to programming (closed as not constructive, or locked and marked as having "historical significance" such as https://stackoverflow.com/questions/1995113/strangest-langua...) the sense of community there pretty much disappeared. There's not much incentive for knowledgable people to visit a site that is boring, and now StackOverflow seems to contain a lot more questions asked by noobs (I've done this about subjects I don't know) that go unanswered.
The same also goes for questions that are almost duplicates. Or are basically but have been inactive so you want to get further information. And when interesting discussions get moved to chat. The whole place is just boring and too heavily controlled. I"m not surprised something that required community failed there.
There seems to be an "Overflow" for pratically everything these days, so the question is, why can't they make another board for these more general questions and discussions? ITOverflow? WebArchitecture?
There a are people discussing the correct usage of English grammar and how to best raise their kids, why not whether NoSQL is really the right solution? Flame Wars?
> You should only ask practical, answerable questions based on actual problems that you face. Chatty, open-ended questions diminish the usefulness of our site and push other questions off the front page.
This is sort of the fundamental limit of the format they chose.
AFAIK none of the StackExchange sites aside from Meta allow "discussion". It's all about questions and answers, discussion is supposed to be confined to chat rooms.
As you said though, there are a few StackExchange sites which deal with more "squishy" topics, like software design or parenting.
There is the softwareengineering.stackexchange.com where this type of question is on-topic:
> If you have a question about...
> software development methods and practices
> requirements, architecture, and design
> quality assurance and testing
> configuration management, build, release, and deployment
It would be nice if, instead of closing a question as off-topic and asking it again on another site, there was an option for easily transferring the question from one site to another.
There was a definite step-change in strictness a few years ago, though. This is evidenced by the sheer number of questions which are marked "this question exists for historical significance, but [don't ask questions like this]" and locked.
That's not a useful metric. The questions that today show up as locked for historical significance were simply closed before the historical significance lock was introduced.
Conversely, the lock was introduced to stop those highly interesting (but ultimately useless) questions from getting deleted. If anything, it's a step in being less strict.
The number of times I've received a quick answer from a closed question (as in marked off topic or something other than solved) is relatively high. Moderators tend to be either too heavy handed and nepotic or completely hands off. It's not an easy job but, seems like entrenched interests have always been more important than anything.
A lot of closed questions do get deleted automatically. They have a few metrics to decide which questions to keep: https://stackoverflow.com/help/roomba
The same "question" can be asked many different ways, so it is useful to close all but one duplicate and have them all link to the authoritative Question.
This allows for Googlers to use several different wordings for a question and still find the single page with the answer.
A core problem for Stack Overflow is the lack of people willing to curate material. Its not an easy job and is quite thankless.
Its possible to have a site that is a mashup of /r/programming, /r/programmerhumor and /r/learnprogramming (and a few others) all on one site. Though when all of those things are together on one site it makes the job of the people trying to curate it impossible.
Sure, Strangest language feature is interesting... and it has 320 visible answers when it was locked. Is it useful? It might be interesting, but it is impossible to remove the crap content from it (go to page 11 and start reading backwards and saying "is that useful or not?").
> It is by programmers, for programmers, with the ultimate intent of collectively increasing the sum total of good programming knowledge in the world. No matter what programming language you use, or what operating system you call home. Better programming is our goal.
Interesting stuff and fun stuff may be interesting and fun - but when it gets in the way of making a site that is a library of good programming knowledge... something needs to be done about it.
Everything doesn't have to be on Stack Overflow. There are many other sites that are better suited to discussions and fun things than the format for that Stack Overflow took as a Q&A site.
It may be boring and heavily controlled... but that unity of vision is necessary for trying to make it a site that provides material that I need when I search for how to deal with some programming problem of configuring Spring Statemachine or whatnot... and then interesting and fun gets in the way of me doing my job.
Lately I have been writing a lot of Python and I am seeing a lot of bit rot in Stack Overflow lately.
For one thing, it seems almost all the code snippets use "print-without-parenthesis" from Python 2, so you cannot just cut and paste them into Python 3. It isn't hard to fix this, but it's a clear sign the lights are on and nobody is home.
The lack of curation is a problem too. Often the first answer is wrong, or less than optimal. From the viewpoint of somebody looking for answers you don't really want 10 people's opinion, you want one really good answer.
Agreed. I think a lot of this could be solved if they unpinned accepted answers from the top spot on questions and weighted votes based on how recent they are. That way new answers to old questions would have a better chance of rising to the top of the page more quickly.
But then you're not sorting based on quality at all. The idea is the best answer should be the one on top. That's not necessarily the most recent answer, but it's also not necessarily that one answer that is really outdated but has accumulated tons of votes by virtue of being around a long time either.
Active sort is still based on quality -- it's not strictly most recent, but some combination of recency and votes... maybe like Reddit's hot sort.
For instance, on this question I posted a nicely upvoted thorough answer to a popular old question whose other answers were dated. By active sort it becomes #2 (#1 is always the accepted answer), but by votes sort it's #4.
The part about an old answer that was highly upvoted but is no longer right definitely exists — I'm not sure if they've thought about solving that one.
But yes, answer rot can be a bit of an annoyance. Often it helps to check the answering date. The official answer to the problem is that one should post a new answer to an old question, but it would be great if one could just drive-by flag things as outdated, needs update or something like that.
It's even worse with javascript. Often times there will be 10+ duplicates with legacy kludgy answers that are irrelevant now or using jquery, when the correct answer should use new APIs or less buggy browsers.
The solution to this is to get the original question asker to consider changing the accepted answer. You can leave a comment on their question if it's many years old to bring it to their attention.
Yeah, success definitely varies if the person is no longer active and doesn't respond to the email notification. I've had mixed results with it in the case where the asker (new to SO) didn't realize upvoting answer(s) and accepting an answer are different things.
If it's a really popular question I think making it a community wiki is an alternative.
You can edit other people's answers to update them or fix this. Most people are very open to it. I do it regularly if the code isn't linted or if SQL keywords are lowercase vs uppercase to improve readability for everyone.
I agree if it is fundamentally changing the nature of their code, but expanding an answer to include a Python 3 solution alongside an existing Python 2 one is something I've done myself and haven't experienced any issues with. IMO the most important part is to preserve and extend the original answer vs re-write it completely.
You don't have to modify, and I never do except to improve readability (read: eliminate or reduce horizontal scrollbars). It's not unusual to see a good contributor add an answer to an old question that uses newer syntax or version features. "The accepted answer is quite old but this question is the top result for 'javascript arrays' (e.g.), so this is how you do it in ES6."
Sure, but can answers be un-accepted once technologies have advanced and better solutions have become available? I see a lot of accepted answers that were correct and relevant once, but not in (Summer of) 2017.
Yes, it is possible and best practice to re-accept if the previously accepted answer is no longer correct. Only the asker can change the accepted answer.
> Everything doesn't have to be on Stack Overflow. There are many other sites that are better suited to discussions and fun things than the format for that Stack Overflow took as a Q&A site.
But that's the point: if people are leaving the site to get that discussion and fun stuff elsewhere they're not on the Stack Exchange network, and so they're not answering or tagging or voting or flagging.
Only a small fraction of the site is voting in ways that enable moderation and curation or flagging. They don't leave because they can't read fun things - they leave because those actions have no apparent effect on the crap that shows up each day... and then run out of votes for various actions.
Fun material is rarely present on sites intended for technical accuracy. Trying to add jokes to Wikipedia main page content is a similarly fruitless endeavor.
Speaking as someone who used to answer regularly and now doesn't at all, it's because the moderators have gotten insane and taken the fun / interest out of it. So at least in my case, your thesis is incorrect.
Would it be useful if while reading about a solar eclipse I would find jokes about people pulling their pants down and mooning you?
The content and vision of the founder for that content is what draws people to Wikipedia and stack overflow.
That it takes people who occasionally need to be assholes in order to maintain that vision and ideal is a failing of communication to the out of sync contributors... and those contributors to follow that ideal.
There is nothing stopping anyone from forking the content stack overflow or Wikipedia and providing a different vision. If more people follow that new vision, it wins and the world shifts to a different site (that is what happened with experts exchange).
The main problem with the fork however, is getting the people who contribute good material and don't want to have to read jokes about exposed buttocks on the moon or favorite comic strip amidst documentation for Java.
The problem is that "people who occasionally need to be assholes" overlaps significantly until it is a constant stream of people in asshole mode (who are just having their asshole moment of the day). So it's disingenuous to say that people are "only occasionally" being assholes. There is definitely a unified asshole front, even if it's only being manned by part-timers.
Yes, it would be fun. The problem being that there is no scale to measure humour and taste, and that moon joke doesn't seem good. But I regret that, in the absence of a scale, our culture decides there shouldn't be humour. I'm curious whether it's a USA thing or whether an Asia-originated or Africa-originated Wikipedia and StackOverflow would have resulted in different rules.
I don't know what the grandparent meant by jokes, but the current problem -- the malignant influence of a small number of authoritarian Wikipedia editors -- has nothing to do with cracking down on silliness.
> A core problem for Stack Overflow is the lack of people willing to curate material.
I think the word "curate" is interesting here, as in, pick for emphasis. I think maybe a mistake that SO makes is to close or remove topics, rather than "deemphasize" them.
Instead of closing things, why not just make poor answers and poor discussions lead to less likelihood of being found in the search engine. (I suppose this might take some coordination with Google et al..)
One thing I don't particularly like about SO is that the questioner must select the "accepted" answer. Quite often this isn't the best one, or there isn't a best one, or there is too much discussion in the comments and not in the answers.
What is missing imho is a meta vote. Individual questions and answers have votes, but I think the "selection of the best answer" should also have a kind of "confidence vote". This might help to make the most interesting questions and answers more visible.
On the other hand maybe it's so "meta" that no one would use it, and a recommendation engine is only as good as the willingness of users to recommend things..
But in any case my overarching point is that there are too many "binary" evaluations of goodness on SO, instead of letting things bubble up to the top when they're interesting. (The difficulty of course being to define "interesting" as useful and accurate, rather than just clickbaity.)
> I think the word "curate" is interesting here, as in, pick for emphasis. I think maybe a mistake that SO makes is to close or remove topics, rather than "deemphasize" them.
Questions should also "age" and become deemphasized with time, especially for more popular topics. SO is getting old, with a lot of out-of-date stuff, and relying on manually closing topic to maintain quality isn't going to help with that. If stuff aged out, it would push the more recent stuff to the top. It would also increase engagement since there'd be space to answer the old questions in new ways without it being futile.
That's not to say the old answers are bad (people have to work on legacy stacks after all), but you should only find that stuff if you want it.
True, it should be possible to flag information as old or obsolete without it being marked "wrong". Maybe similarly, there are cases where the specifics may be out of date but the idea or concepts are nonetheless valid. Perhaps it should be possible to mark answers as "timeless".
A down vote is not marking it wrong. It is indicating that it is not useful (compared to other content?).
As to "timeless" - consider that even such material can expire. The "timeless" information about how to simulate a closure in Java (valid from 1996 to 2014) is no longer timeless. The timeless material applicable for all versions of Python (until Python 3) would make it just as difficult to get rid of as a green checkmark next to the answer that someone found helpful at some point in the past.
If you ever create a meta-moderator user script for Stack Overflow I'd be interested in seeing how well it works. The biggest problem being the volume of material that is coming in on a daily basis.
Curate was very specifically chosen. There is moderation - which is about the selection of material to see and its removal... and then there is curation which focuses on maintaining existing material.
These are only a few instances of places on Stack Overflow where community curation of larger material has worked. The C++ community on Stack Overflow is very careful and protective with https://stackoverflow.com/questions/388242/the-definitive-c-... . But outside of that, most people let questions and answers rot.
Fun and interesting can happen when it doesn't become a distraction for the site as a whole. MathOverflow, with more active curation that is possible with a larger active contributor to overall community ratio is able to handle list questions ( https://mathoverflow.net/questions/tagged/big-list?sort=vote... ) in a way that has often failed to be curated well on Stack Overflow.
The "less likelihood" is a binary thing. Stack Overflow can't say "index this, but don't show that result often" to google. Google does what it wants. The way to remove noise to help with the signal for that vision of good programming knowledge is to, well, remove noise. People up voting fun things makes that signal for good material even harder to find though.
> Curate was very specifically chosen. There is moderation - which is about the selection of material to see and its removal... and then there is curation which focuses on maintaining existing material.
Right, but I guess I'm sort of suggesting that what is needed is something in-between. "Soft" curation, if you want. Just an idea anyways, but it seems to be like it would be more scalable, and less likely to cause controversy e.g. when something gets deleted.
> The "less likelihood" is a binary thing. Stack Overflow can't say "index this, but don't show that result often" to google. Google does what it wants.
But yeah I guess that is the crux of the matter.. not much can be done about other people indexing old/bad stuff.
> A core problem for Stack Overflow is the lack of people willing to curate material. Its not an easy job and is quite thankless.
Are you serious? Whenever a community allows for more-or-less self-appointed authority figures, they ALWAYS emerge, as they are drawn to the perceived power.
Wikipedia, Stack Overflow, etc. They all have their toxic "lawyers". Users who have passed a certain threshold of "points", or else are simply willing to invest the time to squat on a topic, and enjoy abusing the power to delete or revert contributions from others.
To a certain degree it's probably a good thing, as the sites would be overrun by trolls without them. But they also tend to calcify the culture after a few years, and drive down any incentive for new contributors to step in.
StackOverflow's core problem isn't a lack of people willing to edit questions or vote-to-close. It's core problem is that it's been at least 5 years since I last felt like reading or answering any open questions, or even posting any new questions of my own, and I don't think this sentiment is uncommon.
>Its possible to have a site that is a mashup of /r/programming, /r/programmerhumor and /r/learnprogramming (and a few others) all on one site.
The fact that these are three separate subs and not one kinda betrays your point though. How did it get this way, where there are multiple subs? Is it because the mods were overbearing, or because the community decided what it wants and doesn't want?
There are cases when content from one sub seeps through to another, and the blowback isn't nearly as bad as what you see on SO.
My top 3 answers are one-liners that solve "problems" any semi-competent developer shouldn't even need stackoverflow to solve. The answers that required some effort, more code and explanations are not that "valuable" because they answer more specific problem that is not shared by many developers. I don't have a problem with that, I don't answer on SO only to accumulate points, but in my opinion it skews the incentives towards going after the low-hanging fruit. The closer it gets into "RTFM" territory the bigger the possible payoff.
EDIT: And the karma DOES matter if you want to get new opportunities via stackoverflow careers. I have landed a job recently via SO and chatted with the recruiter a bit about their experience with the platform. He told me some companies specify they want to hire from the pool of Top X% in given technology. Another thing is the response rate on SO is dramatically better than Linkedin, which doesnt surprise me: I do my best to answer every SO Careers message while I mostly ignore Linkedin recruiters.
I've answered a bunch of narrow questions like the ones you described, only to see them closed later because the community decided it doesn't want to include those questions. My attitude has always been, "Speak for yourself. I'm fine answering them." But, of course, they still get closed, so now I don't even bother.
There are people (like me) willing to kill some time solving useful problems that people in the real world are actually having, but SO's theory of broken windows is so extreme that they want to make me feel bad for doing that.
You can blame Jeff Atwood. He outlined his theory of the descent of sites into irrelevance in some blog posts, then put it into action. There's code on SO to prevent two questions having an identical title for example. Even though he's long gone from SO management, the legacy of his philosophy is still abundant.
The thing with the RTFM moments, is that, when I'm experimenting with a new technology, I often ask Google a question and it points me to a stack overflow page.
Yes, the question is obvious. And yes, it can be answered via 10-20 minutes of RTFM. But, the value of Stack Overflow is that it replaced 10-20 minutes of RTFM with a simple answer.
So, don't knock the RTFM questions on Stack Overflow. That's part of its value to the greater community.
(I must admit that I've answered very few Stack Overflow questions because every time I find an answer. I did take the time to write out a well-written answer for an obscure problem, and it got me plenty of points. It's nice that the community has a 1000x ROI, too.)
> But, the value of Stack Overflow is that it replaced 10-20 minutes of RTFM with a simple answer.
But at the same time you are learning with blinders on, i.e. you miss out all those things you would have also learned by reading the documentation.
This is not particularly bad when you're just starting out. But if you see RTFM-level questions from people which appear to already be in the business of building complex applications then you start to wonder if this kind of thing incentivizes help-vampirism.
Personally I prefer to answer niche questions or things that are not well-documented yet.
> you miss out all those things you would have also learned by reading the documentation.
That's assuming that the documentation is articulately and technically well written. Unfortunately that's more often the exception than the rule. That's rather the whole reason that StackOverflow even exists, I think.
I find JS is well documented on MDN, but doc writers can't possibly imagine all edge cases and interactions. A lot of these cases are "If you knew about that simple feature of instruction A and the simple feature of instruction B and how they work together then you can solve this problem".
It's also assuming the SO answer is less considerate of context than the documentation; this can be the case, but I find quite often good answers are quite comprehensive and explain things broadly.
before: questions were always open. and over time people added those details.
now, after someone answer with a one liner and gets accepted, the question is "closed to prevent 'me too' comments"
it's going downhill for the same reason every internet community does: power crazy moderators who completely misses the point of the site they moderate.
The "me too" functionality is protection, not closing - registered users with a certain amount of reputation can still answer them. Similar to Wikipedia's system.
Every "me too" protected item I've seen has half a dozen "me too" answers deleted at the bottom. It's likely necessary.
I don't think it's just the moderators, there's also an incentive problem because a popular question/answer has no limits on its point-payout.
This leads to a kind of popularity gold-rush pattern. Hard important stuff languishes while easy stuff is has a glut of volunteers.
I'd be interested to see what happens if questions and answers only gave up to a fixed limit of Internet-points to the authors or contributors. Would it lead to a broader knowledge base?
Generally if I'm going to SO instead of RingTFM, it's because I don't particularly need to learn. I just need to fix this one thing that's tangentially related to my work. And usually my deadline precludes me spending time learning it anyway, even if I'd like to.
Meh, it's just another resource. Sure you can make a case it encourages help-vampirism, but I would argue that help vampires are largely incapable of becoming competent anyway. Basically, anyone that will become a competent programmer has a hunger to learn and fit all the pieces together, and will be frustrated by endlessly googling and posting questions that take hours or days to receive a reply; no matter how much googling/documentation is involved, ultimately they will learn to synthesize solutions efficiently. Meanwhile there are many people who believe being able to program is just a question of accumulating enough facts and they never progress past asking whole-cloth questions. I'm sure some are capable of crossing the chasm, but if it doesn't happen early I don't think it ever happens.
For a help vampire, even SO is not rich enough to make them competent. For a competent developer, SO is not efficient enough for them to learn helplessness.
> My top 3 answers are one-liners that solve "problems" any semi-competent developer shouldn't even need stackoverflow to solve.
Remember that SO's main traffic source isn't experts, it's novices searching for answers. I did some digging at one point, and the most popular questions on ServerFault are extremely basic, like 'how to make a symlink' basic (viewed 1 million times https://stackoverflow.com/questions/1951742/how-to-symlink-a...). If you're a developer or student just trying to figure out this one UNIX thing so you can get back to JavaScript or CS:Go or whatever, this is great.
I agree and appreciate that, but I don't know that it's always true. The problem is that a lot of documentation and man pages out there just aren't written well. They bury the lede and make you dig around to figure out how to do that simple thing you want to do. Googling for something and immediately finding that specific question on SO even if you could go look it up in pages of docs is a time saver.
Edit: Or perhaps the library has poor usability. I've been doing python programming for 6 years now and know the standard library like the back of my hand, but if I have to do anything reasonably complex with datetime you can bet I'll probably just look for someone on SO that has had the same problem and crib the answer.
It's weird that they're closing Documentation, because my experience is that SO doesn't actually want to be a Q&A site, it wants to be a crowdsourced documentation site disguised as a Q&A site for some reason. They'll close legitimate questions because they're not broadly applicable, which isn't really how Q&A works.
I often wish they had implemented a ‘tangent’ mechanism that would have allowed folks to have an interesting conversation in a bit of an off topic manner about the question. It could be represented by an a link and not interfer with the main answer.
Stack Exchange moderators needing to constantly delete comment threads with "use chat" has to be one of the biggest case of desire lines online I've seen.
Absolutely this. And also whenever I see a mod axe a whole conversation and replace it with the form response of "this conversation has been moved to chat", I know that is Stack Exchange's way of tossing conversation into /dev/null (and oftentimes when I'm involved in one of those conversations, it gets the axe because the mod doesn't want opposition to their opinion). It's deleting content without actually deleting content. I've seen way too many useful, on-topic, mind-expanding conversations tossed out using this mechanism, never to be seen again.
Yep. I stopped going there (except for incidental visits when it shows up in google searches) a long time ago because of that. The kinds of questions that most interest me -- for example, design questions -- don't have cut and dried answers. Most of what StackOverflow excels at I can find in the documentation anyway.
The last few times I've asked questions, they were closed as duplicates to questions that weren't related but for a few key words. And often it was done by some of the same set of power users. I've tried adding explanation as to why its different, and some have been reopened, but mostly it isn't worth the time anymore.
I had this happen to me 2-3 times as well. Incorrectly flagged and closed by point seekers in a hurry. It made me respect the platform less and honestly I find myself barely participating anymore after years of activity.
If they were “point seekers”, they would have answered the questions (an action that gives points) instead of closing them (an action that gives no points). I somehow doubt the votes were incorrect, though.
Most people would tell you that if you seek the community aspect of it, you should go to Reddit, but honestly, I still feel like there's a hole for something in between. A site with the conciseness and technicality of SO but with the community and open-endedness of Reddit is something I'd definitely like to see and contribute to.
Isn't that down to just subreddit curation? Go look at askscience or askhistory, the top level responses are always relevant or they get deleted by the moderators. Nothing stops someone from making askprogramming that has that level of curation. The problem just becomes incentives, in that getting experts to write informative responses for free is hard, and once SO rating stopped mattering (like how reddit karma never mattered) people stopped trying to participate.
> closing strictly off topic questions that were interesting ... closed as not constructive, or locked and marked as having "historical significance"
SO is a great resource, but not providing a mechanism for this is its greatest failing. I understand "subjective" questions are problematic, but banning them outright without qualification is not the correct solution.
I've always thought restricting them to users with 2K reputation or something like that, and having a different set of closing standards if you tag your question "opinion" or "tool-recommendation", could work well. The most highly upvoted (ie, useful) questions are more often than not marked "closed" -- and that has always seemed like an undeniable signal that the current system doesn't capture all potential value.
Instead of trying to say "these rules apply to only this tag and always when this tag is included", that entire set of topicality was taken to a different site. Consider trying to ask the question "what is the best C complier given XYZ requirements" on SO. Its tagged with "C", "recommendations" and "compiler". Well... that would mean that it shows up in the C feed - and those people don't think its a good question, so they close it. And then the recommendation followers say "but its tagged with recommendation - that means it should be open and its ok if it gets 100 answers." Two different policies on the site. So branch the community - ask the questions about recommendations where a different policy for what makes a good question and answer on a different site.
CodeGolf was that way. https://stackoverflow.com/questions/tagged/code-golf - but two things happened. First, it got lost in the noise of all of the other questions on the site. Secondly, people who wanted to have fun questions with many answers that constantly get bumped to the top of activity were getting their questions closed and down voted because of that fun. So the community branched to a new stack exchange site https://codegolf.stackexchange.com where they have flourished even more than they were when it was a tag within stack overflow.
That Software Recommendations doesn't have the activity and isn't flourishing the same way suggests that first off people aren't interested in moderating or curating the site in a way that attracts more than drive by questions. With a Q&A site it is the Answers that drive if it flourishes or not. The quality of the answers draw other people who want to provide at least as good content. Also, the format for Q&A doesn't work as well for recommendations. Why does it have to be on Stack Overflow or another exchange site? Why not go over to https://www.slant.co where the entire focus of the site is the "what is the best XYZ" - https://www.slant.co/topics/4265/~open-source-c-c-compilershttps://www.slant.co/topics/1376/~resources-to-learn-about-c... or https://www.slant.co/improve/topics/7940/~which-open-source-... for example. Different format focused on that question doing it better than Stack Overflow ever could (but that's also because it doesn't try to do a more general Q&A format).
I appreciate this answer. It's a well thought out response to my complaint.
> Why does it have to be on Stack Overflow or another exchange site?
This seems to be the crux of the matter, and here is where I still (at least partially) disagree with you. It doesn't have to obviously, but the SO seems particularly good at answering many of these questions, as attested by the innumerable highly upvoted and closed questions and answers. Which is to say, there are many posters on SO who are exactly the people I want to ask these questions of, and who would be willing and able to answer them.
> That Software Recommendations doesn't have the activity and isn't flourishing the same way suggests that first off people aren't interested in moderating or curating the site in a way that attracts more than drive by questions.
You know that's not a reliable conclusion to draw. There are all sorts of confounds here, the largest being that people don't know about the site. But beyond that, there is just habit and access: If I use SO all the time, and some subjective question pops up in a feed I watch, I may just answer it -- even though I would never visit software recs on its own. This phenomenon is ubiquitous, and the power of entrenched habits can't be overstated.
All that said, it's possible I'm wrong and it wouldn't work. But I've read the meta threads about previous "attempts" that failed, and none of them convinced me that it can't work.
I disagree. "What is the best Javascript framework?" may have garnered +2,000 votes for "jQuery" seven years ago. What would that question look like to a newbie today?
They would likely be confused whether they should use jQuery, Backbone, or React, as they'll all be intermixed as highly upvoted.
So because it could potentially confuse a newbie, all the professional developers who can easily incorporate the contexts of the questions dates and their knowledge should be denied the ability to share useful information?
This is thing: I'm not arguing (and I don't think anyone is) that these questions have answers. I'm arguing that access to the opinions of others, along with their reputation and other indicators of alignment with your own values, has immense value. More value than the technical questions that do have right and wrong answers. I can sort through the information myself can come to an informed conclusion.
It honestly feels like some of the mods are on a power trip. Some claims questions are dupes of unrelated question (presumably they didn't bother reading them), vote to close within seconds of posting etc.
It used to be great to be part of SO. No, any time I ask a question I wonder if it's going to survive...
Consider that without people who care about the quality (and that means trying to maintain a standard for content by removing material that doesn't meet that standard), you'll get Yahoo Answers.
Surely there is a middle ground though? SO wasn't always such a negative place to be, yet users with enough points have always been able to perform 'mod' type actions.
I believe that people become rude when that is the only moderation tool that they have remaining in their toolbox to be able to maintain/protect the community that is there.
Look at those Yahoo Answers posts I linked above. Many of them are rude - because it is the only moderation tool that they have. Stack Overflow of old and the smaller Stack Exchange sites tend to be less rude because the tools to maintain the vision for what the site should be are sufficient.
The people who have the vision that closely aligns with the original Atwoodian idea tend to find the site (for lack of a better phrase) under attack from an endless tide of poorly asked questions. They cast down votes on them, they close vote them, they delete vote the worst of them... and it hasn't made any impact. A look at the front page and 50 new poorly asked questions are there. The tool that remains is to... curtly say the question is no good in comments.
This isn't helped at all by the belief from people who are more familiar with a zuckerbergian model of social sites where an up vote is the same as a +1 like follow user and anything negative done to a post is a judgement of the user who wrote it (rather than the content itself).
Another factor to consider is the ratio of people who are active in moderation and curation of the material (in particular, the amount of time they're willing to commit to those activities) to the amount of new content a day. When there are more people to help out, the content can get more attention and individual help. On CSEducators.SE, that ratio is very high. I'd guess its about an hour per post. On a site like Software Engineering.SE, it may be a minute per post. On Stack Overflow, it is fractions of a second per post.
With such little time available per post for the people who are trying to follow the Atwoodian vision of the site, you get: down vote, close, delete vote, and then when those run out "What have you tried?" and move on. There is not enough time to help a person posting a question unless they are active in trying to make it better. When it is clear that the person hasn't read a two minute tour, searched for questions first, or massaged the preview area of the screen with their eyeballs to realize how abysmally formatted the question is (ok, being a bit hyperbolic there) there's not much reason to invest any time into trying to make it a better post - down vote and move on, there's probably a better post somewhere... hopefully.
If its the 100th such post that one has seen and they're out of down votes, pulling a canned comment out of a user script and move on may be the most the person gets. It might be a bit terse (tangent - low context cultures tend to be a bit more on the terse side, while higher context cultures are expecting (pardon the stereotype) "Please kindly see the help page on editing. Thank you." in their interactions - this friction of expectation might be driving a bit of the negative perspective).
And after that, people consider Stack Overflow to be negative. Its not negative
So yes... there is a middle ground. A smaller site where there is a surplus of time and ability for moderators to do their moderation. Ideally one where new users have spent enough time on the site to understand the model for the site and its vision and goals.
You get the same thing on mailing lists. People talking about their favorite cartoon on Linux Kernel mailing list? I'm sure you would find people being rude in trying to get that topic out of their inbox - its not what was subscribed to (and in extreme cases, kicking the person off the mailing list).
In the context of Stack Overflow, it is becoming a victim of its own success. Too ma...
Nit-picking: what you are describing is not done by moderators, but by ordinary users. Anyone with 15 points can flag a question as a duplicate, then users with 3,000 points can vote whether the flag is correct.
Moderators are not ordinary users; they can do things like remove comments because they are inflammatory.
Or questions that are original but get marked as duplicate. This has happened to me several times. It's become my biggest frustration with StackOverflow. I might run into a problem that is a new variation on an old problem. I try to document it carefully, and I often link to old questions on StackOverflow so that people will realize that I've done my research, and my current problem is not the same as the older problem. But still, the moderators on StackOverflow don't always take the time to read all the way through a post. They seem to just read the first sentence or two and decide that the question is a repeat of an older question. I've been shocked at how aggressive they can be about marking a question as a duplicate.
Another frustration is stuff like PowerShell where it's entirely luck of the draw whether they answer your question or redirect it to SuperUser (where nobody is likely to be able to answer certain classes of question anyway).
Yep, totally agree. It is total insanity to me that they allow many of their most interesting and popular questions to be locked by mods just because they involve a little subjectivity. Allowing the questions to remain open wouldn't harm the site in the slightest way and would increase engagement and user enjoyment significantly. The way the policy is implemented is incredibly user hostile and unfortunately is reminiscent of wikipedia and other places where you have power-tripping mods. Once the sense of community there reduces passed a certain level there, people will stop caring, and the quality of answers will continue to decrease.
I find that the questions that are least likely to be answered are ones that require some expertise to answer. "Please write a regex for me" questions invariably get multiple answers.
I participated in creating content for SO Documentation on the C language and shortly after its inception I was convinced that it is going nowhere. Too much emphasis was put on "examples" and many low-reputation users saw this as an opportunity for gaining easy reputation points. Most of the examples were poor and short without any insight on the underlying concepts. There was no incentive for quality content because every topic had to have only a short introduction and a gazillion "examples".
I'm glad they're being so open and honest about what the problems are and the reasoning behind the decision. I was excited about Documentation when it was announced. It sounded cool. But I've never used it.
I guess contributing to full "improved" documentation with examples is actually a lot more work than just answering someone's question.
221 comments
[ 3.8 ms ] story [ 331 ms ] threadAs much as I loathe the state of documentation of some projects, I'd rarely open a specific website for help - I'll just Google, "publish npm package", "configure npm package", for which, none of the search results point to a StackOverflow documentation page.
[1]: https://stackoverflow.com/documentation/node.js/482/npm#t=20...
Few announcements through regular comment notifications would be fine to me even if not interested.
Look again. There is DocumentationBETA in the top bar, it has been there since they started the project.
Anyway, who looks at the navbar? People get there by googling a problem they are having now. They're in hurry, no time to look around.
I probably ended up on SO hundreds of times in that period, and never once saw Documentation mentioned (I _may_ have technically seen it in the nav bar, but just seeing "Documentation" in that context I'm going to assume it is documentation _for_ SO and just ignore it).
E: Forgot to mention, even reading the title of this post my initial thought was that it was documentation relating to the sunsetting of SO (which sounded crazy).
And I thought it was Stack Overflow sunsetting the very idea of tech documentation because now everybody just read the SO thread for everything they want to do, which is even craziest.
I don't know how they're able to hold their place still, I really don't.
It doesn't really teach you anything in depth, opting instead to just spit out a bunch of examples.
As someone who used it initially years back starting out, I would have appreciated if it actually gave me context about how things worked and why rather than just copying and pasting code.
The only real reason it seems to get attention is due to the feedback loop of its ranking. Users see it as a top result and assume it must be some sort of authority on web development.
It has nothing to do with the W3C despite the name. Not to imply that beginners might know about W3C in the first place but still!
I wonder if it's still the same team of 3 developers running the place? Here's a writeup about it http://w3schools.sinsixx.com/about/about_refsnes.asp.htm
You spelt the very reason it is (was?) popular. The documentation/tutorial that gets traffic isn't the one with the most in-depth technical treatment, but, one which gives accessible examples to get started.
https://www.w3schools.com/JSREF/jsref_slice_array.asp
The very first thing is an example. The contrast of the fonts is easy on the eyes. You'll be definitely writing code using this method within minutes.
https://developer.mozilla.org/en/docs/Web/JavaScript/Referen...
The very first thing you see is a huge green box "Why does MDN look different?", which is completely irrelevant to what I'm looking for. Scrolling down reveals thin gray on gray fonts which make the page hard to read. The amount of information is excessive if you're in a hurry.
The Documentation page for this in comparison is helpful and gives a good overview (with more and more detailed topics as you scroll down): https://stackoverflow.com/documentation/php/2784/php-mysqli
But again if it doesn't show up in search results it doesn't matter. That also means there's less of an incentive to improve the content since nobody will read it.
However, if I google for a more specific issue such as Java lambda foreach index, guess what's the first link I get? This Stack Overflow page [2] Actually, the first six links are SO pages.
So, it is possible that they busted Documentation because of bad SEO for generic plain vanilla searches.
[1] https://stackoverflow.com/documentation/java/91/lambda-expre...
[2] https://stackoverflow.com/questions/22793006/java-8-foreach-...
That isn't the top Google result for 'Stack Overflow Documentation'. It's not even on the first page. https://www.google.co.uk/search?q=stack+overflow+documentati...
My search results were what I'd expect:
http://i.imgur.com/o9gPJ4c.png
https://stackoverflow.com/tour/documentation
https://stackoverflow.com/documentation/documentation/topics
https://stackoverflow.com/documentation/python/topics
None of these are https://stackoverflow.com/documentation .
SO Documentation had low Google results because nobody used it, didn't have that many good examples, so people rarely linked it and so it had low pagerank.
(i) (as you mentioned) it encouraged early rep mining by novice devs and in at least some case, created a top-level structure that i found suboptimal (to say the least); and
(ii) i think giving rep also provoked the high-rep SO users enough so that they never went near documentation, and so if docs were going to work, it was going to be without the same folks who helped build the Q&A. The OP mentions "New users weren't coming to Documentation" (as consumers) but at least in part that was because not enough quality content....
But also I never saw a link ON Stack Overflow point to said documentation. I wasn't even consciously aware of it, even though I must have seen the announce when it launched.
Really, I don't know why they needed so much firepower on that anyway. Just a glorified wiki + maybe paying some good known documenters to kickstart the site with a few very high quality guides would have been enough to get the ball rolling (given internal promotion).
However, I didn't really see the need for it anyway since most larger projects already have their own documentation and don't want to host it on a third party site. Smaller projects just have some examples on the readme. So who is SO Documentation targeted for?
I think a good use case for SO Documentation could be writing tutorials and guides on how to setup stuff. How to install stuff etc.
Providing a shared space where people can contribute to something like that without having to make a PR and push a release to PyPI could be useful.
I've never wished for better documentation instead of a clear example for my specific scenario, and it seems the existing site already has that well covered.
The link the appropriate examples/tutorials from the pages of related questions. Then they can leverage their SEO for people's issues and drive traffic to documentation.
But most people go to SO to find solutions, so it's probably in the nature of the site to privilege short reads over longer ones. That could change but it takes time.
Rust and Android Studio, for example, are particularly bad about getting relevant, working current results buried under mountains of not terribly old stuff that is now deprecated or moot.
It, of course, may take a long while for a new answer to get upvoted towards the top.
And the worst is, asking a question will get marked as "duplicate" or something.
Besides the obvious reason, not showing up in search results, there is another glaringly obvious one. Well, obvious to anyone except Stackoverflow: their documentation site is horrible.
There was no structure to the docs, no way to create structure or promote relevant parts of the documentation.
Let's open Python docs. Right now it looks like this:
- Getting started with Python Language
- Incompatibilities moving from Python 2 to Python 3
- List comprehensions
- List comprehensions
- Common Pitfalls
- Generators
- Classes
- String Formatting
- Functions
...
Yes, there are two `List Comprehensions`. I mean, wat.
As you go into each "Chapter", they all consist of random sections, and the table of contents (called Topic Outline) helpfully hides all links to all sections saying something like "13 more examples" that you have to click to expand.
And the list of problems just goes on and on and on. All of these issues have been raised numerous times and dismissed out of hand by SO developers.
> Unfortunately, we can't afford to work on the problem at the moment. While we have an exceptional team of engineers, there just aren't enough of them to support all the projects Stack Overflow is working on.
I won't be able to find all the discussions that were happening right around the time it left the private alpha/beta. They were quite heated.
[1] https://meta.stackoverflow.com/questions/349410/tearing-down...
I personally think it's a bad idea. It's what users think they want rather what they'll use.
The classic RTFM is a classic because humans don't want to and won't. They just want a direct colloquial answer, cause human. AKA classic SO
Then go out and get an actual book, targeted at your experience level for programming. Do you need a bunch of tutorials? Or just a language reference?
Without a reasonable investment of volunteer curators for the material, the SODocs will never be as good as the focused material.
There was too much focus on making it so everyone could contribute with not enough focus on the workload of the people who knew the material, tried to invest time into curating it and ultimately gave up under a deluge of people just there for the rep.
To close something seems like not trivial.
e.g
Q: what is foo?
A: foo is Y : <example>
The doc writers can then put above into docs, along with form of original question ("what is foo"), such that the SO page is no longer needed.
Through such a mechanism, SO could improve official docs rather than just be a Q&A repository..
Shame this ended..
The same also goes for questions that are almost duplicates. Or are basically but have been inactive so you want to get further information. And when interesting discussions get moved to chat. The whole place is just boring and too heavily controlled. I"m not surprised something that required community failed there.
There a are people discussing the correct usage of English grammar and how to best raise their kids, why not whether NoSQL is really the right solution? Flame Wars?
https://softwareengineering.stackexchange.com would probably do best for your sql/nosql thing, e.g. https://softwareengineering.stackexchange.com/q/54373
https://stackexchange.com/sites worth a browse
> You should only ask practical, answerable questions based on actual problems that you face. Chatty, open-ended questions diminish the usefulness of our site and push other questions off the front page.
This is sort of the fundamental limit of the format they chose.
https://codegolf.stackexchange.com/help/dont-ask also has it even though it encorages a significant number of answers per question (so, open ended)
As you said though, there are a few StackExchange sites which deal with more "squishy" topics, like software design or parenting.
> If you have a question about...
> software development methods and practices > requirements, architecture, and design > quality assurance and testing > configuration management, build, release, and deployment
Seems like they've been doing this since the beginning.
Conversely, the lock was introduced to stop those highly interesting (but ultimately useless) questions from getting deleted. If anything, it's a step in being less strict.
This allows for Googlers to use several different wordings for a question and still find the single page with the answer.
Its possible to have a site that is a mashup of /r/programming, /r/programmerhumor and /r/learnprogramming (and a few others) all on one site. Though when all of those things are together on one site it makes the job of the people trying to curate it impossible.
Sure, Strangest language feature is interesting... and it has 320 visible answers when it was locked. Is it useful? It might be interesting, but it is impossible to remove the crap content from it (go to page 11 and start reading backwards and saying "is that useful or not?").
Jeff Atwood wrote about this - https://stackoverflow.blog/2012/01/31/the-trouble-with-popul... . Too much interesting but ultimately not useful stuff gets in the way of finding useful stuff. This really runs up against the Atwoodian vision of Stack Overflow ( https://blog.codinghorror.com/introducing-stackoverflow-com/ )
> It is by programmers, for programmers, with the ultimate intent of collectively increasing the sum total of good programming knowledge in the world. No matter what programming language you use, or what operating system you call home. Better programming is our goal.
Interesting stuff and fun stuff may be interesting and fun - but when it gets in the way of making a site that is a library of good programming knowledge... something needs to be done about it.
Everything doesn't have to be on Stack Overflow. There are many other sites that are better suited to discussions and fun things than the format for that Stack Overflow took as a Q&A site.
It may be boring and heavily controlled... but that unity of vision is necessary for trying to make it a site that provides material that I need when I search for how to deal with some programming problem of configuring Spring Statemachine or whatnot... and then interesting and fun gets in the way of me doing my job.
For one thing, it seems almost all the code snippets use "print-without-parenthesis" from Python 2, so you cannot just cut and paste them into Python 3. It isn't hard to fix this, but it's a clear sign the lights are on and nobody is home.
The lack of curation is a problem too. Often the first answer is wrong, or less than optimal. From the viewpoint of somebody looking for answers you don't really want 10 people's opinion, you want one really good answer.
For instance, on this question I posted a nicely upvoted thorough answer to a popular old question whose other answers were dated. By active sort it becomes #2 (#1 is always the accepted answer), but by votes sort it's #4.
https://stackoverflow.com/questions/695151/data-protocol-url...
The part about an old answer that was highly upvoted but is no longer right definitely exists — I'm not sure if they've thought about solving that one.
I think that's not such a bad thing. https://i.imgur.com/Uq6tksu.jpg
But yes, answer rot can be a bit of an annoyance. Often it helps to check the answering date. The official answer to the problem is that one should post a new answer to an old question, but it would be great if one could just drive-by flag things as outdated, needs update or something like that.
If it's a really popular question I think making it a community wiki is an alternative.
This becomes especially noticeable when answers based on an old version of the language or library no longer work for a newer one.
https://meta.stackexchange.com/questions/93969/is-changing-t...
https://meta.stackexchange.com/questions/120568/is-it-possib...
But that's the point: if people are leaving the site to get that discussion and fun stuff elsewhere they're not on the Stack Exchange network, and so they're not answering or tagging or voting or flagging.
Fun material is rarely present on sites intended for technical accuracy. Trying to add jokes to Wikipedia main page content is a similarly fruitless endeavor.
wikipedia is routinely used as a site with a toxic culture that succeeds inspite of, not because of, its community.
Imagine how great Wikipedia would be if it the userbase didn't have a significant proportion of pathological arseholes.
The content and vision of the founder for that content is what draws people to Wikipedia and stack overflow.
That it takes people who occasionally need to be assholes in order to maintain that vision and ideal is a failing of communication to the out of sync contributors... and those contributors to follow that ideal.
There is nothing stopping anyone from forking the content stack overflow or Wikipedia and providing a different vision. If more people follow that new vision, it wins and the world shifts to a different site (that is what happened with experts exchange).
The main problem with the fork however, is getting the people who contribute good material and don't want to have to read jokes about exposed buttocks on the moon or favorite comic strip amidst documentation for Java.
I think the word "curate" is interesting here, as in, pick for emphasis. I think maybe a mistake that SO makes is to close or remove topics, rather than "deemphasize" them.
Instead of closing things, why not just make poor answers and poor discussions lead to less likelihood of being found in the search engine. (I suppose this might take some coordination with Google et al..)
One thing I don't particularly like about SO is that the questioner must select the "accepted" answer. Quite often this isn't the best one, or there isn't a best one, or there is too much discussion in the comments and not in the answers.
What is missing imho is a meta vote. Individual questions and answers have votes, but I think the "selection of the best answer" should also have a kind of "confidence vote". This might help to make the most interesting questions and answers more visible.
On the other hand maybe it's so "meta" that no one would use it, and a recommendation engine is only as good as the willingness of users to recommend things..
But in any case my overarching point is that there are too many "binary" evaluations of goodness on SO, instead of letting things bubble up to the top when they're interesting. (The difficulty of course being to define "interesting" as useful and accurate, rather than just clickbaity.)
Questions should also "age" and become deemphasized with time, especially for more popular topics. SO is getting old, with a lot of out-of-date stuff, and relying on manually closing topic to maintain quality isn't going to help with that. If stuff aged out, it would push the more recent stuff to the top. It would also increase engagement since there'd be space to answer the old questions in new ways without it being futile.
That's not to say the old answers are bad (people have to work on legacy stacks after all), but you should only find that stuff if you want it.
As to "timeless" - consider that even such material can expire. The "timeless" information about how to simulate a closure in Java (valid from 1996 to 2014) is no longer timeless. The timeless material applicable for all versions of Python (until Python 3) would make it just as difficult to get rid of as a green checkmark next to the answer that someone found helpful at some point in the past.
If you ever create a meta-moderator user script for Stack Overflow I'd be interested in seeing how well it works. The biggest problem being the volume of material that is coming in on a daily basis.
These are only a few instances of places on Stack Overflow where community curation of larger material has worked. The C++ community on Stack Overflow is very careful and protective with https://stackoverflow.com/questions/388242/the-definitive-c-... . But outside of that, most people let questions and answers rot.
Fun and interesting can happen when it doesn't become a distraction for the site as a whole. MathOverflow, with more active curation that is possible with a larger active contributor to overall community ratio is able to handle list questions ( https://mathoverflow.net/questions/tagged/big-list?sort=vote... ) in a way that has often failed to be curated well on Stack Overflow.
The "less likelihood" is a binary thing. Stack Overflow can't say "index this, but don't show that result often" to google. Google does what it wants. The way to remove noise to help with the signal for that vision of good programming knowledge is to, well, remove noise. People up voting fun things makes that signal for good material even harder to find though.
Right, but I guess I'm sort of suggesting that what is needed is something in-between. "Soft" curation, if you want. Just an idea anyways, but it seems to be like it would be more scalable, and less likely to cause controversy e.g. when something gets deleted.
> The "less likelihood" is a binary thing. Stack Overflow can't say "index this, but don't show that result often" to google. Google does what it wants.
But yeah I guess that is the crux of the matter.. not much can be done about other people indexing old/bad stuff.
Are you serious? Whenever a community allows for more-or-less self-appointed authority figures, they ALWAYS emerge, as they are drawn to the perceived power.
Wikipedia, Stack Overflow, etc. They all have their toxic "lawyers". Users who have passed a certain threshold of "points", or else are simply willing to invest the time to squat on a topic, and enjoy abusing the power to delete or revert contributions from others.
To a certain degree it's probably a good thing, as the sites would be overrun by trolls without them. But they also tend to calcify the culture after a few years, and drive down any incentive for new contributors to step in.
StackOverflow's core problem isn't a lack of people willing to edit questions or vote-to-close. It's core problem is that it's been at least 5 years since I last felt like reading or answering any open questions, or even posting any new questions of my own, and I don't think this sentiment is uncommon.
The fact that these are three separate subs and not one kinda betrays your point though. How did it get this way, where there are multiple subs? Is it because the mods were overbearing, or because the community decided what it wants and doesn't want?
There are cases when content from one sub seeps through to another, and the blowback isn't nearly as bad as what you see on SO.
EDIT: And the karma DOES matter if you want to get new opportunities via stackoverflow careers. I have landed a job recently via SO and chatted with the recruiter a bit about their experience with the platform. He told me some companies specify they want to hire from the pool of Top X% in given technology. Another thing is the response rate on SO is dramatically better than Linkedin, which doesnt surprise me: I do my best to answer every SO Careers message while I mostly ignore Linkedin recruiters.
There are people (like me) willing to kill some time solving useful problems that people in the real world are actually having, but SO's theory of broken windows is so extreme that they want to make me feel bad for doing that.
Yes, the question is obvious. And yes, it can be answered via 10-20 minutes of RTFM. But, the value of Stack Overflow is that it replaced 10-20 minutes of RTFM with a simple answer.
So, don't knock the RTFM questions on Stack Overflow. That's part of its value to the greater community.
(I must admit that I've answered very few Stack Overflow questions because every time I find an answer. I did take the time to write out a well-written answer for an obscure problem, and it got me plenty of points. It's nice that the community has a 1000x ROI, too.)
But at the same time you are learning with blinders on, i.e. you miss out all those things you would have also learned by reading the documentation.
This is not particularly bad when you're just starting out. But if you see RTFM-level questions from people which appear to already be in the business of building complex applications then you start to wonder if this kind of thing incentivizes help-vampirism.
Personally I prefer to answer niche questions or things that are not well-documented yet.
That's assuming that the documentation is articulately and technically well written. Unfortunately that's more often the exception than the rule. That's rather the whole reason that StackOverflow even exists, I think.
Yes. You're correct about that
before: questions were always open. and over time people added those details.
now, after someone answer with a one liner and gets accepted, the question is "closed to prevent 'me too' comments"
it's going downhill for the same reason every internet community does: power crazy moderators who completely misses the point of the site they moderate.
Every "me too" protected item I've seen has half a dozen "me too" answers deleted at the bottom. It's likely necessary.
This leads to a kind of popularity gold-rush pattern. Hard important stuff languishes while easy stuff is has a glut of volunteers.
I'd be interested to see what happens if questions and answers only gave up to a fixed limit of Internet-points to the authors or contributors. Would it lead to a broader knowledge base?
For a help vampire, even SO is not rich enough to make them competent. For a competent developer, SO is not efficient enough for them to learn helplessness.
Remember that SO's main traffic source isn't experts, it's novices searching for answers. I did some digging at one point, and the most popular questions on ServerFault are extremely basic, like 'how to make a symlink' basic (viewed 1 million times https://stackoverflow.com/questions/1951742/how-to-symlink-a...). If you're a developer or student just trying to figure out this one UNIX thing so you can get back to JavaScript or CS:Go or whatever, this is great.
Edit: Or perhaps the library has poor usability. I've been doing python programming for 6 years now and know the standard library like the back of my hand, but if I have to do anything reasonably complex with datetime you can bet I'll probably just look for someone on SO that has had the same problem and crib the answer.
It sounds fine to me, because the programmer can't think about all usecases, so they better be on a user-managed website.
https://en.wikipedia.org/wiki/Desire_path
SO is a great resource, but not providing a mechanism for this is its greatest failing. I understand "subjective" questions are problematic, but banning them outright without qualification is not the correct solution.
I've always thought restricting them to users with 2K reputation or something like that, and having a different set of closing standards if you tag your question "opinion" or "tool-recommendation", could work well. The most highly upvoted (ie, useful) questions are more often than not marked "closed" -- and that has always seemed like an undeniable signal that the current system doesn't capture all potential value.
- https://softwarerecs.stackexchange.com/
But I'm with you – if anything, even more extreme – the SO model handles 'subjective' questions just fine.
Instead of trying to say "these rules apply to only this tag and always when this tag is included", that entire set of topicality was taken to a different site. Consider trying to ask the question "what is the best C complier given XYZ requirements" on SO. Its tagged with "C", "recommendations" and "compiler". Well... that would mean that it shows up in the C feed - and those people don't think its a good question, so they close it. And then the recommendation followers say "but its tagged with recommendation - that means it should be open and its ok if it gets 100 answers." Two different policies on the site. So branch the community - ask the questions about recommendations where a different policy for what makes a good question and answer on a different site.
CodeGolf was that way. https://stackoverflow.com/questions/tagged/code-golf - but two things happened. First, it got lost in the noise of all of the other questions on the site. Secondly, people who wanted to have fun questions with many answers that constantly get bumped to the top of activity were getting their questions closed and down voted because of that fun. So the community branched to a new stack exchange site https://codegolf.stackexchange.com where they have flourished even more than they were when it was a tag within stack overflow.
That Software Recommendations doesn't have the activity and isn't flourishing the same way suggests that first off people aren't interested in moderating or curating the site in a way that attracts more than drive by questions. With a Q&A site it is the Answers that drive if it flourishes or not. The quality of the answers draw other people who want to provide at least as good content. Also, the format for Q&A doesn't work as well for recommendations. Why does it have to be on Stack Overflow or another exchange site? Why not go over to https://www.slant.co where the entire focus of the site is the "what is the best XYZ" - https://www.slant.co/topics/4265/~open-source-c-c-compilers https://www.slant.co/topics/1376/~resources-to-learn-about-c... or https://www.slant.co/improve/topics/7940/~which-open-source-... for example. Different format focused on that question doing it better than Stack Overflow ever could (but that's also because it doesn't try to do a more general Q&A format).
> Why does it have to be on Stack Overflow or another exchange site?
This seems to be the crux of the matter, and here is where I still (at least partially) disagree with you. It doesn't have to obviously, but the SO seems particularly good at answering many of these questions, as attested by the innumerable highly upvoted and closed questions and answers. Which is to say, there are many posters on SO who are exactly the people I want to ask these questions of, and who would be willing and able to answer them.
> That Software Recommendations doesn't have the activity and isn't flourishing the same way suggests that first off people aren't interested in moderating or curating the site in a way that attracts more than drive by questions.
You know that's not a reliable conclusion to draw. There are all sorts of confounds here, the largest being that people don't know about the site. But beyond that, there is just habit and access: If I use SO all the time, and some subjective question pops up in a feed I watch, I may just answer it -- even though I would never visit software recs on its own. This phenomenon is ubiquitous, and the power of entrenched habits can't be overstated.
All that said, it's possible I'm wrong and it wouldn't work. But I've read the meta threads about previous "attempts" that failed, and none of them convinced me that it can't work.
> Why not go over to [a site of which you're not aware] ...
Incidentally, Slant seems to be flourishing about as much as the Software Recommendations SE site.
They would likely be confused whether they should use jQuery, Backbone, or React, as they'll all be intermixed as highly upvoted.
This is thing: I'm not arguing (and I don't think anyone is) that these questions have answers. I'm arguing that access to the opinions of others, along with their reputation and other indicators of alignment with your own values, has immense value. More value than the technical questions that do have right and wrong answers. I can sort through the information myself can come to an informed conclusion.
It used to be great to be part of SO. No, any time I ask a question I wonder if it's going to survive...
Feels? There is no feels there's a clear desire for mods to push their personal agenda on Stack Overflow.
Closing, Merging of questions is slowly killing the site.
Consider that without people who care about the quality (and that means trying to maintain a standard for content by removing material that doesn't meet that standard), you'll get Yahoo Answers.
Go ahead... try it... read some programming and design questions there, consider answering them. https://answers.yahoo.com/question/index?qid=20170802102541A... https://answers.yahoo.com/question/index?qid=20170726200637A... https://answers.yahoo.com/question/index?qid=20170724205902A... https://answers.yahoo.com/question/index?qid=20170723132853A...
Without moderation, you've got a steaming pile of crap that no one wants to look at or touch.
I believe that people become rude when that is the only moderation tool that they have remaining in their toolbox to be able to maintain/protect the community that is there.
Look at those Yahoo Answers posts I linked above. Many of them are rude - because it is the only moderation tool that they have. Stack Overflow of old and the smaller Stack Exchange sites tend to be less rude because the tools to maintain the vision for what the site should be are sufficient.
The people who have the vision that closely aligns with the original Atwoodian idea tend to find the site (for lack of a better phrase) under attack from an endless tide of poorly asked questions. They cast down votes on them, they close vote them, they delete vote the worst of them... and it hasn't made any impact. A look at the front page and 50 new poorly asked questions are there. The tool that remains is to... curtly say the question is no good in comments.
This isn't helped at all by the belief from people who are more familiar with a zuckerbergian model of social sites where an up vote is the same as a +1 like follow user and anything negative done to a post is a judgement of the user who wrote it (rather than the content itself).
Another factor to consider is the ratio of people who are active in moderation and curation of the material (in particular, the amount of time they're willing to commit to those activities) to the amount of new content a day. When there are more people to help out, the content can get more attention and individual help. On CSEducators.SE, that ratio is very high. I'd guess its about an hour per post. On a site like Software Engineering.SE, it may be a minute per post. On Stack Overflow, it is fractions of a second per post.
With such little time available per post for the people who are trying to follow the Atwoodian vision of the site, you get: down vote, close, delete vote, and then when those run out "What have you tried?" and move on. There is not enough time to help a person posting a question unless they are active in trying to make it better. When it is clear that the person hasn't read a two minute tour, searched for questions first, or massaged the preview area of the screen with their eyeballs to realize how abysmally formatted the question is (ok, being a bit hyperbolic there) there's not much reason to invest any time into trying to make it a better post - down vote and move on, there's probably a better post somewhere... hopefully.
If its the 100th such post that one has seen and they're out of down votes, pulling a canned comment out of a user script and move on may be the most the person gets. It might be a bit terse (tangent - low context cultures tend to be a bit more on the terse side, while higher context cultures are expecting (pardon the stereotype) "Please kindly see the help page on editing. Thank you." in their interactions - this friction of expectation might be driving a bit of the negative perspective).
And after that, people consider Stack Overflow to be negative. Its not negative
So yes... there is a middle ground. A smaller site where there is a surplus of time and ability for moderators to do their moderation. Ideally one where new users have spent enough time on the site to understand the model for the site and its vision and goals.
You get the same thing on mailing lists. People talking about their favorite cartoon on Linux Kernel mailing list? I'm sure you would find people being rude in trying to get that topic out of their inbox - its not what was subscribed to (and in extreme cases, kicking the person off the mailing list).
In the context of Stack Overflow, it is becoming a victim of its own success. Too ma...
Moderators are not ordinary users; they can do things like remove comments because they are inflammatory.
And as a community, the community decided that they want to keep Stackoverflow for specific programming problems, not those that are opinion based.
It is unfortunate that your POV differs from what the general consensus of the community.
The whole format was just wrong, very wrong.
I guess contributing to full "improved" documentation with examples is actually a lot more work than just answering someone's question.