77

I notice a steady stream questions in the HTML and CSS tags that point to a site or CSS style sheet, and describe a problem without incorporating any code into the question.

A few random examples:

Although it is totally understandable and natural for an OP to ask this way - they probably even think they are doing the site a service by not cluttering it! - I can't shake the feeling that these questions are a problem: They will lose all value to future generations when the problem has been fixed.

The OP is likely to fix the problem in the site source, and it becomes impossible to ever again see the source code of the problem that the answers solve. Asking the OP to incorporate code into the answer will work sometimes, but usually it won't.

Is this a real problem? If it is, what to do?

11
  • 7
    For me, it sucks, because these links go dead and then people flag the question saying "hey like the link is dead" and I go "derp" because nobody can do anything about it. My opinion: Downvote these answers.
    – user1228
    Feb 28, 2011 at 14:46
  • 5
    @Will: Did you mean to downvote the answers or the questions? It seems the questions would contain the dead links, not the answers. Feb 28, 2011 at 15:52
  • 12
    Doesn't "too localized" need more emphasis on, kind of, "too personal"? Reading it makes me (non-native English) feel it's more about location than about the nature of the question itself: "This question would only be relevant to a small geographic area, a specific moment in time, or an extraordinarily narrow situation that is not generally applicable to the worldwide audience of the internet." What about starting that list with "a one-time problem or a single person" (in better wording)?
    – Arjan
    Apr 8, 2011 at 18:53
  • 3
    @Arjan good point. I'd bet a large sum of money it's the least used close reason, in no small part because it is so abstract. Your suggestion is interesting.
    – Pekka
    Apr 8, 2011 at 18:57
  • @Arjan: Good idea, but I think localized bug-fix questions should be allowable provide the OP has earnestly tried hard to fix it.
    – John
    Apr 9, 2011 at 0:50
  • 1
    I tried to make a SEDE query, but I can't find anything those 3 questions all have in common beside a link, and there's 1000s of legitimate uses for those. :/
    – John
    Apr 9, 2011 at 1:53
  • @John thanks anyway! This is a good point to start.
    – Pekka
    Apr 9, 2011 at 22:32
  • @Arjan But logically SO will come to a point where questions will either be too localised or duplicates of other questions. I think it's a nice idea, but how do we know if a problem is one-time, one-person or whether a few other people out of the entire world might actually have the same problem.
    – Dan Blows
    Apr 28, 2011 at 20:34
  • @Pekka I agree that this would be good to link to from the FAQ table of contents and be tagged faq, but it doesn't read like an FAQ question right now. The others are worded and formatted cleanly whereas this question is most definitely a discussion. If you want to post a version along the lines of "is it acceptable to post links to external sites instead of including code?" and summarize the points made in answers here, I can toss faq on it for you.
    – Adam Lear StaffMod
    Mar 17, 2012 at 6:47
  • @Anna cool, thanks. Done: meta.stackexchange.com/questions/125997/… could you make that one CW please?
    – Pekka
    Mar 17, 2012 at 15:39
  • @Pekka Cool. CW'd and I'll keep an eye on it for Shog's comprehensive answer.
    – Adam Lear StaffMod
    Mar 17, 2012 at 15:58

8 Answers 8

28

I think you already know the answer to this, and you're looking for someone to back you up... Fine - there are two huge issues with these questions:

  1. They don't include the relevant code.

  2. They link to code that isn't necessarily relevant.

Now, #1 is a problem, but it's a problem that could conceivably be fixed fairly easily by an editor if the question or answers were otherwise worthwhile... Except that #2 conspires to make this task impractical. Pasting a whole HTML page into the question doesn't really improve it.

So yeah, these questions suck, and are unlikely to get enough TLC to suck less. The real question is: why do they get answered?

Because it's just so easy. If someone uploads their Java project and links to it, you're probably not gonna download it, unpack it, compile it and debug it. But if they link to a website... Well, shucks - if you can load the page, you're probably already debugging it.

In fact, it's so easy to debug a live webpage, that some folks have even suggested encouraging this for questions that wouldn't otherwise provide it!

It's a real testament to the skill browser tool-makers have employed in their craft. But... It still sucks for future readers, who may eventually find themselves wading through dozens of dead questions. So what can we do?

Give a man a fire, he'll be warm for a day; kill a man with fire...

If it's easy for you to debug, it's easy for the author to debug. If only he knew how... Just think: instead of wasting countless minutes on SO, he could have his answer in seconds - or at least be close enough to ask a fairly specific question.

But why's he gonna do that, if someone's ready and willing to dig through his pile of markup and lay both the problem and the answer at his feet?

