Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve homepage’s display of recently popular submissions #1423

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

charmander
Copy link
Contributor

  • Remove view count from recently-popular score calculation

    If two submissions have the same number of favorites, is the more viewed one more popular? If a submission accumulates views by virtue of being in Recently Popular without also accumulating favorites, is that a positive signal? I don’t think so.

    Views are a very flawed metric anyway, especially as currently implemented. (Also, with Weasyl’s current low traffic level, an advantage of 25 views can outweigh a 40% advantage in favorites near the top of Recently Popular.)

    Migration runs before deployment.

  • Switch latest posts with recently popular on home page

    Recently Popular tends to be more appealing(!) and less risky viewing. Maybe in the future, we can exclude people the viewing user already follows, to make it still useful for discovering new artists.

    This is also good for cache hit rates.

If two submissions have the same number of favorites, is the more viewed one more popular? If a submission accumulates views by virtue of being in Recently Popular without also accumulating favorites, is that a positive signal? I don’t think so.

Views are a very flawed metric anyway, especially as currently implemented. (Also, with Weasyl’s current low traffic level, an advantage of 25 views can outweigh a 40% advantage in favorites near the top of Recently Popular.)

Migration runs before deployment.
Recently Popular tends to be more appealing(!) and less risky viewing. Maybe in the future, we can exclude people the viewing user already follows, to make it still useful for discovering new artists.

This is also good for cache hit rates.
Copy link

codecov bot commented Aug 22, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 61.13%. Comparing base (978aeec) to head (c05ded7).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1423   +/-   ##
=======================================
  Coverage   61.13%   61.13%           
=======================================
  Files          95       95           
  Lines        9175     9175           
  Branches     1656     1656           
=======================================
  Hits         5609     5609           
  Misses       3115     3115           
  Partials      451      451           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@charmander charmander removed the request for review from kfkitsune August 27, 2024 23:37
@charmander charmander marked this pull request as draft August 27, 2024 23:38
@huntertur
Copy link
Contributor

  • Looking at your proposal, I agree with you that dropping views makes sense. If I am understanding the view counting logic correctly (weasyl.define.common_view_content), IP addresses are used to make views unique for logged-out accounts. It's a lot easier to get a ton of IP addresses to hit a submission for popularity manipulation purposes than it is to create that many accounts, verify them, and just favorite a single submission as a bot. (Also it looks like there is an anti-botting measure implemented in turnstile? If so, that would almost completely seal the door against someone trying to manipulate the Recently Popular list.)
  • I really like the idea to switch Recently Popular and latest posts so that the former is on top. I think that makes a lot of sense!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants