After reading this, it reminded me a bit of this (Group 4 here) as well. Reflecting on the second question in the post on sympathetic up-votes brought about this question. Perhaps my Google skills are failing me (again) and it is obviously posted somewhere... but I can't seem to find it. What is Stack Overflow's goal / purpose / mission statement?

My Personal Thoughts

To me, this site is about helping people. The talk about people going crazy for imaginary points is anything but crazy. To me, the points are a reflection of how much I've helped someone. If I have an answer with 30 upvotes, I'm not excited about the points. I'm excited about the fact that 30 people consider my post helpful. That's what makes me feel good and that is why I bother answering a question. Because I think it is helping someone. I feel the same way about asking questions. I like the fact that my question helped someone solve their problem.

From https://stackoverflow.com/about


This reads to me like we are building an archive of questions and answers. While this is obvious, I don't necessarily see that as the primary purpose. I see it as a means to helping people. That is, we are making this list so that other users can see those answers.

If the goal is to build that library of detailed answers to every question about programming or just to help people (or both), then why is this post such a "low-quality" question? This question's list of "Related" questions show no exact duplicates. For a new programmer, this is a very hard problem to solve and a very hard problem to ask. Think about when you were just starting and had a programming problem. You knew what you needed, but you didn't know the terminology to best ask the question. This user may have been undecided on whether they want to learn how to program. And the community response to his question may have very well turned them off completely.

I see a lot of people complaining about the noise-to-signal ratio. That is, people watch the new questions lists for good questions to answer. This seems like a pointless argument to me. I like intriguing questions. But that doesn't mean I expect every question to be intriguing. In fact, the more questions I've answered, the less likely those questions will come about.

Group 1, why does it matter if someone posts a question and doesn't care for the site? The first time most people visit a website, they could care less. And why would they? They have yet to receive any real benefit from the site.

