back

by dt3ft·5y ago·view on hn ↗
Related rant:

I really gave StackOverflow a try, and I have no intention of writing an answer ever again. I took 30 minutes to write a very detailed answer to a question, only to find out that the question has been deleted days later.

Looking at similar questions, there are 40k+ unanswered questions, mostly very low quality and from users with almost no "karma".

Why bother answering, when answers must be accepted by the poster and poster does not even know they should accept an answer in the end?

StackOverflow needs overhaul, but at its current size, we're better off starting something new.

13 comments
StackOverflow has its issues and it is certainly a culture shock compared to most forums. It's still the least bad site for general programming that I know, and your experience will be much better if you understand the most important quirks of the site and the community there.

There's two options here on what could have happened:

- the community deleted the question because it did not meet the quality criteria

- the user self-deleted after the answer was posted

To avoid the first case you need to understand roughly which kind of questions get closed and deleted on SO, and simply avoid answering them if you don't want your effort to go to waste. The second case mostly happens with users posting homework (in an effort to remove the evidence), which are cases where answering is somewhat discouraged. But if the question is generally good, you can flag that case for moderator attention and it will likely get undeleted. Once your answer has an upvote, the asker cannot delete anymore.

It seems odd to allow deleting questions with answers at all, since you're essentially allowing someone to delete someone else's content without their permission. Not quite as odd as "well you should know if we're going to arbitrarily delete this question before you waste time answering it," though.
There is a mechanism to prevent this, any answer with a positive score prevents deletion. There are also valid reasons to remove your own question, the most common is that you discovered a mistake that makes the entire question irrelevant. In that case you don't want a bad answer stopping the cleanup. Deleting good content without a reason is against the rules, it just isn't enforced by technical means in all cases. This is where moderators come into it to handle those cases, but you have to know to flag them for this.
This is a good explanation, thanks.
I think that SO needs to implement a concept I call "epochs", where all the questions are archived every 3 years and removed from normal search. In the current epoch, questions that have already been asked in previous epochs are welcome and encouraged so as to give precedence to answers that are up to date.

Either that, or they need a way to nominate answers to no longer be relevant or current.

The current state of SO would have confused the hell out of me when I was a beginner. It seems like 90% of answers are outdated in some respect.

I have a similar desire but across all search results, so my default search engine is a custom one: Google (Within Last Year). This has the same effect as when you click 'Tools' and select a date restriction, but automatically applies it to default searches.

You can add this to Chrome by going to Settings -> Manage search engines -> Add. Name it 'Google (Within Last Year)' and make the Query URL 'http://www.google.com/search?q=%s&tbs=qdr:y&tbo=1'. Then set it as the default.

This filters out of date and usually irrelevant search results across the web. You can override it manually from the 'Past year' dropdown if the results are not extensive enough, which I do maybe 5% of the time.

I wouldn't necessarily be against this but it would have to be filtered for certain technologies and even then it gets messy. Perhaps some internal SEO management, or newer relevant thread linking system would be better. Some technologies I use are OLD and haven't changed in the last ten years. Sometimes a 7 year old post has exactly what I needed. If they could add a banner and lock down voting and commenting after 3 years, that would be acceptable.
While that would benefit StackOverflow, it would cause a lot of issues when searching anything remotely obscure. I've ran into many questions that haven't seen activity since 2012 and don't have any newer ones.
It still confuses the hell out of me. I feel like every freaking question about swift I searched are always 5 to 7 years old.
Like Wikipedia, Stackoverflow is plagued by power-tripping moderators. Similar as with deleted Wikipedia articles I have never understood what benefits there are to deletion of pages/articles when there is already voting to mark "bad" questions.
Recently I've found it to be mostly pages of incorrect answers and nonsense.

It's not that I know the correct answer, that's why I'm reading, but I do know what does not work, and all too often that's all I see, just pages of things that are obviously not right.

I've found I just have to abandon the internet entirely these days and start reading the source code. It's really time consuming but it's starting to become also the fastest way. :-/

And yes, I usually go back and add an additional answer if I find things out, usually starting with "none of these are correct."

It's eternal septembered. What a hard system to fight off. I think wikipedia has done it but that's about it.

> It's not that I know the correct answer, that's why I'm reading, but I do know what does not work, and all too often that's all I see, just pages of things that are obviously not right.

A similar situation is when you have a working answer, you know that it is not particularly good (inefficient, poor handling of edge cases, etc.), yet all of the answers are along the lines of your existing solution.

