this post was submitted on 16 Jun 2023
28 points (100.0% liked)

Programming

13373 readers
1 users here now

All things programming and coding related. Subcommunity of Technology.


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 1 year ago
MODERATORS
 

There is a request for a comment on this issue Controversial posts and comments #2515. Do you have any ideas on how best to implement this?

I'd like to see some more people chime in with opinions, but maybe that'll come with a PR. At the very least, it's something that can be moved forward with.

— dcormier

top 6 comments
sorted by: hot top controversial new old
[–] doylio@lemmy.ca 7 points 1 year ago* (last edited 1 year ago) (2 children)

My first thought is to rank items by totalVotes / score. This would prioritize posts that get lots of votes in both directions.

Example:

def getControversialScore(upvotes, downvotes):
  return (upvotes + downvotes) / abs(upvotes - downvotes)

getControversialScore(50, 10) # 1.5
getControversialScore(4, 5) # 9
getControversialScore(6, 30) # 1.44
getControversialScore(30, 28) # 29
[–] Modal@lemmy.sdf.org 3 points 1 year ago* (last edited 1 year ago) (1 children)

It might depend on the definition but I'd probably expect engagement/total to play a bigger factor.

As it is it weights very heavily towards evenness:
A: (11, 10) = 21
B: (99, 90) = 21

They have the same ratio of votes but I'd expect B to be more controversial since more votes are tied up in the controversy / it got more attention. Maybe most people just don't care about A so they didn't bother to vote.

[–] sneakattack@lemmy.ca 5 points 1 year ago

If you square the numerator then the busier comments would score higher.

[–] l3mming@lemmy.fmhy.ml 2 points 1 year ago* (last edited 1 year ago)

I like this. Super clean and simple.

That said, I suspect Reddit's 'controversial' sorting might work a little differently, as I often used it to see what the crazy people were saying.

I haven't played with the numbers, but I'm not sure that your proposal would push the crazies to the top - just the moderate crazies.

[–] ConsciousCode@beehaw.org 1 points 1 year ago* (last edited 1 year ago) (1 children)

If I was God Emperor for any sort of content algorithm, I'd want to try a decentralized "simulated annealing" of feature vectors based on up/down votes, subscriptions, etc. That lets you create linear combinations (eg on Wikipedia the vector for King - Man might be close to Royalty) and share them around on different platforms. This makes The Algorithm^TM^ a lot more transparent and user-driven, since you can feasibly program on a per-user basis all sorts of policies for how their own preference vector updates, or they could have layers of linearly combined vectors for base style, mood, binging, etc.

What I like about this is it doesn't presume some kind of inherent value - it implies a philosophy that everything is equally valid/valuable to someone, and people just have different preferences for what they prefer. If it's something utterly vile that everyone downvotes into oblivion, that'll naturally sink into the recesses of feature-space that occupy the opposite of whatever "all humans" value. It's also dead simple to implement, you just need an update policy (N-dimensional modular incrementing?) and a way to search a database by a given metric (cosine distance is the new hotness with AI, but back when I first thought of this I used hamming distance).

[–] spaduf@lemmy.blahaj.zone 1 points 1 year ago* (last edited 1 year ago)

I think this is brilliant but not what they're looking for. You should absolutely spread this idea around if you're not willing to get a group together to implement it.

In my dreams I’d also like to see separate drop downs for timespan and criteria. They could even have options referring to different time dropoff curves. Then the traditional past day, past week, etc would effectively be flat.

EDIT: I implore you to make the pitch though. I am desperately waiting for someone to make an honest attempt at a nonpredatory content algorithm.

load more comments
view more: next ›