It seems counterintuitive to me to have such an inviting web site where people can ask questions without even registering and when they do, they instantly get ridiculed by people simply because the question wasn't the great question they wanted. Then I hear people complaining about the next generation of programmers not being worthy enough. They don't care, and they can't be bothered to look for the information. When I was nine years old (I'm 26 now) and started programming, the Internet was a little bit bare with regards to programming. But there were people out there who encouraged me to continue. I don't see that any more.

  • 93
    This is tagged [rant] yet the tone in which it's phrased is the most constructive I've seen in a while. – BoltClock May 14 '14 at 2:21
  • 14
    I see a lot of people complaining about the noise to signal ratio. IE that people watch the new questions lists for good questions to answer. This seems like a pointless argument to me. I like intriguing questions. But that doesn't mean I expect every question to be intriguing. In fact, the more questions I've answered, the less likely those questions will come about. You might change your perspective once you hit 10-20k reputation. Or maybe not. Some high-rep users (who I shall not name) have been very active recently answering any and all questions, regardless of quality. – user456814 May 14 '14 at 2:53
  • 13
    @Cupcake “Some high-rep users (who I shall not name) have been very active recently answering any and all questions, regardless of quality.” I have noticed that as well. I think it speaks towards human nature. Enough is never enough. – JakeGould May 14 '14 at 3:03
  • 10
    @JakeGould that's one way you could look at it, but it's not the way I was looking at it. I was looking at it as some users just don't believe in any of Stack Overflow's ideas about what makes a question worth answering, they just want to help anybody and everybody. It's not really about the rep, it's about helping people. So they answer everyone's questions, regardless of the quality. Maybe those users have the right approach. I don't know. Personally, I don't care anymore. – user456814 May 14 '14 at 3:29
  • 35
    What's relevant to ask here, is if whether Stack Exchange is a non-profit organization or not? The goals of a non-profit organization are quite different from one aiming to make profit. At any rate, the goals of the site owners may not be the same as the goals of the users. – Lundin May 15 '14 at 8:56
  • 12
    "I don't necessarily see that as the primary purpose. I see it as a means to helping people." - there are many ways to help people, and the purpose of this site is to achieve the end of 'people helped' in this particular way. Offering free pizza, though helpful, would not be an appropriate thing to do on SO. – AakashM May 15 '14 at 11:06
  • 11
    @Trilarion not against beginners, but against people who cannot formulate a decent question, or people who just dump a task, or who completely misunderstand how SO works. Granted, most of these people are new to SO or programming (although there are >2k users who still can't ask questions worth reading); but there are also beginners who have no problem asking good questions. In summary, as long as you're able to ask a decently-formulated on-topic question, which shows you have invested effort yourself and are actually interested in understanding the subject, nobody cares how new you are. – l4mpi May 15 '14 at 11:54
  • 10
    @Trilarion there are all kinds of things wrong with it. First, the actual question is "How to get a filename without extension from a file path". If OP doesn't even arrive at the words "filename" and "extension", where would you have to start to explain a solution to him? Second, it shows zero effort and zero interest in even understanding the problem (it's a file path, not any random string). Third, it's by no means decently formulated; the first revision didn't even contain a question mark. Also, raising the bar again is a very good thing as it was continuously lowered in the last years. – l4mpi May 15 '14 at 12:33
  • 11
    @Tom as I stated many times already, these kinds of people are simply not the target group. If you can't formulate a decent question, you have no business on a site for decently formulated questions. Repeating myself, it does not matter how "new" or old or whatever a person is. Their gender or nationality doesn't matter either. What matters is that they demonstrate an ability to understand their problem to a degree sufficient for understanding a normal answer (so you don't have to explain every little detail, which would be too broad) and show a willingness to actually learn something. – l4mpi May 16 '14 at 13:03
  • 7
    @Tom: It's not your "personal reflection"; you asserted that there is a direct correlation between someone upvoting a post and their having found it personally useful. Such a correlation does not exist. At the very least one has never been proven or even demonstrated; at best, I can tell you empirically that it's not the case. I have cast 5,397 upvotes during my time on SO, and all but maybe 20 or 30 of those have been to show appreciation for a high-quality post, or to agree that the post is correct... not because I was working on that same problem and had it solved for me by the post. – Lightness Races in Orbit May 16 '14 at 13:06
  • 9
    I can't find the answer atm, but someone in a related discussion (or was it here?) said the issue with these people is they don't have a problem, but they need help - the distinction being that a problem would be a specific, isolated issue in a topic they otherwise understand, not a general state of "I have no idea what I'm doing". And StackOverflow is for specific, clear, and concisely answerable problems (which other people than the OP also face), not for personalized help. – l4mpi May 16 '14 at 13:07
  • 35
    Maybe I'm being overly cynical, but the main goal of Stack Overflow is ultimately to make money. I'm sure that when Jeff and Joel came up with SO they thought "this can help a lot of people", but the next thought they had was probably "how can we monitize this", as that's ultimately the goal of any company, to make money, unless it's specifically a non-profit organization, which SO isn't. Claiming "Better programming" to be the main goal is like saying "Don't be evil", it sounds nice, but at the end of the day it doesn't pay for servers and salaries, content does, and the more the better. – adeneo May 16 '14 at 15:34
  • 7
    @adeneo Yes, but the goal of making money is kind of a given for a business - and it tells no one anything useful about SO. The question is really 'What is StackOverflow trying to provide in order to make money?' because that's a question that actually has an interesting and relevant answer. – Gareth Latty May 18 '14 at 13:02
  • 13
    @LightnessRacesinOrbit You are wrong for saying Tom is wrong; how could Tom be wrong about Tom's opinion? If Tom declares what the site means to him, you are certainly not in a position to contradict him. Since when are you Tom? – TylerH May 19 '14 at 15:14
  • 15
    @TylerH: Well, actually, my name is Tom... – Lightness Races in Orbit May 19 '14 at 15:32

12 Answers 12


It is probably getting difficult to imagine what a programmer's life was like BSO (Before Stack Overflow, prior to 2008). Back when Joel Spolsky and Jeff Atwood were still programming for a living. And ran into the same problem that everybody was experiencing back then, finding help to get you unstuck to solve a programming problem was hard work back then.

You would be lucky if you found a FAQ or knowledge base article on a vendor's site. Low odds for that after ~2000, vendors started to rely on their forums as their primary way to provide support.

If you would not be so lucky, and very common, you'd hit the paywall of a sleazy web site like expertsexchange.com. A web site that did more than any other to formulate the founders' ideas of what a useful site should look like. They took answers from volunteers but charged a subscription fee for anybody to look at those answers.

But most commonly, you'd have to dig through hits for Usenet posts and programmer forums that touched on the same subject. But maddeningly poorly curated, you'd have to sift through hundreds of pages worth of chit-chat and people calling each other names. Often not providing an answer at all. Or resembling an answer but not in any way an accurate one, just blind guesses that you could only weigh by having to read on for the "it doesn't work!" follow-up posts.

So Spolsky and Atwood set out to do something about it. Core ideas where a site that's strictly Q+A, no chit-chat or discussion, just questions and answers strictly separated. And a means to get the true answer to the top efficiently by voting. And strongly avoiding a glut of duplicate questions to limit the amount of Google hits anybody has to scan. And, after a fat year, focusing only on true programming problems.

Very successful of course, SO was a strong magnet for subject experts that were pretty happy about the focus, providing excellent answers. Most programmers that asked a question could get a great answer in less than 10 minutes. It quickly overtook any other web site in Google ranking, nobody else comes close.

Those were the goals back in 2008. Today, I'm not so sure anymore what they are trying to do. This all changed when Jeff Atwood left the company and the "Summer of Love" campaign in the summer of 2012 outlawed some common practices. A not-so-pleasant side-effect of programmers liking the SO site model was their response to questions that they did not think belonged on the site. SO users were afraid to ask questions, worried that not getting their ducks in a row before asking would get them responses that were intended to chase them away. They frequently complained about that on the meta site or in direct emails to the site owners. They still complain about that, even though these kind of responses have been completely outlawed.

The changes in the summer of 2013 were very impactful as well. They removed ways to get poor questions closed. Particularly the kind that were commonly used to curate the site, like "Not a real question", "Not constructive" and "Minimal understanding required". The site owners considered these close reasons to be abused and replaced them with friendlier sounding reasons, the kind that cannot be used anymore as a blanket way to remove bad content.

While possibly intended to help the site grow and get more questions asked, this has not been very productive. The focus on pleasing question askers is a pretty strange one, to me, there are less than a quarter million visits a month by questioners but overall site traffic is 40 million. What exactly those other 99.4% of all visits look like is hard to guess, surely the Google hit visitors are the vast majority. But of course, a fat million of those visits must be made by programmers that read questions and answers. A shrinking number btw, the average number of answers to a question in the early years was around 3, it is below 1.5 today and dropping quickly. SO no longer meets the standards that SE sets for a new site to be launched.

This unhampered access to SO greatly changed the nature of the questions asked. It is no longer necessary to Google an answer yourself, you can just ask somebody else to do it for you. Debugging a program is something you can crowd-source, just copy-paste the code and give a vague hint that it doesn't work. While certainly never intended as a tutorial site aimed at teaching new programmers how to code, there isn't any real way to stop such questions getting asked or dispatch them. Everybody is expected to answer them anyway, if not directly then by doing the hard work of finding a duplicate question. Effort that greatly outstrips the ease with which the question was asked and with very little gain to the answerer or casual reader. These kind of questions of course do not make for great content.

Short from chasing the subject experts away, they ultimately have a notable impact on the site's success as well. SO has experienced geometric growth since its inception, doubling in size every 18 months or so. That stopped in the fall of last year, it has been roughly stable since then with a hint of contraction.

This has been brought up in meta many times in the past few months. Hopefully the site owners are paying attention, there's a hint that they are aware. Reformulating the goals and getting back some of the magic of the early years would be welcome. Not that easy to reach, nobody likes to say "nay" and the "yay" sayers greatly outnumber them. Of course everybody likes having an expert doing the googling or debugging for them. If it comes to a popularity vote in a meta post then lowering the threshold did and always will be favored. Which does put the future of the site in the hands of the users. Be careful what you wish for, some day the site may not be able to give you the untrivial answer you really need anymore.

  • 80
    friendlier sounding reasons, the kind that cannot be used anymore as a blanket way to remove bad content. that's it! It's the root of all evil....*It is no longer necessary to Google an answer yourself, you can just ask somebody else to do it for you* so true, funny thing is sometimes I see questions which took longer to write than it would take to actually find an answer on google. This is a great summary of downsides.. please don't tell me this is going to be used in your about me anytime soon – user2140173 May 15 '14 at 11:55
  • 3
    Back in my day, we use to have to Google for weeks just to find an answer. "We used to walk 4 miles, in the snow, uphill both ways to school." But I agree with the Google issue. For a new programmer, it is much easier to ask a question than try to figure it out themselves. To add to it, when they do Google it, typically the first result is Stack Overflow. I do think a clear direction / goal would at least give a centralized push towards something. – teynon May 16 '14 at 2:15
  • 41
    @Tom That's just it. It isn't easier to ask an SO question than to google for an answer. If these people were actually lazy then they'd put the title of the question into google and get their answer without even needing to write the question, wait for the response, respond to comments, and then vet the answers given. It takes a ton more work to ask an SO question. It's not easier, so I don't see why so many people don't search for a solution first. – Servy May 16 '14 at 15:05
  • 7
    This hits the nail on the head. I don't think the quotes in @Cupcake's post reflect the active goals of the site anymore. – Chris Laplante May 16 '14 at 15:30
  • 57
    SO no longer meets the standards that SE sets for a new site to be launched. ouch – Antony May 19 '14 at 2:04
  • 4
    @Servy We are both largely generalizing, but I don't mean that every simple question is easier. But as far as debugging their own code, a new coder probably finds it easier to ask someone else to do it rather than figuring out how to debug on their own. Anyways, so it appears that the top answer to "What is Stack Overflow's Goal?" is "We don't really know." That the content on the site has matured and because of the size of that content, organizing and managing new content has become intensive. – teynon May 19 '14 at 3:15
  • 2
    Anti experts-exchange. Got it. – Henrik Erlandsson May 19 '14 at 23:22
  • 3
    @Servy I'm guessing you haven't seen the slew of "this is my code, this is what it should do, this is what it is doing, what now?" questions that can't be Googled? – Izkata May 20 '14 at 19:09
  • 2
    "SO no longer meets the standards that SE sets for a new site to be launched" - for some, it does not either meet the standards for a site to be worth participating in... – user3565300 May 21 '14 at 8:59
  • 1
    @Gracchus, I wouldn't be too sure. Did you see the graph on Search Traffic lower on the same page? At exactly the same time, the proportion of visitors arriving via search engine more than doubled. SEO magic, and hence the call to roll out the welcome mat? – alexis May 21 '14 at 21:22
  • 4
    Alexa statistics are mostly nonsense, use quantcast.com instead. – Hans Passant May 21 '14 at 21:39
  • 3
    Hans, I'm not sure I believe that it's the changed close reasons. I think it's more likely just plain success. Sturgeon's law coupled with ever-increasing numbers of visitors, overwhelming the capacity to close, whatever the close reasons. – bmargulies May 22 '14 at 1:41
  • 5
    Just regarding the exponential growth: it cannot go on forever anyway and constant rate of questions should be expected in the long term. So one shouldn't use this as an argument. Maybe without the "summer of love" thingy the saturation would have been reached even earlier (which doesn't have to be bad). – Trilarion May 22 '14 at 8:12
  • 5
    @Servy "It isn't easier to ask an SO question than to google for an answer." # You, as a decent person (I think), would find it easier to Google and find enough information to solve the problem yourself. But these people want the problem solved for them, within the exact context of their own situation. Many are rewarded with a code snippet that works for them, and just them. – Duncan Jones May 22 '14 at 8:39
  • 12
    What's with all the soul-searching? SO is fantastic! I've been using the site for years but I've asked very few questions, because usually I find that someone else has already asked my question and it's gotten an excellent answer. – Ben Kovitz May 23 '14 at 1:07

You have it backwards, I think.



Actually, that's already happened over the last year or two, because this message is not getting out. What we need is a firm declaration that Stack Overflow is not:

  • a helpdesk
  • a debugging service
  • a code writing service

AakashM said it very well in the comments:


When we say "questions are required to be written such that they help other people in the future", that's a polite way of saying that helping people is a secondary goal, and the primary goal is to build a repository of re-usable information. So, construct a neat testcase, abstract away your product-specific strings and forty irrelevant member variables, and don't post a 250-line SQL query when you can demonstrate the issue with a textbook example of 20 characters.

Tell all your friends, because it is not obvious at all from the Help Centre that this is so, unfortunately, so the abusers keep on a'comin'.

  • 34
    +1 yes, and we're all tired of being coding/debugging slaves, or being asked to yet again regurgitate easily-available info just so that some deadbeat student can get an answer past their prof's anti-plagiarism scripts. Too many posters are intent on wasting the time of SO contributors so that they can lie in with their friends and/or go to the bar. Sod 'em. I, for one, have had enough. – Martin James May 15 '14 at 15:38
  • 13
    Hmm.. can we revisit the free pizza plan later? I'm hungry. – Martin James May 15 '14 at 15:45
  • If i read these explanations 3 years ago possibly i didn't ask any of my questions. However i am happy to learn these "manifest"s because if i know where the red line of asking questions starts i will train myself before asking. But i still need a course labeled "how to ask in SO", "think twice before asking what you stucked" and "how to googling deeper"...sorry for my poor English. – caglaror May 15 '14 at 18:09
  • @caglaror: Well, yes, your question score average is not particularly high. Still, I've seen worse. – Lightness Races in Orbit May 15 '14 at 18:14
  • Whever you open a media to public this happens. SO mean too much to me. Furter wikipedia and google. Iearned so much while asking beyond getting answers to my questions. Scoring is justice of being meaningfull of asking and answering. So it works well as a filtering of bad or unnecessary ingredients. Do you offer us (newbies) to train ourselves till we shall use SO properly. – caglaror May 15 '14 at 18:25
  • 9
    @caglaror: There are a bazillion books and libraries and universities and schools out there, and SO is not meant to replace them! – Lightness Races in Orbit May 15 '14 at 18:32
  • 2
    I agree with your bullet points. It is annoying to me when users ask to have their code debugged (some times it is a legitimate question that involves minor debugging, but the user has to have at least isolated the code causing the issue). I've made comments in some questions about this issue, but it looks like those questions have since been closed (thus I cannot see them). I also agree with the teach a man to fish thing. I don't think that means every question we feel is easy is a demon spawn of Satan. Answering the question can teach the user where to find that information at the same time. – teynon May 16 '14 at 2:03
  • 1
    there used to be a clear declaration but... Why “What Stack Overflow is Not” was deleted. Why oh why – gnat May 16 '14 at 15:24
  • 3
    For some reason, I think that offering free pizza is actially very appropriate on SO. Anyone else wants to vote it up as a feature suggestion? – DVK May 18 '14 at 11:42
  • 12
    @LightnessRacesinOrbit "There are a bazillion books and libraries and universities and schools out there, and SO is not meant to replace them" As a book author, I can tell you that it has replaced them and that's the problem. Programming is about thinking (and related skills). SO beginners think it's about copy-and-paste - and, alas, they are right. – matt May 19 '14 at 15:33
  • @matt: Absolutely; I used the phrase "not meant to" deliberately ;) – Lightness Races in Orbit May 19 '14 at 15:49
  • 2
    I agree. We're here to help the lurkers, not the OP. – Flimm May 20 '14 at 14:13
  • " primary purpose is to build a repository of questions and answers" I thought it was to help developers per Joel Spolksy who said "You know when you get to sit on your laurels? When every developer problem has been solved." stackoverflow.blog/2015/09/15/… I guess S.O. has become more interested in S.E.O. and $$$ than helping developers each and every specific problem. – user2066936 Aug 27 '17 at 8:22
  • I'm confused why debugging is considered off topic. If the program has no bugs, then wouldn't it always be a fit for codereview.se ? I guess lots of beginners post there code here without trying too hard, but in general debugging can be very non-trivial. – northerner Jan 21 at 6:35
  • 1
    @northerner It isn't off-topic. A debugging question that has seen sufficient prior research, been divided-and-not-quite-conquered, inherently becomes an interesting question about a programming language, and therefore useful to future visitors. The two things are not mutually exclusive, but you have to do the work first to get there. As a bonus, doing that work is an extremely valuable learning experience (teach a man/woman/whatever to fish, etc) so everybody wins. What we don't want is someone dumping a problem they haven't debugged themselves yet, because literally nobody wins in the end. – Lightness Races in Orbit Jan 21 at 10:33

