Welcome to Codidact Meta!
Codidact Meta is the meta-discussion site for the Codidact community network and the Codidact software. Whether you have bug reports or feature requests, support questions or rule discussions that touch the whole network – this is the site for you.
Should we modify the default (front) page for anonymous visitors?
A complaint we've heard a lot is that when a community's front page has many questions that are not well-received, it deters visitors. (It also deters some people who are already here, I know.) This is not a good look:
I'm trying not to embarrass any individuals (though you can go to the obvious community and look). These posts are from several different people, not one.
Should we filter the question list for people who are not logged in? If so, should we also filter it for new users (to be defined), so they don't get a shock right after signup?
I don't think we can (with good performance) do something like "no more than one post meeting these criteria"; I think if we're going to filter things out of the logged-out view, we need to be able to evaluate each post on its own.
(I'll make my proposal an answer, so it will be on equal footing with others' proposals.)
I suggest we show questions in the list differently depending on their rating. Good questions are show as they are now. …
3y ago
How about having another tab (next to "Activity", "Age", "Score", "Random") in the category listing called "Positive", t …
3y ago
As a starting point for discussion, I suggest that the logged-out view not show any posts that are closed or have a scor …
3y ago
I agree that such a front page looks bad. I also agree with a comment that trying to simply hide poorly received post …
3y ago
Maybe the ordering of the default tab should be more sophisticated, both for logged-out and logged-in users, new or othe …
3y ago
5 answers
I agree that such a front page looks bad.
I also agree with a comment that trying to simply hide poorly received posts is hiding the problem instead of solving it. It's sweeping the problem under the rug, which is just going to leave us with an odd-looking rug along with the problem we already had.
In my opinion, what we need is some way to improve the average quality of posts (in this case, specifically top-level posts such as questions), which was the motivation behind my proposal for implementing some kind of hobbling of users who consistently post low-quality content.
The downvotes themselves aren't the problem, but rather a symptom. Rather, the problem is that (a) people repeatedly encounter posts, especially questions, that appear to them to be downvote-worthy, and (b) a rather small number of users flood sites with low-quality questions and then also often do not respond to feedback aimed at improving those questions. The net result of those is a front page filled with low-quality, net downvoted, sometimes closed, questions.
I suggest we show questions in the list differently depending on their rating. Good questions are show as they are now. Poorly received questions are shown visually de-emphasized, like smaller text, less detail, and partially grayed out.
Since it takes some time for questions to be rated by votes, new questions would also be shown differently. These might be highlighted somehow, like with a green background. It emphasizes where regular users should spend time. Perhaps the vote totals shouldn't be shown in the list at all for new questions. New questions would be considered rated after some time, or after some minimum number of votes accumulate.
The various parameters should be settable per site, particularly for what qualifies as new. I have looked around several sites, and it appears that a positive score (+1 or more) is a good indicator for whether a question is "good" or not. No automated system is perfect, but this simple criterion works surprisingly well across the sites I have looked at.
For not-logged-in users, we should probably show only the new and good questions.
0 comment threads
How about having another tab (next to "Activity", "Age", "Score", "Random") in the category listing called "Positive", that would be the new default? When listing by that tab, it would show only positively scored posts.
Users could have a new setting, "Default category sort", where they can choose from "Activity", "Age", "Positive" and maybe the others though I don't really see why one would want to have the others by default. This also solves the newly-registered-user shock problem by leaving it to them to choose to see the more poorly rated posts.
As a starting point for discussion, I suggest that the logged-out view not show any posts that are closed or have a score worse than that of +0/-1. We're not trying to pretend that downvotes never happen, just mitigate their aggregate effect.
I'm proposing this for the default view only. Someone who sorts by age or does a search or chooses a tag would see everything. A direct link to a post would still always work. This is about first impressions.
I also suggest that we keep some filtering in place at least temporarily after the visitor creates an account. I have several ideas here, but none of them really baked. We could tie lifting it to an ability, or account age, or tour completion (maybe we add a "show me everything" button to the end of the tour?), or user activity (maybe lift it when you post for the first time), or...?
I would also like us to add durable, user-defined filters, an idea that was illustrated in Matt's design mockup sometime back. I'm planning to make a separate feature request about that. If we had that, then we could give new users a default filter, its presence would be visible, and they could turn it off whenever they want by adjusting the filter.
Maybe the ordering of the default tab should be more sophisticated, both for logged-out and logged-in users, new or otherwise. The "Activity" tab would then not be the default one, and the default one could e.g. be called "Interesting". It would be ordered by an interest score that should take into account both last activity and votes. For logged-in users, questions they personally were involved in (asked it, answered it, commented on it) should get an interest boost (as you are more interested in posts you engaged with).
An example ranking algorithm could be as follows (note that I didn't give it too much thought, so that should not be taken as proposal, but more as a starting point; also note that it would have to be adapted for non-question posts).
For each question, we consider the following numbers:
-
The Wilson score wq of the question itself.
-
The Wilson score wa of the highest scored answer. If there is no answer, wa=0.
-
The number n of other questions that got activity after the last activity of the question.
-
An adjustable positive constant A (which basically determines the weight of the last activity)
-
An “own post” factor o that is 1 for posts the logged-in user was not involved in, and an adjustable value greater than 1 for posts the logged-in user was involved in. For non-logged-in users it is always 1.
The interest score could then be calculated as
score = o × (max(wq, wa) / (n + A)
That way, questions with higher score or higher scored answers would rise, but questions whose activity is longer away would get less weight. The older the activity is, the less the time would matter.
2 comment threads