back

by shagie·9y ago·view on hn ↗
A core problem for Stack Overflow is the lack of people willing to curate material. Its not an easy job and is quite thankless.

Its possible to have a site that is a mashup of /r/programming, /r/programmerhumor and /r/learnprogramming (and a few others) all on one site. Though when all of those things are together on one site it makes the job of the people trying to curate it impossible.

Sure, Strangest language feature is interesting... and it has 320 visible answers when it was locked. Is it useful? It might be interesting, but it is impossible to remove the crap content from it (go to page 11 and start reading backwards and saying "is that useful or not?").

Jeff Atwood wrote about this - https://stackoverflow.blog/2012/01/31/the-trouble-with-popul... . Too much interesting but ultimately not useful stuff gets in the way of finding useful stuff. This really runs up against the Atwoodian vision of Stack Overflow ( https://blog.codinghorror.com/introducing-stackoverflow-com/ )

> It is by programmers, for programmers, with the ultimate intent of collectively increasing the sum total of good programming knowledge in the world. No matter what programming language you use, or what operating system you call home. Better programming is our goal.

Interesting stuff and fun stuff may be interesting and fun - but when it gets in the way of making a site that is a library of good programming knowledge... something needs to be done about it.

Everything doesn't have to be on Stack Overflow. There are many other sites that are better suited to discussions and fun things than the format for that Stack Overflow took as a Q&A site.

It may be boring and heavily controlled... but that unity of vision is necessary for trying to make it a site that provides material that I need when I search for how to deal with some programming problem of configuring Spring Statemachine or whatnot... and then interesting and fun gets in the way of me doing my job.

5 comments
Lately I have been writing a lot of Python and I am seeing a lot of bit rot in Stack Overflow lately.

For one thing, it seems almost all the code snippets use "print-without-parenthesis" from Python 2, so you cannot just cut and paste them into Python 3. It isn't hard to fix this, but it's a clear sign the lights are on and nobody is home.

The lack of curation is a problem too. Often the first answer is wrong, or less than optimal. From the viewpoint of somebody looking for answers you don't really want 10 people's opinion, you want one really good answer.

It's even worse with javascript. Often times there will be 10+ duplicates with legacy kludgy answers that are irrelevant now or using jquery, when the correct answer should use new APIs or less buggy browsers.
The solution to this is to get the original question asker to consider changing the accepted answer. You can leave a comment on their question if it's many years old to bring it to their attention.
That assumes the original question asker is still even active, which is not a reasonable assumption on a crowd-sourced platform.
Yeah, success definitely varies if the person is no longer active and doesn't respond to the email notification. I've had mixed results with it in the case where the asker (new to SO) didn't realize upvoting answer(s) and accepting an answer are different things.

If it's a really popular question I think making it a community wiki is an alternative.

Agreed. I think a lot of this could be solved if they unpinned accepted answers from the top spot on questions and weighted votes based on how recent they are. That way new answers to old questions would have a better chance of rising to the top of the page more quickly.
You can change this as a user when browsing a question like that by changing order by from votes to active.
But then you're not sorting based on quality at all. The idea is the best answer should be the one on top. That's not necessarily the most recent answer, but it's also not necessarily that one answer that is really outdated but has accumulated tons of votes by virtue of being around a long time either.
Active sort is still based on quality -- it's not strictly most recent, but some combination of recency and votes... maybe like Reddit's hot sort.

For instance, on this question I posted a nicely upvoted thorough answer to a popular old question whose other answers were dated. By active sort it becomes #2 (#1 is always the accepted answer), but by votes sort it's #4.

https://stackoverflow.com/questions/695151/data-protocol-url...

The part about an old answer that was highly upvoted but is no longer right definitely exists — I'm not sure if they've thought about solving that one.

You can edit other people's answers to update them or fix this. Most people are very open to it. I do it regularly if the code isn't linted or if SQL keywords are lowercase vs uppercase to improve readability for everyone.
You can, but there is a very strong "don't modify other people's code; down vote wrong or not useful answers and provide your own" culture.

This becomes especially noticeable when answers based on an old version of the language or library no longer work for a newer one.