The Goal of Stack Overflow, According to All the Related Things!

  • Introducing Stackoverflow.com, Jeff Atwood, 2008-04-16


  • Stack Overflow Launches, Joel Spolsky, 2008-09-15

  • Twitter / codinghorror, Jeff Atwood, 2010-04-09

    Google has "don't be evil"; we think Stack Overflow llc's is "leave the Internet better than we found it"...

  • Stack Overflow Gives Back 2010, Jeff Atwood, 2010-12-24

    We believe our mission as a company is to make the internet better...

  • How to Write Without Writing, Jeff Atwood, 2011-02-04

    Consider this letter I received:



  • Rubber Duck Problem Solving, Jeff Atwood, 2012-03-13



  • 11
    Jeff Atwood denotes SO as an expert Q&A community in the quotes above. So I wonder how open it really is for novice programmers? That's the only open question left in my eyes. What is the necessary basic skill that you should have otherwise people say: OMG what a stupid question? Where is the red line at the bottom of the programming level? At lot of questions here circle around it but not exactly hit it, is my impression. – Trilarion May 15 '14 at 9:46
  • 2
    hehe the bottom line is 5 close votes or -3 downvotes I guess – user2140173 May 15 '14 at 11:20
  • 23
    @Trilarion: There is a fundamental difference between "basic question" and "awful question", and between "language newcomer" and "person who hasn't learnt how to communicate or present problems effectively". Sadly the vast majority new users fall into the latter camp in both regards; if it were just the former, there wouldn't be such a problem, though still frustrating for experts who really don't want to just rehash the same old beginner stuff over and over again that's found in every textbook going. – Lightness Races in Orbit May 16 '14 at 14:44
  • 6
    @Trilarion You are expected (in my humble opinion) to read the basic tutorials of the languge in which you are programming and/or do decent google searches and show what you have tried. – skiwi May 17 '14 at 17:20
  • @LightnessRacesinOrbit Exactly, my impression is that experts and beginners do not get along well in one common Q&A area resulting in frustration at both sides without you or me really being able to say what should be made different except that one of them or both has to give in. And I'm only talking about the "there is hope" part of newcomers. We don't want to drive all newcomers away, do we. – Trilarion May 20 '14 at 20:11
  • 6
    @skiwi I like your comment a lot because it makes the whole debate concrete instead of abstract guidelines. We should then add another close reason: "Trivial question. Can be solved by studying a introductory text into the programming area." And everything that is beyond any basic tutorial is then handled by SO. – Trilarion May 20 '14 at 20:14
  • 1
    @Trilarion: I'd be okay with that; 3,133,858 total users at present. – Lightness Races in Orbit May 20 '14 at 20:22
  • 1
  • 1
    Novice programmers need tutorials, and there are plenty of those elsewhere. Writing a tutorial is more a measure of your skill as a teacher than your skill as a programmer. Once a programmer has learned everything that tutorials have to teach, they (should) start experimenting and asking narrow questions about specific problems. That's where SO comes in. – Blazemonger May 20 '14 at 21:54
  • 1
    Back before meta split, there was a question about what "programmers and enthusiasts" means, based on one of my comments. I posted some thoughts as an answer, too. The idea was that SO is fine for new programmers, as long as they're enthusiastic about programming. A student just looking to get an answer to a homework problem isn't enthusiastic. An enthusiast or professional may need a tutorial (e.g., for a new tool or technology), but knows how to find it themselves, and will have done so. – Joshua Taylor May 21 '14 at 20:55

I think there may be an issue with the notion of "helping someone". The famous proverb says:


Therefore, to me, solving a trivial problem for someone doesn't really count as helping them.

And I'm guessing that people complain about low-effort questions because answering them doesn't fit this definition of "helping". This also makes easy for lazy, poorly motivated people to become bad programmers (this issue was well described here), and also fuels the help vampires phenomenon.

