Hacker News new | ask | show | jobs
by payne92 2998 days ago
SO is definitely a force, but I feel its usefulness has faded from inattention to the user experience and use cases. For example:

#1. There's a huge "homework problem" (narrow, specific questions that aren't broadly useful). Consider flagging homework as homework (and excluding it from searches), trying to divert questioners to other resources before their question is posted ("this looks like homework..."), and more thinking about ways to codify the use case. I'd gladly help with homework if there were tools focused on that (e.g. ability to comment on specific lines of code -- Gooogle Docs for posted source code, etc.)

#2. There are oddly subjective editorial decisions, such as closing my question about an API for generating USPS priority mail labels as "off topic": https://stackoverflow.com/questions/5690713/how-to-programma...

(My view: "is there any API for doing X" is no different than "is there any method/function for doing X", it's a question of existence, not opinion. But even then, opinions are often very useful!)

#3. The best answer is often buried under the "accepted" answer. Over time, highly upvoted answers should drift to the top.

#4. There should be explicit UI support for flagging stale/out-of-date information. SO has a long tail of information now, and much of it is dated. It should be super easy to note and see that.

5 comments

[2] isn't an example of "subjective editorial decisions"; your question was off-topic because 'recommendation' questions are prohibited. For that tho, there's a Stack Exchange sister site:

- [Software Recommendations Stack Exchange](https://softwarerecs.stackexchange.com/)

I don't like that 'decision', i.e. to not allow recommendations, but I understand the reasoning behind it, that recommendation questions are basically polls. [But isn't everything on which people can vote basically a poll too? Obviously yes in my opinion.]

I never understood it, either. By that reasoning, almost any technical question is an "opinion" question asking for a "recommendation".

For example, pretty much any question about C string handling has many possible answers, e.g., [1] admits that comparing two strings is "rather broad" and the various answers there recommend looping over each index and comparing chars with ==, sscanf, strncmp, regexes, and PEGs. Opinions galore!

But if you want to know the difference between AWS EC2 and EB [2], even though there's one pretty clear answer, somehow the admins unanimously find the question to be "primarily opinion-based".

[1]: https://stackoverflow.com/questions/16013031 [2]: https://stackoverflow.com/questions/25956193

My hunch is that due to the desire for longevity of content, there's a large unspoken bias in favor of questions about simple programs, and against questions about remote services (which are more likely to disappear or change, even though that's not likely to happen with major AWS services), and that the question closure explanations like "primarily opinion-based" are just a smokescreen.

Also there seems to be no problem with users who submit opinions instead of answers.

Q: How do I do X extremely specific thing that I need because I have an unusual case that needs this specific thing.

A (top voted): Why would you want to do X? You shouldn't do that. I clearly know more about your problem than you do because I assume everyone on here is a college student and not a developer working with a large mostly static codebase. You should do Y instead. It is much better.

I find this disingenuous. It is a very common scenario that a new user knows of some way to solve some part of their question (or just thinks they do), and assumes the best/easiest/fastest/safest/whatever answer involves using that technique. This is exactly the scenario that Alex Papadimoulis referred to in his blog post[1] that I have to believe was the inspiration for his site The Daily WTF[2]:

> "A client has asked me to build and install a custom shelving system. I'm at the point where I need to nail it, but I'm not sure what to use to pound the nails in. Should I use an old shoe or a glass bottle?" >...[potential answers] >b) There is something fundamentally wrong with the way you are building; you need to use real tools.

The answerer is often telling the person, what you are trying to do sounds like a really bad/inefficient/ineffective/whatever solution. The common way to solve this is Y because of reasons A, B, and C. Are you doing something where those reasons are not a concern?

[1] https://weblogs.asp.net/alex_papadimoulis/408925 [2] http://thedailywtf.com

I have no problem with alternate solutions, but for gods sake, at least answer the original question as well.
This seems to be a common thing across all online support communities, even ones where the software company has outsourced support to their community. I'd love to see a solution to it, as it makes discussions incredibly frustrating to read.
I have a solution. If a user repeatedly does that without also providing a solution to the original question then ban them.
In the world of “stack overflow is unfriendly to new users”, banning a person providing an answer that other people have found helpful seems to be a suggestion that would take SO in the direction of yahoo answers.

Stack Overflow’s approach appears to be all answers are acceptable. This isn’t just for the person who asked the question but everyone else too.

If a person is not providing good answers and people are down voting those poor answers, there is an automatic answer ban in place... but that requires people to down vote poor answers.

Be the change you want to see in the world. Downvote bad answers. Upvote good ones.
I get what you're saying about their 'decision' to prohibit 'recommendation' questions, but my point is that it doesn't make any sense. It's a distinction without a difference, as many, many questions on the site are 'recommendations' or 'how do I':

https://stackoverflow.com/questions/1942298/wrapping-a-c-lib...

https://stackoverflow.com/questions/127803/how-to-parse-an-i...

https://stackoverflow.com/questions/1006289/how-to-find-out-...

..etc..

I don't understand why "how to generate a USPS label" (my question) is different than any of the above examples.

Do you have any examples of such questions asked in the past... let’s say four years?

The problem with recommendation questions is that they are very time consuming to keep curated and useful. You’ll inevitably have 50 answers of which 20 are duplicates and difficult to delete because of up votes on them.

The community moderation for “just close them quickly” is much less than the community moderation necessary to curate them.

Anyways, https://www.slant.co is set up to do recommendations better than stack overflow could conceivably do. Not all questions are best asked on stack overflow.

Examples of questions about the existence of API and library functionality in the past four years? (with recommendation answers) Sure:

https://stackoverflow.com/questions/46718944/facebook-graph-...

https://stackoverflow.com/questions/7120806/skype-python-api

https://stackoverflow.com/questions/34010978/elasticsearch-h...

https://stackoverflow.com/questions/26305704/python-mixed-in...

https://stackoverflow.com/questions/49524937/fast-bipartite-...

... etc ...

I get the idea of avoiding "what's the best programming language?"-type questions, but to the point of my original comment, the application of the policy feels very uneven and therefore "oddly subjective".

The application of the policy depends on people with moderation abilities seeing it. The first link for example has only been seen about 50 times a month for the past 5 months.

The Skype question is a bit older Its actually 6 years older and has only been seen on average 100 times a month. The answer is "yes, look at [broken link], and [obsolete python library at source forge]". It needs some curation. Are you up to doing it? The other answer says that the answer was action in 2011... and compares it to using IE5.

The fourth link (python mixed integer linear programming) is interesting in that its three and a half years old, has only one answer and has been updated in the past 5 days. The author of that answer has done almost 20 revisions keeping it up to date since then. This is the work that needs to be done on posts to keep it useful and relevant.

Compare with the second answer to Elasticsearch HTTP API or python API:

> You may also try elasticsearch_dsl it is a high level wraper of elasticsearch.

Thats it. A lot more work is going to need to be done to that post to make it useful. That said, this isn't a "does this exist" question its a "Which technique is better for my occasion? The elasticsearch RESTful API or the python API for elastic search (elasticsearch-py)?"

The Fast bipartite matching actually matches that criteria.

The point I'm trying to make is that it takes a lot of work to keep the good questions of this sort good and useful. Otherwise, they end up like the Skype question and become worse than useless in that they make it harder to find the answer on other sources.

The entire Stackexchange network, in my opinion, suffers badly from fragmentation into hyper-specific Q&A sites. Why software recommendations do not fall under the Superuser purview is beyond me.
Super user has difficulty with recommendations too. The effort upon the community to curate the content on a large site takes a very dedicated team. Past efforts to have such failed and the curation of the question dropped off along with its quality.

Moving software recommendations to its own site allowed a community to form there that was engaged with that curation.

That said, I believe the SO engine fails spectacularly with recommendations. I find https://slant.co to be a better resource that has its engine dedicated to recommendations (rather than Q&A).

I have never heard of Software Recommendations Stack Exchange, and I've been frustrated for years by how many useful recommendation questions I come across that are closed. They should put a link to Software Recommendations Stack Exchange on questions that are closed for that reason.
Software recommendations has a very small community. If even a small fraction of the questions that get closed as recommendation each day re-asked their question there the 9 questions a day they currently get would get lost in noise. Give [this meta post](https://softwarerecs.meta.stackexchange.com/a/762) a read.
Thank you for showing me where this had been discussed before!
On #3 and #4 I had what I believed to be some reasonable conceptions to formulate parameters for a discussion, here: https://meta.stackexchange.com/questions/71522

Basically I suggest dividing the questions into categories of:

1. Timeless: Questions with a timeless best answer, which is unlikely to be improved or updated in the future;

2. Revolving: Questions with a "best answer" today but in the future there will be a "better answer"; and

3. Wiki: Questions that are constantly being improved and updated.

Among a few other notions.

Insofar as it was a problem of interest when I wrote it in 2010, it's only become a more prominent issue since.

Questions should never be closed on a site that has a voting system. Completely defeats the purpose of both options. There is nothing wrong with asking a similar question to another or posting answers that are similar to others. People learn in different manners, sometimes it might take a person to read the same question (but a little different) a few different times before they can grasp the concept. It's meant to be a forum to help people, not rewrite the manual on a programming language. If there was only one way people should literally just RTM.
'Closing' isn't a big deal really. There isn't anything wrong with asking a similar question, but if it's effectively a duplicate then it's helpful to consolidate the answers in 'one place' (one question).

> It's meant to be a forum to help people, not rewrite the manual on a programming language. If there was only one way people should literally just RTM.

Actually, it's not meant to be a forum. It's meant to be more like a manual, the manual that no one has written (because the SO manual [potentially] covers everything, not just one product or package or library).

> Actually, it's not meant to be a forum. It's meant to be more like a manual

It's meant to be a question and answers site, if they want it to be a reproduction of the manual they should just link to the actual manuals. I feel it completely defeats the purpose of having a community to help others if it's not meant to be forum-esque.

if it's effectively a duplicate then it's helpful to consolidate the answers in 'one place'

To do this, they've already got the tech to identify similar questions. They should just leave all the variations of the question open, and have a prominent "Similar Questions" list displayed for all of them. That would encourage question titles that express what makes them distinct from similar questions, and give people the option of finding the most appropriate variant and getting an answer for that specific variant.

The existing system, a question that is closed as a duplicate automatically redirects users who aren't logged in (most users are anonymous google users) to the question that is the duplicate target. All of the questions that target that duplicate or mention it in another post are listed in the 'linked questions' on the sidebar.

If it truly is not a duplicate question, then it should not be closed as a duplicate. However, many people asking new questions either don't search or are unaware that their question actually is that other question.

Leaving a question open doesn't help any of the google users and instead makes it harder to find the canonical answer to the question as little tidbits of information are scattered around.

If the canonical duplicate target is insufficient in answering the question, add an answer to it that does a better job than the other answers.

This is covered by multiple answers to the same question and being able to ask for clarification.

Duplicates actually make it harder to find answers, now I have to go to 10 pages to find the different answers instead of the different answers to the same question all being on one page.

If the questions are significantly different enough they'll end up having their own page. SO isn't meant to be used like other forums, and if you need more help to figure out what you don't know you can jump in the Stack Overflow chat or go to another site like Quora or other forums.

I disagree. A user who does not understand an answer to a question they have can easily ask for clarification without reposting the same question again (even if reworded). If they see a question they do not understand, they can ask for clarification in order to determine if the question they found is similar to the one they have. These are basic skills that prove useful in a variety of situations where you may want to seek assistance.

By encouraging post duplication, you will quickly burn out folks who want to be helpful. I certainly would not want to answer 1000 questions that are essentially 1 question reworded 1000 times, would you?

> A user who does not understand an answer to a question they have can easily ask for clarification without reposting the same question again

Often times people just starting to learn or are new to a subject matter dont know what they dont know. So they might simply not have the capacity to realize they are asking a similar question or that an answer to another question will suit their needs. I feel its more beneficial to allow these people to ask their questions with the limited expanse of knowledge they have and use it to learn. Hopefully as a result will one day return the favor. The system now shuns these people and they never return or help and end up disliking the community.

>By encouraging post duplication, you will quickly burn out folks who want to be helpful

This is what the voting system is for. Any system that places a ranking level on votes should filter this out easily. There is nothing that says you have to answer a question just because you know the answer. Just vote and move on to keep yourself from burning out.

I also noticed that simple questions somehow get higher popularity. If you ask something very specific to your problem, chances are this question won't be answered and also will be downvoted. So people rather answer "how to find an object in JS array" rather than "I have this weird error in X library, how to fix it?". But in my opinion, basic stuff is not what you face with in everyday job. It's all these unexpected errors, bugs and lack of documentation, what makes you Google it. In this sense, GitHub Issues does a better job than SO.
I have never seen GitHub Issues in a search result. It seems like it is for bug reporting in personal projects. Why would it help with other people's errors?
Did you ever find a solution for USPS labels?

I used to use Endicia.