Programming problems are quite often a case of how something can be better solved. Consider the textbook example of sorting. The problem itself was always quite easy to solve, yet considerable amount of research were put into finding efficient algorithms since naive approaches are quite inefficient. We are lucky today since languages or libraries typically provide both the data structures and algorithms, but I cringe at the thought of how inept my code would be if I was relying on SO quality answers while learning how to program in the late '80s and early '90s (since there were many cases when you had to roll your own).

If the question was on topic, then your work doesn't have to be wasted. Just create a new question about the topic yourself and self-answer it. (If you can still access to your own answer, but I think that should be possible)

> Why bother answering, when answers must be accepted by the poster and poster does not even know they should accept an answer in the end?

There is no obligation to accept answers. Often the accepted answer isn't the best answer anyway.

Do not engage with people with near-zero reputation perhaps?

I known this sounds badly and I'm not for gatekeeping, but this based on real life. If someone does some effort to answer a few questions first before asking themselves, they're more likely to be serious. Otherwise it's like those people on GitHub who open a ticket in your free repo and harrass you to fix it because they have a demo tomorrow!

BTW: writing detailed response from scratch should be an exception. In most cases the answer is already there in some existing question, but the person asking doesn't know some keywords to find it. So you can use your knowledge of the subject and point them to existing answer. It's faster this way and avoids duplicated content.

Perhaps even more painful is when you write the detailed answer, press submit, only to find that it’s been deleted as you were answering!
I’ve found it similarly dismaying when I write a detailed answer that explains why something is done a certain way and include some background/context so the asker can learn from the question, only to have someone else answer “just do this” and paste in some (IMO poorly written) code with single character variable names and magic values and other such code smells, with the poor answer being “accepted” and upvoted.

Seems there’s not much point putting effort in to do something “properly”.

> Seems there’s not much point putting effort in to do something “properly”.

Software Development in 2020, everyone.

This perfectly describes what our industry has become :)

Thank you for your good answers!

Lots of people will go read your answer and upvote it. The fact that the questioner didn't check it is something you should mostly ignore.

> Why bother answering? StackOverflow needs overhaul

Yet it's hard for me to find a single decent question that hasn't been answered any time I'm on StackOverflow looking to procrastinate by something work-adjacent.

It's clearly working and it's been working for years. In fact, it's even harder to get karma now. I don't know how I got to answer so many questions back when I used it 6 or so years ago because now any of those questions I answered would've been answered in minutes like they are now.

I think the key is to focus on fringe/niche questions. Of course this wont make you a lot of karma, since relatively few people search for fringe things. But at Internet scale, that can still be a considerable amount of people reached over time. And writing good written answers is usually good for ones learning as well.
I have found SO to be quite useful, but I don’t go there to answer questions.

I go there to ask questions. I’ve asked nearly twice as many questions as I’ve answered.

I have gotten some very rapid, useful, answers to vexing issues.

I’ve also been treated quite badly. They seem to have a culture that assumes people that ask questions are a “lower caste” than ones that answer. Look at the folks with five- and six-digit scores. Most have single-digit question counts; with that digit frequently being “0.”

Shrug. Whatevs... I don’t lose any sleep over it. I haven’t been asking as many questions, lately. That’s because I haven’t been getting answers lately. Maybe part of the issue is that my current questions are a quite difficult and “production-related,” compared to my older ones. I have noticed that many answers tend to be rather “academic,” in nature, which I like, but that tell me that the person answering may not have experience applying the answer in the context of a shipping application.

I have learned to improve the quality of my questions, over time. One of the by-products of the way I’ve been treated, is that I have gotten better at doing self-research, and figuring out the answer on my own.

I’ve always been quite good at arriving at solutions on my own, but it takes time, and, quite often, a response to an SO question, even if done so in a condescending manner, would deliver an astonishingly quick answer; frequently with some orthogonal viewpoint that makes the answer more valuable.

I’ve also learned not to “slap back,” when someone is a bit snotty to me (I’m quite capable of doing so). Even if they aren’t being nice, they are doing me a favor, and I appreciate it. I don’t go there to make friends. I go there to get problems solved.

I mean posting a solution regardless if it is accepted still provides utility for others stumbling across the post.

I have like 3 karma on my stackoverflow profile but most of my questions get answered provided it’s tagged well and is formatted well.

Answers are still useful even if not being the one approved by the poster, as the reader can decide which one to go with. And anyone can vote on answers. Quite often a better answer will get more upvotes than the approved one, and readers (should) definitely skim for that. Sometimes the best piece of info is in a comment, and even that is quite OK visible as long as people vote for it.

The karma system also rewards upvotes more than approved answer in practice, since just 3 votes will be more karma than approved answer.

I am guilty of this as well. I had deleted one of my question, although there's no answer in it yet, only one comment.