So the answer - as I'm sure you knew - is the same today as it is every day: when you see a question like this, vote down, and vote to close using "Questions seeking debugging help...must include desired behaviour...". Linking to a transient website sure sounds pretty close to Joel's "Why is there a car parked outside my house?" example, but regardless of which one you go with, post a comment and tell them, "Hey man - check out this Firebug thing, it'll change your life! Then come back and ask a specific question..."

5
  • Well put, thanks. Actually, I didn't have a pre-conceived answer ready, but what you say is the inevitable consequence (which is why I'm going to mark this accepted). I guess we should start downvoting and commenting on such questions, and link to this discussion if there's opposition - but it's going to be a long road until it becomes accepted community policy. Maybe a blog post might help achieve that?
    – Pekka
    Apr 29, 2011 at 23:02
  • 13
    Pathetically regular visitor that I am, I actually have a clipboard snippet I use when I see these: "Live links are a great adjunct to a question, but always post the relevant code in the question as well. Two reasons. 1. People shouldn't have to follow a link to help you. 2. Stack Overflow is meant to be a resource not just for you now, but for others having a similar issue in the future. External links can get moved, modified, deleted, etc. By making sure the relevant code is in the question, we ensure that the question (and its answers) remain useful for a reasonable period of time." Jul 21, 2011 at 9:26
  • Shog, would you mind pasting this to meta.stackexchange.com/questions/125997/… ? (See discussion with Anna above) I think it's best if it stays linked to the original author
    – Pekka
    Mar 17, 2012 at 15:39
  • 1
    @Pekka: your answer was pretty good - I edited it a bit.
    – Shog9
    Mar 17, 2012 at 19:52
  • Both the Not a real question and Too localized are no longer valid close reasons. So what's the best close reason for this type of question now?
    – user217110
    Jul 8, 2014 at 10:35
18
+250

I do believe it is a problem, and my response to that until now may not be optimal: if the question is new and I'm at work, I won't even follow the link and dismiss the question (could be a NSFW link, I won't risk it); if the question has been answered, I won't even bother to check external websites.

But I never downrated because of external links, and that's because the rule here is not clear. Even when I do agree with you (I see it as a problem), it is not clear that this behavior is discouraged. As jzd said, mentioning in the FAQ is a good start.

In addition, detecting links while writing the question may raise one popup reminding the asker that linking to code outside is discouraged, and explaining why.

  • If the link has any other objective, then the asker will just dismiss the popup and continue.
  • If the asker was indeed linking to the own code elsewhere, then that user has the chance to correct it and paste the code instead even before submitting the question.
  • If the asker continues to link to the code elsewhere regardless of the warning, then it's fair to downvote it or delete the question.

I always tend to favor resolutions that try to prevent a problem, rather than more ways to punish the culprit (which may also be needed, but only after the former).


Addition: to try to rescue those questions already out there without increasing the burden for mods, a possibility is a robot scanning the questions (and answers) every now and then and notifying the owner when it finds a broken link, giving the user the option to replace the link with a new one (or with the actual code) and deleting the question if no action is taken after a predetermined time.

1
  • Wikipedia has such a robot that automagically replaces such links by a link to the wayback machine. I'm not sure but I think this robot also asks the wayback machine to archive the external page even before it vanishes. This is used for web references cited in wikipedia articles.
    – Juergen
    Aug 14, 2020 at 16:45
7

I agree that mentioning it in the FAQ would be useful in order to spread the concern to a wider audience. Also, I think meta users should post comments asking for the code and explaining the reasoning instead of closing. That way the OP has a chance to improve the question and those who typically answer such questions are able to see the problem with not having the problematic code in the question.

6

Yes - this is a problem. Questions with the code on external sites are often of poor quality: "plz fix my codez". And they're so specialized that they're of no use to anyone other than the OP.

These questions should be improved or deleted. I've been flagging (too localized) and down-voting many of them. If salvageable, I'll propose edits to the question, or leave comments asking for code to be pasted in.


A new thought: Perhaps these questions could be deleted and moved to chat? Both the issues and chat rooms are so ephemeral.

3

I totally agree that this is a problem.

It's compounded when the OP of a question with no upvoted or chosen answers says "Why isn't this blue?", you check and it is blue. Have they fixed it already and just not posted an update? Or is it cache-related? Or a browser issue?

The two obvious reasons why this might happen are 1. Laziness on the part of the poster. They want a quick result, and are not concerned with posterity or Jeff Atwood's pension plan; 2. Maybe some users (I'm extrapolating from myself to billions here) are thinking "I don't want my rubbish code hanging around for eternity on Stack Overflow for Google to index".

So perhaps automatically retrieving the code and dumping it into JSFiddle (or something else, preferably built by StackExchange) would help with #1 and being friendly about it with the user (the code won't be indexed, you'll need to be logged in to see it after the question is closed) will help #2.

2

I think many of the suggestions are good, but the first step needs to be mentioning it in the FAQ. How can you know not to use external resources for some things if you aren't told so? I think having it in the FAQ would get most people to comply.