It is hard to help people help themselves - even if you explain politely in the comments that the question can easily be answered via a simple google query, by the time you finish typing, there are tons of answers posted simultaneously. Either from people that genuinely want to help (but don't know about/don't adhere to the proverb quoted above) or from so called rep-whores.

  • 6
    It isn't about "did we really help the asker". It is "did we help the next person who sees the question?". Answering a poor question may help the asker, but it won't help anyone else. Answering a good question will help the asker, and help other people who also learn from it. – Yakk - Adam Nevraumont May 15 '14 at 15:58
  • 2
    And help to achieve the goal of a repository of Q&As. – Lightness Races in Orbit May 15 '14 at 16:04
  • 3
    Just a note, I don't agree with answering every question that is considered low quality. But I do take into consideration the possibility that the asker could be 1) A child learning to code. 2) A foreign speaking user trying to formulate and translate a question at the same time. When I go through the question list, I will and have flagged various questions for being low quality questions, but usually if I do so, I try to make sure the asker knows what is wrong with the question without insulting them. – teynon May 16 '14 at 1:51
  • 3
    @Tom That's fine. Taking the time to help the user fix their question is great, if you want to take the time to do it. That doesn't mean up voting the post though, or not downvoting it. It doesn't mean not closing the question. It doesn't mean answering the question. Questions of low quality need to be closed ASAP, not answered, and then optionally commented on to help the author fix the post. If/when they can fix the question, then it can be reopened, then answered. This workflow ensures quality contributions all around, and each step is important. – Servy May 16 '14 at 15:08
  • 3
    @Yakk: I think you missed the point. Answering a poor question does not help the asker, because it teaches them to continue asking bad questions and not learning their tools. – Ben Voigt May 19 '14 at 22:52
  • 1
    build a man a fire and he is warm for a short time, set a man on fire and he is warm for the rest of his life – user177800 Feb 19 '16 at 7:28

The real question is what you think the point of programming is.

To me, it's about mental exercise, of a style that I'm particularly fond of. I've studied and loved mathematics, physics, British crosswords, music, Latin and Greek. I've taught some of them too. I'm good at programming because it exercises the same mental muscles and involves the same kind of step-by-step problem-solving. And I'm good at teaching programming because I can anticipate and explain the nature of those problems.

Stack Overflow mostly isn't about any of that. On SO, programming is about copy-and-paste. Nothing wrong with that — I've copied and pasted in my time — but copy-and-paste as a substitute for thinking and understanding is a shame. And questioners clamoring for pure copy-and-paste have overwhelmed SO, in terms of sheer numbers.

I do still occasionally encounter questioners who have thought hard, who have tried things, and who want to understand what's really going on. They are the ones whose questions I enjoy answering. Sometimes I even go into Chat with them and have them send me their project so that I can converse with them in detail. They are amazed by my willingness to do this - not quite grasping, perhaps, that for me this is fun.

My complaint with the current state of SO is not its goal. It's that the sheer proportional number of questioners-of-the-first-type has made questioners-of-the-second-type much, much harder to find than formerly.

  • 1
    I'm not in favour of copy-paste coding, but I will point out that to some people (e.g. my employer) the purpose of programming is to produce code, not an abstract mental exercise for its own sake. Those people probably want to be helped in different ways from someone who wants help with a crossword ;-) They do want the answer, which is a step beyond wanting help with an exercise even if you don't go so far as to want the answer in the form of copy-pasteable code. As such I'm not sure that "an exercise" is a good model for the purpose of programming for SOers in general. – Steve Jessop May 20 '14 at 18:29
  • 1
    @SteveJessop Yes and no. Your employer may not realize it, but "growing your code" cleanly and intelligently and in a way that permits future change of direction, maintainability, etc., is actually much more important than number of lines of code or number of features implemented or whatever. That requires understanding what you're doing. Plus bugs (misbehaviors) are likely to be fewer. If your employer doesn't understand that, run! – matt May 20 '14 at 18:32
  • 2
    Sure, copy-paste code leads to an unmaintainable mess because the author never understood it. My employer knows that, but nevertheless doesn't want code written for its own sake because writing code is enjoyable and challenging. But without going so far as copy-paste-able code, SO still IMO generally calls for complete answers to the question posed, not just the kind of nudge you might give someone who's stuck on a puzzle that they "really" want to solve all by themselves but can't. In fact that used to be the difference between a good answer to a "normal" vs "homework" question. – Steve Jessop May 20 '14 at 18:34
  • I enjoy reading and answering the same type of question that you're talking about, @matt, but I think what Steve is trying to say is that, when a person who already has understanding is Googling for answers, sometimes the snippet is all that's required. For that skilled someone, of course, it's not as something to copy-paste; it's just the clearest expression of the solution to the problem at hand. That person doesn't really fall into the "send teh codez" bin, anyways. – Josh Caswell May 21 '14 at 20:44
  • 2
    @JoshCaswell "when a person who already has understanding is Googling for answers, sometimes the snippet is all that's required" Sure, and I pick up snippets all the time. But that is not the same as "make me a snippet, now, so I don't have to search or think" - which is what is cluttering up SO over and over these days. – matt May 21 '14 at 20:57
  • Definitely agreed, @matt; and what's usually worse is the feeders who provide crappy snippets proving that nobody in the vicinity is using his or her brain! – Josh Caswell May 21 '14 at 21:10
  • I give the nudge in the right direction typically as a comment and refuse to answer questions that show not enough own research effort. But my reaction to this answer was: well then it's mostly a filtering, match-making, ignoring problem. As soon as everyone is able to find the questions and only them he/she loves to answer - all will be fine. – Trilarion May 22 '14 at 8:21
  • copy-and-paste as a substitute for thinking and understanding is a shame my thoughts exactly. The businessmen (employers) are abusing the profession by demanding code grow and the employees, which can be regarded as programmers because they work for a person who tasked them to just make programs - make sense or not, are abusing the profession by posting "jst gimme teh codez" questions on SO and actually getting help. I happened to encounter such programmer on SO that kept posting subsequent question using previous question's answer as body of the question. That's just ridiculous! – Ejaz May 23 '14 at 11:38

As a preface, I haven't been a regular Stack Overflow user for quite some time. I can't really claim to be an outsider either since I got hired by Stack Exchange. Maybe those two cancel out?

The goal of Stack Overflow is:

Give programmers a place to get answers to their questions.

Now every big-picture goal like that has to have dozens of subgoals. For instance, comments are designed to prevent the problem of tangential conversations sidetracking people from writing or finding answers. Closing duplicate questions avoids needlessly duplicating answers. Voting sorts answers on the page according to usefulness.

I bring it up because it's common to confuse subgoals with the main goal. Every time I read emails sent via the "contact us" link, I read about how one of our subgoals prevents the user from getting their questions answered. The authors assume Stack Overflow is failing because they are no longer able to ask questions. But the goal isn't for every programmer to be able to ask any question they like. That's shortsighted.

Purely anecdotally, every programmer I've met (friends, family, co-workers, etc.) knows about Stack Overflow, love the answers they get, and yet about half have never even created an account. For them, Stack Overflow succeeds in providing answers simply by being the first, most-reliable, and highest-quality result returned by Google. I've personally had questions that I haven't bothered to submit because I find the answer already exists on SO.

Objectively, the data suggests that people are getting their questions answered:

Answer votes by week

The longterm trend is that each year more people have indicated they were helped by the sum total of answers on the site than previous years. (The peak around the first week of March seems to be seasonal just like the winter trough.) Nothing lasts forever, of course. But for the moment, there's no better place to ask programming questions.

Which brings me to an important subgoal: stabilize and grow the source of answers. Despite hundreds of thousands of answered questions we already have, there are surely millions more that have yet to be asked. And that takes people; lots of people. Just under half of the questions that have been answered unequivocally were answered by people who only managed the feat once. At the far end of the spectrum, a handful of users contribute thousands of accepted answers. A healthy ecosystem requires both.

A few years ago, a co-worker approached me to ask how I got so much reputation on Stack Overflow. My answer was two-fold:

  1. I got lucky and joined during the beta. (Luck should never be ignored.)

  2. When somebody asked me a programming question or when I ran into something strange in the course of my job, I made it my habit to see if the question was already asked on Stack Overflow. Then I'd either provide an alternate answer (if possible) or self-answer the question.

Why did I do this? Partially it turns out that providing solutions to common problems (and if you've experienced it yourself, it's likely others have too) is a great way to get reputation over many years. But it also made me feel good to think that I'd reduced the odds that some other programmer would get stuck on the same problem I did. My personal goal was:

Help other programmers get their jobs done well.

Due the the nature of my job, I had lots of downtime. Rather than waste the time on something selfish, I tried to contribute something positive to my profession (and learn a thing or two myself). I pictured some other guy in an office like mine trying to get home to his family, but needing to fix a bug first. Then I imagined him (yeah, kinda sexist, I know) finding my answer and being able to leave work with a feeling of success. For all I know, this might even have happened at some point.

  • That's very... brand aware, which I guess isn't much of a surprise :-). When I first read this I assumed that your sub-goals don't override the main goal, which was obviously incorrect from your anecdote. Not sure how you could make it clearer but it leads me onto my question. What are Stack Overflow's sub-goals? – Ben May 27 '14 at 6:55
  • @Ben: I'm not sure what you mean by the subgoals overriding the main goal. You can get answers to your questions even when you don't post any questions. – Jon Ericson May 27 '14 at 7:15
  • That explains my confusion then, thanks. – Ben May 27 '14 at 7:22
  • 3
    but do we really need 95% of the questions every day to be un-researched duplicates of basic stuff like "How to compare Strings in Java?" – user177800 Feb 19 '16 at 7:38
  • @JarrodRoberson: Detecting duplicates (or ideally, showing duplicates before people ask) is certainly something we'd like to improve on. But short of banning new programmers, there's not much to be done about "basic questions". One of the skills new coders need to learn is abstracting concepts (such as comparing strings) and navigating documentation. It's possible improving documentation will help. But, yes, this is a difficult problem we haven't really solved. – Jon Ericson Feb 23 '16 at 18:15
  • 1
    @JonEricson - you missed the entire point, un-researched is key to my comment. The actual question is just a strawman example. – user177800 Feb 23 '16 at 20:43
  • @JarrodRoberson: But how to do you tell if the duplicate is un-researched or if the asker just as no clue how to find the information they are looking for? Certainly there are some people who post on SO without doing any research, but there also plenty of people who actually found the information they needed to solve their problem and just didn't understand how it applied. Fundamental attribution error is, unfortunately, common in these situations. We naturally assume people are lazy, but there might be more to it than that. – Jon Ericson Feb 23 '16 at 23:42
  • 1
    easy; when the title of the post is the exact wording of an exception and there are dozens of duplicates on SO for it, or when they mention the exception multiple times in the question and there are dozens of duplicates with that in the results on SO; it is unresearched. There needs to be no benefit of the doubt on those, they need to be closed with prejudice. The strawman I picked is a prefect example. – user177800 Feb 24 '16 at 14:32
  • 1
    Others like this one are completely unresearched off of stackoverflow because that is a fundamental python thing that is well documented in the official document and hundreds of tutorials, and has plenty of perfectly good resources on the internet available via google even before this question was asked the first time. Do we need to answer that question for every newbie pythonista wannabe? – user177800 Feb 24 '16 at 14:38

We can dance around the fundamental paradox all day long. If you don't have experts, you don't have answers. So if the experts are a bit cranky, or have strong feelings about help vampires, the site has to accommodate, or there will be no experts, and no answers, and no site.

As one of the merely moderately frequent answerers, I take this very personally. You are asking for my time and attention. As it happens, I am unlikely to hit you with a snarky comment, but you can expect downvotes and close votes early and often. I do it to chase away the people who can't be bothered to make good use of my time. And I chase those people away to make it easier to help those who deserve help.

Winston Churchill famously said:


The same applies to Stack Overflow. OP, Mick P, can you name some other web resource that works better? Where you can ask a question and have any hope of getting a reliable answer? I bet you can't. Even if you go back in time to before this site existed, you can't. These sites were designed to dodge the paradox that made the others mediocre.

So here you have Stack Overflow: it doesn't ask you to pay, it just asks you to (a) work really hard to ask a non-duplicated, fully-fleshed question, and (b) put up with occasional crap. (b) is a universal characteristic of the internet; nothing on the internet will ever, realistically, be different. So this whole debate is about the treatment of questions that are duplicates, unclear, lazy, whatever.

A further observation: there is now so much good stuff already here that the vast galumphing majority of the new programmers who come here can get what they need with Google. They don't need to ask a question at all. Unless, of course, what they need is what these sites are not for.

  • +1 for: universal characteristic of the internet. We have to wade through some everywhere we go, even in the real world. – miltonb May 22 '14 at 9:10
  • 4
    Optimizing For Pearls, Not Sand: "...we’re determined to keep question quality high, even at the cost of refusing a little sand. It’s true that you can’t have Q&A without questions, but having the wrong sorts of questions is far more dangerous. The fastest way to kill any Q&A site is to flood it with low-quality questions. ...maximize the happiness and enjoyment of answerers. If this means aggressively downvoting or closing unworthy and uninteresting questions, so be it." – gnat May 22 '14 at 9:31

Hmmm… I agree with your post but I really disagree with this point.

…the Internet was a little bit bare with regards to programming.

So you are saying that in 1997 programming was not much of a thing? You mean right in the middle of the first wave of the dot-com era? Completely disagree. There were great resources such as Web Monkey and even tons of Usenet groups. FWIW, I first got on the Internet in the pre-web era of the early 1990s & Usenet groups—and simply the ISP I was on, Panix—provided great resources.

Maybe my perspective is skewed by age & when I went online, but the simple act of going online in the pre-web days taught me more about the Unix command line than school ever did.

But there were people out there who encouraged me to continue. I don't see that anymore.

Really? Maybe to an extent. I think there are definitely lots of really obnoxious “brogrammers” out there who code fast, create junk, cash in & set a horrible precedent. You can thank the initial dot-com boom for that. And even “Web 2.0.” But the main reason I have been drawn to Stack Overflow is the fact that there is some really good—and encouraging—folks posting here. People who have real deep skills & deep experience whose advice saves me time, headaches & teaches me how to approach tech problems better.

Which all means to me, this site actually encourages the long-term goal of quality, sustainable programming. And yes there is noise here, but it’s easy enough to filter out in my humble opinion.

Do I have relationships with others here that encourage me to learn more? Yes & no. I run into some users here who I deeply respect & state as much. But I don’t feel there is a “chatroom” mentality here so the community is ephemeral but consistently quality.

I will say I do see signs of iffiness on a few of the non-core Stack Overflow areas. Those are so small in active users that it feels like a glorified chatroom. But perhaps in time they will mature as well to be a valuable tool as well.

  • 2
    When I said bare, I meant that it was a little harder to find an answer to a programming question. I'm not saying there wasn't any. Not at all. I've learned probably 95% of my programming knowledge from the web. (I'm just now going to college for it.) – teynon May 14 '14 at 2:52
  • 1
    @Tom Cool. Makes sense. But will give you the best advice ever: The best skills you will ever learn as a programmer will not be in the classroom. Maybe there are exceptions to the rule, but the skills you learn by learning this stuff on your own really pay off more in the long run than the formal classes. Best of luck! – JakeGould May 14 '14 at 2:53
  • 2
    I'm only going to college because the GI Bill is paying for it. So far it seems to be a waste of my time. (Not that it would be a waste for everyone. Nor that every university would be a waste of my time.) – teynon May 14 '14 at 2:55
  • 3
    +1 for "brogrammers" – Lightness Races in Orbit May 17 '14 at 18:45
  • 1
    @JakeGould, That highly depends on how much you put into your classes - "You get back what you put in". A good school can teach important software engineering principles, good design, debugging skills, coding practices, and communications skills that so many new posters clearly do not have. Granted, you have to "learn it on your own" even in school (regurgitation doesn't count), but the professors really are trying to pass on important knowledge. The problem is that students just want the answer/grade and don't care about the process. – BradleyDotNET May 19 '14 at 23:38

I think you basically hit it on the head. The goal is helping people get answers to their programming questions, and the main way we do that is through building a library of Q&A.

I went back and forth on this a lot, but at the end of the day, the library can't be the goal itself. If all you care about is building the perfect library, one day you're going to find yourself barring the doors and chasing away everybody who actually wants to read your books, because people are messy and you can't have the perfect library with all these people around. But if you make helping people your focus, you can keep that in perspective. Helping people means having systems and rules, but it also means not having so many rules that nobody can use the thing.

Ultimately, we're building a library because we think it's the best way to help everybody -- not just the person asking the question. I'm not interested in answering a question that will only help one person, not because I hate that person or think they're dumb, but because it's a waste of time. We're better off focusing on the questions that might help a lot of people.

I personally don't care whether the asker showed effort. I think it's a good rule of thumb for you if you're asking a question to make sure you're not just leaning on the community to do your thinking for you. But once the question is asked, all I care about is whether answering it will help the Internet at large -- if so, we should answer it.

The big problem we have right now that everyone is talking about is that signal-vs-noise is dropping (and has been for a long time): people are having to dig too deep to find something they think is worth their time to answer. Part of that is because the people who have been around since the beginning have seen it all before, and there aren't that many truly novel questions left in their area of expertise. Part of it is also that we're seeing more and more low-quality questions.

The problem with just raising the bar and outright closing everything that seems like a waste of time is that people have different standards. There are plenty of people who are happy to answer low-quality questions, even if they help only one person. I say "God bless 'em", but we need to make sure the rest of the experts on SO can filter out the stuff they don't care about.

My proposed solution is something like a three-tier system: the worst questions should be closed and deleted. These are the questions that nobody can or wants to answer. The middling questions are ones that could be answered, but the top-tier users are sick of answering and don't want to see anymore. These should be filterable so you can ignore if you want. The top questions everybody wants to see, and should be celebrated and probably shown even more prominently than they are right now (since the homepage tends to whisk away answered questions very quickly).

At the end of the day, I think we're all trying to help people and make the Internet better. People can disagree on the best way to do that, but I think we have to keep helping people as our ultimate goal or we're going to end up with the world's best library that nobody can ever use.

  • 6
    That's a pretty weak analogy, isn't it? Libraries don't depend on their visitors for their collection. The well-meant donations that are pulp or dog-eared do get pitched in the garbage can quickly and never make it to the stacks. Just don't make it hard for us to use that garbage can. – Hans Passant May 21 '14 at 23:45
  • 3
    @HansPassant The point is that maintaining the collection is not an end in itself. It's possible to get so caught up in maintaining the collection that you lose sight of why you started putting it together in the first place. Our goal can't be "to build a library" -- it has to be whatever the library was built for. – David Fullerton May 22 '14 at 2:37
  • 5
    The three-tier system is not a bad idea, but Tier II borders dangerously close to being a ghetto, which is what Not Programming Related and all of those other "alternate site" proposals were, the ones we've been so vociferously trying to avoid. – Robert Harvey May 22 '14 at 2:57
  • @RobertHarvey, but why do we want to avoid those questions that 1) are not dupes, and 2)That someone needs help with AND that some people are perfectly happy answering? To me, the harm they cause today is that they dilute the pool for users who don't want to see them, so the key is making it easy for those users to limit what they see to the ones that interest them. – Jaydles May 22 '14 at 11:32
  • 1
    @RobertHarvey I shouldn't have used the word "tier" because it has a lot of connotations in this conversation. There are no tiers here in the sense of "You must be this tall to talk to the real experts". By default, everybody sees everything. Some users choose to see more of the things they are interested in answering, and fewer of the things they aren't interested in. – David Fullerton May 22 '14 at 13:23
  • 11
    Doesn't this kind of ignore the elephant in the room, which is rampant duplicates? That is also the sort of content which Google will eventually start penalizing sites for, after the thousandth "why does 0.999999 = 1" question gets answered, because god bless 'em, they just want to help others! (And to be fair we cause the problem, since they get rep for that, often easy rep.) – Jeff Atwood Jun 4 '14 at 5:11
  • I think answers to questions that get closed as duplicates, stay closed and get deleted out of the system should count -2X the rep earned by anyone answering them. That would disincentivize people from answering the rampant duplicates of extremely common un-researched questions! – user177800 Feb 23 '16 at 20:48