I agree if it is fundamentally changing the nature of their code, but expanding an answer to include a Python 3 solution alongside an existing Python 2 one is something I've done myself and haven't experienced any issues with. IMO the most important part is to preserve and extend the original answer vs re-write it completely.
You don't have to modify, and I never do except to improve readability (read: eliminate or reduce horizontal scrollbars). It's not unusual to see a good contributor add an answer to an old question that uses newer syntax or version features. "The accepted answer is quite old but this question is the top result for 'javascript arrays' (e.g.), so this is how you do it in ES6."
Sure, but can answers be un-accepted once technologies have advanced and better solutions have become available? I see a lot of accepted answers that were correct and relevant once, but not in (Summer of) 2017.
Yes, it is possible and best practice to re-accept if the previously accepted answer is no longer correct. Only the asker can change the accepted answer.

https://meta.stackexchange.com/questions/93969/is-changing-t...

https://meta.stackexchange.com/questions/120568/is-it-possib...

And that is the problem, the asker has generally moved on and will never visit the question again.
> so you cannot just cut and paste them into Python 3.

I think that's not such a bad thing. https://i.imgur.com/Uq6tksu.jpg

But yes, answer rot can be a bit of an annoyance. Often it helps to check the answering date. The official answer to the problem is that one should post a new answer to an old question, but it would be great if one could just drive-by flag things as outdated, needs update or something like that.

Yes, when a language changes itself in a backwards incompatible way then older answers are no longer compatible with the new version.
> A core problem for Stack Overflow is the lack of people willing to curate material.

I think the word "curate" is interesting here, as in, pick for emphasis. I think maybe a mistake that SO makes is to close or remove topics, rather than "deemphasize" them.

Instead of closing things, why not just make poor answers and poor discussions lead to less likelihood of being found in the search engine. (I suppose this might take some coordination with Google et al..)

One thing I don't particularly like about SO is that the questioner must select the "accepted" answer. Quite often this isn't the best one, or there isn't a best one, or there is too much discussion in the comments and not in the answers.

What is missing imho is a meta vote. Individual questions and answers have votes, but I think the "selection of the best answer" should also have a kind of "confidence vote". This might help to make the most interesting questions and answers more visible.

On the other hand maybe it's so "meta" that no one would use it, and a recommendation engine is only as good as the willingness of users to recommend things..

But in any case my overarching point is that there are too many "binary" evaluations of goodness on SO, instead of letting things bubble up to the top when they're interesting. (The difficulty of course being to define "interesting" as useful and accurate, rather than just clickbaity.)

> I think the word "curate" is interesting here, as in, pick for emphasis. I think maybe a mistake that SO makes is to close or remove topics, rather than "deemphasize" them.

Questions should also "age" and become deemphasized with time, especially for more popular topics. SO is getting old, with a lot of out-of-date stuff, and relying on manually closing topic to maintain quality isn't going to help with that. If stuff aged out, it would push the more recent stuff to the top. It would also increase engagement since there'd be space to answer the old questions in new ways without it being futile.

That's not to say the old answers are bad (people have to work on legacy stacks after all), but you should only find that stuff if you want it.

True, it should be possible to flag information as old or obsolete without it being marked "wrong". Maybe similarly, there are cases where the specifics may be out of date but the idea or concepts are nonetheless valid. Perhaps it should be possible to mark answers as "timeless".
A down vote is not marking it wrong. It is indicating that it is not useful (compared to other content?).

As to "timeless" - consider that even such material can expire. The "timeless" information about how to simulate a closure in Java (valid from 1996 to 2014) is no longer timeless. The timeless material applicable for all versions of Python (until Python 3) would make it just as difficult to get rid of as a green checkmark next to the answer that someone found helpful at some point in the past.

If you ever create a meta-moderator user script for Stack Overflow I'd be interested in seeing how well it works. The biggest problem being the volume of material that is coming in on a daily basis.

Curate was very specifically chosen. There is moderation - which is about the selection of material to see and its removal... and then there is curation which focuses on maintaining existing material.

These are only a few instances of places on Stack Overflow where community curation of larger material has worked. The C++ community on Stack Overflow is very careful and protective with https://stackoverflow.com/questions/388242/the-definitive-c-... . But outside of that, most people let questions and answers rot.

Fun and interesting can happen when it doesn't become a distraction for the site as a whole. MathOverflow, with more active curation that is possible with a larger active contributor to overall community ratio is able to handle list questions ( https://mathoverflow.net/questions/tagged/big-list?sort=vote... ) in a way that has often failed to be curated well on Stack Overflow.

The "less likelihood" is a binary thing. Stack Overflow can't say "index this, but don't show that result often" to google. Google does what it wants. The way to remove noise to help with the signal for that vision of good programming knowledge is to, well, remove noise. People up voting fun things makes that signal for good material even harder to find though.

> Curate was very specifically chosen. There is moderation - which is about the selection of material to see and its removal... and then there is curation which focuses on maintaining existing material.

Right, but I guess I'm sort of suggesting that what is needed is something in-between. "Soft" curation, if you want. Just an idea anyways, but it seems to be like it would be more scalable, and less likely to cause controversy e.g. when something gets deleted.

> The "less likelihood" is a binary thing. Stack Overflow can't say "index this, but don't show that result often" to google. Google does what it wants.

But yeah I guess that is the crux of the matter.. not much can be done about other people indexing old/bad stuff.

> A core problem for Stack Overflow is the lack of people willing to curate material. Its not an easy job and is quite thankless.

Are you serious? Whenever a community allows for more-or-less self-appointed authority figures, they ALWAYS emerge, as they are drawn to the perceived power.

Wikipedia, Stack Overflow, etc. They all have their toxic "lawyers". Users who have passed a certain threshold of "points", or else are simply willing to invest the time to squat on a topic, and enjoy abusing the power to delete or revert contributions from others.

To a certain degree it's probably a good thing, as the sites would be overrun by trolls without them. But they also tend to calcify the culture after a few years, and drive down any incentive for new contributors to step in.

StackOverflow's core problem isn't a lack of people willing to edit questions or vote-to-close. It's core problem is that it's been at least 5 years since I last felt like reading or answering any open questions, or even posting any new questions of my own, and I don't think this sentiment is uncommon.

And I'd add to that: people that desperately look for karma.
> Everything doesn't have to be on Stack Overflow. There are many other sites that are better suited to discussions and fun things than the format for that Stack Overflow took as a Q&A site.

But that's the point: if people are leaving the site to get that discussion and fun stuff elsewhere they're not on the Stack Exchange network, and so they're not answering or tagging or voting or flagging.

Only a small fraction of the site is voting in ways that enable moderation and curation or flagging. They don't leave because they can't read fun things - they leave because those actions have no apparent effect on the crap that shows up each day... and then run out of votes for various actions.

Fun material is rarely present on sites intended for technical accuracy. Trying to add jokes to Wikipedia main page content is a similarly fruitless endeavor.

Speaking as someone who used to answer regularly and now doesn't at all, it's because the moderators have gotten insane and taken the fun / interest out of it. So at least in my case, your thesis is incorrect.
> Trying to add jokes to Wikipedia main page content is a similarly fruitless endeavor.

wikipedia is routinely used as a site with a toxic culture that succeeds inspite of, not because of, its community.

Imagine how great Wikipedia would be if it the userbase didn't have a significant proportion of pathological arseholes.

Would it be useful if while reading about a solar eclipse I would find jokes about people pulling their pants down and mooning you?

The content and vision of the founder for that content is what draws people to Wikipedia and stack overflow.

That it takes people who occasionally need to be assholes in order to maintain that vision and ideal is a failing of communication to the out of sync contributors... and those contributors to follow that ideal.

There is nothing stopping anyone from forking the content stack overflow or Wikipedia and providing a different vision. If more people follow that new vision, it wins and the world shifts to a different site (that is what happened with experts exchange).

The main problem with the fork however, is getting the people who contribute good material and don't want to have to read jokes about exposed buttocks on the moon or favorite comic strip amidst documentation for Java.

The problem is that "people who occasionally need to be assholes" overlaps significantly until it is a constant stream of people in asshole mode (who are just having their asshole moment of the day). So it's disingenuous to say that people are "only occasionally" being assholes. There is definitely a unified asshole front, even if it's only being manned by part-timers.
Yes, it would be fun. The problem being that there is no scale to measure humour and taste, and that moon joke doesn't seem good. But I regret that, in the absence of a scale, our culture decides there shouldn't be humour. I'm curious whether it's a USA thing or whether an Asia-originated or Africa-originated Wikipedia and StackOverflow would have resulted in different rules.
I don't know what the grandparent meant by jokes, but the current problem -- the malignant influence of a small number of authoritarian Wikipedia editors -- has nothing to do with cracking down on silliness.
>Its possible to have a site that is a mashup of /r/programming, /r/programmerhumor and /r/learnprogramming (and a few others) all on one site.

The fact that these are three separate subs and not one kinda betrays your point though. How did it get this way, where there are multiple subs? Is it because the mods were overbearing, or because the community decided what it wants and doesn't want?

There are cases when content from one sub seeps through to another, and the blowback isn't nearly as bad as what you see on SO.