Another related problem - as mentioned in yodas answer - is not including some needed information at all. In my case it has mostly been with (my)sql questions. The askers would get so much better answers, faster, and with less wrong answers if they'd provide certain basic information in their question. It would also save the time of each and every one answering the question, since now they are all doing the same work over and over again.

Usually people just post a near-working query, tell what they are trying to accomplish and ask for some help getting there. Then everyone wanting to answer that must guess the data types, write the needed CREATE TABLE statements and invent some arbitrary data, if they want to test their answer. The fact that example data is not provided and that testing is not easy means that people don't test their answers and many answers are wrong.

If the asker included all the needed CREATE TABLE statements, INSERT statements with example data that shows the problem, the output of their own query and the output that they want/expect, it would save trouble for others, and get the asker much better answers.

When somebody asks a question without all the needed info, you can just ask them to add it, but currently you'd have to do that for every other question. I'd like this to be added to the FAQ. "When asking a question which involves code/queries which don't work or need improvement, always try to include all the resources needed for easily verifying the correctness of a solution, if possible.", or something like that.

What yoda suggested was awesome. You could have a general instructions in the FAQ/"how to ask a question", and a more specific set of things your question should have for some tags. For (my)sql that would be at least CREATE TABLE/INSERT statements.

0

I think you are being too personal. I'm guessing with your rep that you've been there done that and are wearing the t-shirt. I've belonged to a forum for 10 years that wouldn't let any of these questions pass, anything that might possibly lead to a dead link (question or answer) got deleted.. I'm not bothered, and I was usually able to work it out but then came the advent of plugins. Not everyone is building their site from scratch any more.. Do you want to penalise their knowledge too?

What questions exactly do you think will be asked if Stack Overflow members are supposed to figure out how their (usually jQuery in context with OP again) plugin doesn't work? - did they sign up to learn CSS and HTML from the ground up? Do you want to tick them off with your superior knowledge before they even realise they are learning?

You can't have it both ways.. And though I don't envy the/any decision that may need to be taken, jsFiddle, JS Bin, placeholder, and DummyImage certainly make it easier than it was in my day ;)

5
  • 2
    Mmm, you may be misunderstanding what I mean. My only issue here is with the fact that once the problem is solved on the page the OP links to, there is no record of what the actual issue was any more. Literally none. To an outsider looking at the question in a few months' time, it will look like this: "The menu is too far to the left. Here's the link: ..." and the answer: "Add clear: right to .menu". There is no value to that question after it has been answered any more; the record is destroyed. That's fine if your goal is one-on-one-support, but that's not really the site's mission.
    – Pekka
    Apr 8, 2011 at 21:35
  • I'm not misunderstanding, I've been there - the frustration is real and I get that dead links don't help anyone. BUT if you don't give an avenue (i.e you shut down questions because they don't fit a "bracket") you will alienate both q's and a's. e.g. one of the links you posted I answered (accepted) with a very, unusually short for me, answer - OP asked, and followed through but they got no answer - I wasn't even a member when it started, by the time I did see it it seemed to me that they'd followed all the 'rules', then second time around they offered a bounty, should I've have ignored it?
    – clairesuzy
    Apr 8, 2011 at 21:55
  • yup, then we're on the same page. How to deal with these questions is exactly what I'm unsure about. I'm not really frustrated about them - I answer those kinds of questions all the time. I just think the steady trickle may be poisoning the question base (whose quality SO is pretty big on traditionally) with what is effectively broken records, of no use to anyone. I'm not clear on what needs to be done (it isn't punishment, though: The OPs usually act in good faith.) Maybe there needs to be a policy requiring users to paste actual code into the question? I don't know.
    – Pekka
    Apr 8, 2011 at 22:02
  • 1
    I think SO is already doing the best they can by linking to dupes and "forcing" people, in a nice way, to rethink their question - if it didn't really get answered the first time around, encouraging jsfiddle examples is also about as good as it gets because that also encourages the OP to separate their problem from their pretty page.. all I can say is that I didn't find SO by accident, their mixture of spouting facts and helpful answers was more important than a rigid set of closed questions. there are certain SERPS that are just not worth clicking on!
    – clairesuzy
    Apr 8, 2011 at 22:19
  • 1
    good points and an interesting perspective on the issue. Maybe this indeed is something that kind of fixes itself the more serious the asker gets about asking questions.
    – Pekka
    Apr 8, 2011 at 22:20
-2

How about if we let the people know why external sites are bad, and also fix the problem?

On this question for example, I added a comment about why pastebin hurts SO, and then edited the question to inline the code.

1
  • Because you are adding a license (CC-by-SA) to their code without their consent. Sep 21, 2021 at 12:14

You must log in to answer this question.

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