Noobs gotta noob.

Stack Overflow wants to build an online resource of questions and answers. It wants a certain level of quality, a certain standard.

The site wants to be accessible to noobs, but noobs can't meet the site standards. These 2 things will never be reconciled.

Noobs will continue to ask annoying trivial questions, and find the answers to other annoying trivial questions very useful. I do!

High standards or happy noobs. Vote now.

  • 2
    You know the difference between noob and newbie? – Deduplicator Jul 25 '14 at 22:45
  • @Deduplicator nowadays most people use noob as if it means newb, and dont know there was ever a difference, so if people want to go back to differentiating between the two, then theres a lot of insults on Stack Overflow that werent intended as such. – user3467994 Jul 29 '14 at 3:25
  • Is it still "most people" if you exclude noobs? So, what's the new word for noob then? Or do you think the differencee is of no import? – Deduplicator Jul 29 '14 at 13:24

To me, this site is about helping people.

Boy, are you naive. Clearly, the goal is to make a profit for Union Square Ventures.

I like the site too, but let's not kid ourselves.

  • 2
    Incredible I had to scroll all the way to the bottom to find someone else who gets it, maybe it's true what they say about programmers' social adroitness? :) Anyway, good for J&J, by all means let them monetize what they created via SO Careers et al., but let's stop pretending this is all in service of making the world a better place. – Matt Phillips Aug 10 '14 at 17:53
  • 2
    @MattPhillips have you seen the show Silicon Valley? Mike Judge makes a running gag of the fact that every company professes to "be changing the world", etc. I'm sure they are not averse to doing so, but we know where the rubber hits the road. – McGarnagle Aug 11 '14 at 20:48
  • 3
    Yes, that's funny. I think J&J's ambitions c. 2008 were stated with perfect sincerity. And SO has made the internet a better place, at least for me it has provided enormous value. But eventually it occurred to them 'hey why not actually try to make some money off this', and I strongly suspect that many of the recent site changes (see Hans Passant's answer) are driven by (possibly misguided) monetization considerations, not making SO the best site it can be simpliciter. And any such subtle shift in direction has not really been broadcast to the community. – Matt Phillips Aug 11 '14 at 21:19

The goal of SO - and/or the parent business group - or of any business, is of course simply to make money.

The internet is simply the advertising medium of today. In 500 years a summary of commercial history will be

It seems that from about "1950" to "2000", advertising was on a thing called "T.V.". We now have no idea what "T.V." is because records are unclear. It seems that from about "2000" to "2070", advertising was on a thing called "internet.www". We now have no idea what "internet.www" is because records are unclear.

When the internet was first launched, for five minutes it's primary purpose was pornography. Then there was five minutes where the primary purpose was online gambling ("stock lol trading" and also blackjack and sports). Since then the ord "internet" means "advertising". That's all it is and all it will ever be.

(Obviously, the world's biggest advertising concern by dollar amount, is a company called "google". Every single penny of money made by or involved with google is advertising.)

With "production-by-consumers" sites like SO, the typical outcome is to sell to Google, or possibly Facebook. A few sites - I believe SO included - actually make money (ie: from advertising) before selling to Google - and that's fantastic and admirable.

Regarding whether SO is a "good" thing (in some moral or social sense), is silly - of course it's a good thing. Car companies are good things, advertising companies are good things, supermarkets are good things. If you're say a pornographer it could easily be argued that's a bad thing, I can't see any meaningful way SO could be considered "bad"

The question

What is Stack Overflow’s goal?

is sort of bizarre, it's trying to sound profound.

It's no more complicated than asking "What is Ford's goal" (obviously, "make cars" ... sure, in the general sense "like any business, make money" is the ultimate meta goal - a trivial and unimportant observation). SO's " ' goal ' " is of course "provide QA forums". (Sure, in the general sense "like any business, make money" is the ultimate meta goal.)

It could be there's a lot of confusion because folks (for some unknown reason) see certain businesses (say, SO) as kind of ... I don't know, more like a lol-charity (like say Wikipedia is a lol-charity).

SO is a prduction-by-consumers business precisely like, say, tripadvisor.com.

The "goal" of tripadvisor.com is "offer crowdsourced travel reviews"

The "goal" of SO is "offer crowdsourced QA".

So what? Sure, with any business in a general sense "make money" is the ultimate meta goal - nothing confusing about that.

  • SO is not a business, Stack Exchange is. SO is more like a freemium service. – Gimby Feb 25 '16 at 15:55
  • 1
    To add to the confusion they've been renamed @Gimby – rene Feb 25 '16 at 15:59
  • @rene Oh wow. Not everywhere though, in the footer of this very page its still Stack Exchange Inc. – Gimby Feb 25 '16 at 16:02
  • Hi Gimby a "freemium service" is a business like any other. It's just an arm of SE. It's utterly unsurprising that the parking lots in WalMart are free ("they're a freemium service!!!!). So what? It used to just be called a "cost center" in business. – Fattie Feb 25 '16 at 16:02
  • 4
    Not sure if I'm being trolled here. – Gimby Feb 25 '16 at 16:05
  • ? a freemium service is an entity with employees, products, income, and expenses. It's difficult to see how it's "not a business" ..??? – Fattie Feb 25 '16 at 16:10
  • The roast is real. I feel the tension rising – CodingNinja Apr 30 '17 at 7:43

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .