Off topic, but to me personal, what has become an even bigger annoyance is floods of newbies (< 10 reputation points) that ask a question and never come back to tick off the correct answer. Some of them even write a comment to thank the poster of a particular answer, but still they won't give them the credit they deserve. I wonder if that's because they're so new that they don't know they're supposed to mark the correct answer, of if they just don't care.
It happened to me once or twice, but I've seen the pattern in other threads, too. Of course SO should be a platform that welcomes beginners, but if that problem persists, I fear that competent people will hesitate investing the time and effort to answer questions for which they may never be rewarded.
Yeah, that's what it boils down to - but I have to say deep down I don't really like that idea.
Often times, the questions asked by people new to SO are legitimate questions, and not necessarily your typical "newbie question" à la How do I run a compiler? So I'm not talking about 101 or RTFM questions.
We all started out as newbies at some point, but also, just because someone hasn't got a lot of reputation points on SO doesn't necessarily mean that they're a newbie programmer.
I believe that SO should be a place where everyone can ask a question whether you're new to programming or an old-timer. If it's a thorough question it deserves a thorough answer. But then that answer deserves due credit, too - whether it's me or someone else answering.
There isn't necessarily any correlation between the newbie status of the questioner and the complexity (or lack thereof) of the question asked. This is particularly true of questions in niche sub-domains of programming such as image processing or scientific computing. In these niche areas, it is relatively common to see newbie Stack Overflow users asking PhD-level questions (often poorly worded in broken English).
The questions are typically not duplicates and the knowledge is valuable precisely because the expertise required to answer the question is rare, yet the reputation system does a poor job of rewarding the few experts who take the time to answer them for a couple of reasons: A) The questioner rarely bothers to give the answerer credit by marking the question as answered. B) The system does not allow a third party to mark the question as answered when the originator fails to do so. C) The people who answer these niche questions often only answer questions in their specific area of expertise -- they don't answer many of the more mundane programming questions that require little knowledge or effort to answer. Thus, despite the valuable expertise they've demonstrated, the reputation system fails to award these individuals with credit relative to the actual value of the information they dispense.
Why does SO place too much importance on the asker's opinion anyway?
If the asker thinks your answer is good, votes up and ticks as answer, you'll get 25 points. But it takes three non-asker users' vote-ups to top that.
The accepted answer tick should be just a flag and give no extra reputation points if the intention is really about providing quality content for everyone. But the current system encourages "just getting that tick".
I think part of this problem is that Stack Overflow will make users wait 2 minutes before voting an answer as correct, so they go the easiest route and leave a comment thanking the correct author instead.
I think users with enough reputation (>10k) should be able to accept answers on behalf of the asker. Maybe after a few days when it's clear that the OP has no intention of accepting or even coming back to the site.
I actually think that is a bad idea. The only time it would work properly is when the high rep user is an expert in that particular area, or when the well known "deemed correct" answer is actually the correct answer.
Not to be an iconoclast, but often the value of something like StackOverflow is that the "group-think" is wrong. You see this on support forums a lot, somebody with big rep comes in and answers and then that effectively ends debate even if the answer was unhelpful. Either the high rep user will get offended when the person tries to re-ask their question and start an "internet he-man contest" cough, or everyone else will just refer back to the big rep users answer, thus chilling their chance of getting the correct answer to 0.
how do you know those are newbies asking questions? A lot of Q&A content is either generated by code or outsourced content generated to capture long-tail SEO gaps.
Jeff in November: "Having one “perfect” form of a question that contains every possible answer to every slight variation of that question is a myth at best and actively harmful at worst"
Joel, this month: "Don't answer questions that have already been answered elsewhere"
That’s why we actually don’t mind having several versions of every question, where there are variations in wording or circumstances. The more chance that someone types a question into Google and finds their exact question already answered, the better a job we’ve done.
This seems to run contrary to most of the rest of his blog post. At this point, I was a bit confused.
I think it's clear that there's a sweet spot that's not at either extreme. There's naturally going to be discussion about where exactly it lies.
Thanks for that link. In case anyone else is interested, here are his "official guidelines":
1. Having one “perfect” form of a question that contains every possible answer to every slight variation of that question is a myth at best and actively harmful at worst.
2. Having dozens and dozens of variations of the same question is clearly bad.
3. What we want is on the order of 4 or 5 similar-but-not-quite-the-same duplicates to cover all possible search terms and common permutations of the question. It is also OK for these duplicates to have their own answers so people who find them don’t have to click yet again to get to a good answer.
I'm happy to keep duplicate questions in the system, even if it means I repeat myself when I answer them.
But question askers need to show that they've done a little research first: if I can type a few words from the OP's question into Google and get a reasonable response, then the question's a candidate for closing.
(One phenomenon I've seen is "I don't believe it unless I see it on Stack Overflow". Somehow a Stack Overflow answer is better than the same information posted elsewhere...)
There isn't necessarily a points-based incentive system that will achieve the desired goal here, at least without breaking something else.
You can consider points and social norms as combining to form a global incentive system that is more robust (but less well defined) than a strictly points-based system.
I agree with klochner. The most efficient legal systems have always been combination of strict rules at large scales, which are replaced by social norms on personal scales and family values on familial scales. It would be great if there were a tweak that fixed this problem without breaking anything, but I'm not surprised or uncomfortable with the fact that common sense needs to play a role.
A tweak could be to prevent answers to closed threads to give any reputation points, even if the answer has been posted before the thread was closed. This way if the question is obviously duplicate but not yet closed, reputation-hunters are not incentivized to post an answer.
Does anyone know whether from an SEO perspective it's better to have fewer pages with more content on each or more pages? As a user I prefer more content on one page so I'm glad Stackoverflow is approaching this problem from a wiki standpoint.
Solving this problem has been a pet project of mine for some time.
There's some solution space between a forum and a wiki. You need a question-based navigation, with common questions pulled out, multiple answers and viewpoints, and all of it rated and commented on.
To put that structure in a forum involves too much overhead. to put that information in the structure of a wiki involves too much editorializing.
I've seen many attempts at coming at this from a strict UI standpoint, as mentioned in the article, but I have never felt that they worked that well. There's also the issue of whether a question is an actual duplicate or is different, or if the difference really matters. All of this is pointed out in the article.
I know I got tired of folks asking about book recommendations on HN and finally wrote an app that keeps track of what hackers recommend to each other. I tried to base the entire site of navigating from common questions to books that help answer those questions. I'm not entirely happy with the solution, but I find that trying to write a solution in code many times helps with the problem more than just talking/writing about it.
Looking forward to hearing more about this as the community continues to engage the problem.
> I've seen many attempts at coming at this from a strict UI standpoint, as mentioned in the article, but I have never felt that they worked that well.
What is the problem with UI approaches, do you think?
I think there is a tension between the user's desire for simplicity and the underlying complexity of the data involved.
So the user thinks: "I want to know how to fix X". But it's never really what they want to know. It's always something different.
This is the same problem software development teams face when asked to fix something. Simply because you can state it in a sentence does not mean you are communicating to me all I need to know to help you.
Very much so. This problem only gets bigger as people get more technically sophisticated. Most people are satisficers (when the first idea pops up that could even remotely fix the problem they stop thinking about more solutions) and they tend to force that on others as well. It's rare for people to be able step back and state their problem in a pure form, instead people like to state their problem in the form of an unimplemented solution (thinking that makes it easier).
Developers who aren't skilled in recognizing or dealing with this sort of thing are at a significant disadvantage. If you naively implement all of the random satisficed solutions people submit to you as "problems" you end up with an incoherent and conflicting mess.
From painful experience I'm happier with the idea of providing a reading list to somebody than simply trying to come up with some kind of immediate quick answer to a loosely-worded question.
A book author sets the table: he provides background, vocabulary help, and a context. Inside of all of that, he can discuss the issue from multiple angles and provide advice. There's depth: you take time to understand where the author is coming from. In return he provides you in-depth advice in the area you are interested in. More than that: good authors teach you how to think about solving problems in a particular area.
Instead of that format, on the net we have hit-and-run McDonalds sagacity. Questioners don't have time for a book. They have some random problem and Google is their friend. As a responder, I'm just some schmuck on the internet, busy doing other things and mostly distracted. I'm taking all of 30 seconds to guess what the person's problem might be, then fitting it all into some random mood and context I brought along with me. No matter how smart I am, it's just not the same. It's useful at times, no doubt, but it's not the same. I don't think the social networking paradigm translates over well to advice-giving. Heck, even with book authors I find that the quality varies quite a bit, and that's folks that take months to address an issue.
Again, I'm not saying these sites aren't valuable: I use them all the time. I just think we may put too much stock into the first returns from a Google or SO search. Trying to add structure to the process isn't going to necessarily make it better. If voting and friends work for sharing jokes and links, and they work for forming a community, it doesn't necessarily follow that they are the bedrock for creating a valuable structure to answer repeat questions. When we discuss this we might be like the guy who has a hammer and can do anything -- as long as all the problems are nails. (In other words we know the answer is going to be a tweet or a quick reply reused from a previous question, we just are trying to figure out how big of a hammer/format/magic we need to make it all work)
All the book recommendations are based off of common questions I see on HN. In addition, a user can go and pick their own books and order them to create their own list to answer a question (using this link http://hn-books.com/AnswerQuestion.htm )
The problem is that as the programmer I had to come up with an initial ranking for answers to the questions. I didn't like that, as I felt my own preferences weren't as good as some other readers. This is why I provided users the ability to select and rank book themselves. This is also why each book's detail page has automated searches where you can review what others have said about the book on various hacker sites. I even thought about a voting system, but I'm waiting to see if anybody much uses the site before I go running off with a bunch of features.
I thought about tags, but tags are simply not descriptive enough. Questions, as the article author mentions, can be interpreted various different ways. Voting turns into a popularity contest. (One of my pet peeves about SO and other sites is that you see answers upvoted which are wrong, misguided, or harmful, probably because the submitter is popular on the site) So there's no solution that I'm particularly fond of when it comes to dealing with common questions. I _do_ think, however, that questions are the place to start. Topics, tags, categories, or widgets don't seem like they work, at least to me.
EDIT: Another big factor is the experience level of the person asking the question. So if you wanted to know "How do I provide a search capability using JSONP?" I'd give you a completely different answer if you were a noob as opposed to somebody who has been around the block a time or two. Even through the concepts involved would be the same. It's a very slippery problem.
It happened to me once or twice, but I've seen the pattern in other threads, too. Of course SO should be a platform that welcomes beginners, but if that problem persists, I fear that competent people will hesitate investing the time and effort to answer questions for which they may never be rewarded.