this post was submitted on 14 Jun 2023
280 points (99.0% liked)

Programming

3347 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 2 years ago
MODERATORS
 

Hello all,

Wanted to open a discussion on Lemmy's post sorting options right now. I don't have any experience with implementing this type of thing but right now the algorithm appears... Off? For example, 'Active' gives me a lot of posts over a day old but 'Hot' may as well be 'New' i.e. more recent posts with little engagement.

I don't know if it's due to Lemmy still picking up steam or a fundamental flaw with the algorithm. Like I said, I'm really curious to hear the opinions of those more knowledgeable.

top 50 comments
sorted by: hot top controversial new old
[–] kurosawaa 91 points 1 year ago* (last edited 1 year ago) (4 children)

I think having "Active" as default is unfortunate too, if a new user sees the top post was from two days ago they might assume the whole platform is inactive, since they can't see that a new comment was added just seconds ago from that page view. Having "Hot" as the default would probably be better since those are usually newer posts with at least a few comments.

[–] [email protected] 44 points 1 year ago (1 children)

None of the megaguides I've seen actually show how to use the mobile apps/sites. I've been told what the Fediverse is and how it works enough times to build the backend myself, but I have no clue how to navigate.

load more comments (1 replies)
[–] [email protected] 14 points 1 year ago

I noticed one of the Lemmy instances recommending everyone change their settings to use 'hot' by default in their site rules sidebar. Makes sense, the many instances look a lot more lively that way.

[–] RQG 12 points 1 year ago (1 children)

That might be true. I'm glad you can set your own defaults but having the starting fknfkg to be a generally useful one is a good idea. Im curious if people find Local to be a good default? Subscribed doesn't make sense I guess because you start out with no subscriptions. But maybe all is nice to find new communities and explore?

[–] kurosawaa 10 points 1 year ago

Maybe instance owners could have a recommended subscriptions option that new users could default to. That way new users can experience seeing content on other instances right away. Different instances with different standards could customize their new user experience.

load more comments (1 replies)
[–] [email protected] 68 points 1 year ago (3 children)

I don't know a lot about Lemmy's implementation but a difficult thing to deal with is how do you "rank" a post? Like you have a small community of a few active people, but there's federation with a massive community with lots of users - which posts are "better"?

Worse still, there's an inherent lag/delay with the federated posts, a post that was very active in the last hour might have only been federated to the server in the last 5mins - so what do you do, do you bubble up all those posts or ignore it because there's more recent and relevant things?

The kicker is that these decision points aren't instant either, any system that's doing this kind of ranking will have an algorithm as you describe, but that algorithm will take time to process all the data, while the data is coming in batches as each server federates with each other. It's a difficult problem to solve.

[–] [email protected] 41 points 1 year ago* (last edited 1 year ago) (1 children)
[–] [email protected] 37 points 1 year ago (1 children)

I'm aware, what I am getting at is that there's multiple "Right" answers to solving what is essentially a very difficult problem.

[–] netwren 9 points 1 year ago

I see this as a really clear win over the likes of Reddit and Facebook of making the algorithm more understandable to users so they see WHY they're being fed the information they're getting.

[–] danc4498 9 points 1 year ago (1 children)

Also, it has to be designed in a way that limits federated servers from gaming the system.

[–] Master 4 points 1 year ago

I think they should implement a "best" category and allow each server to curate which communities it adds to it's "best" category and just let them game it all they want. Just dont replace any of the current options with it. Then if you select "best" and "all" it would give you content that every non black listed server from your home things is best.

load more comments (1 replies)
[–] an_ayylien 45 points 1 year ago

My best guess from the way it looks is that Active is like a forum or imageboard sort, where new comments "bump" old threads to the top. Hot appears to be more like "rising", new posts that are interacted with more than others. Both probably make more sense with greater volume, but neither seem perfect for the structure of the site. I would also think "tuning the algorithms" is probably in the "when we get around to it" bucket for most of the people who would be handling that.

[–] [email protected] 36 points 1 year ago (2 children)

Yeah, I'm feeling a bit lost here too. I've been using mostly 'hot' (found this post using it), but there's also the issue with dynamic posts, that suddenly there's a cascade of posts being loaded and you lose where you were on the feed.

[–] TragicNotCute 12 points 1 year ago

Yes! This is mega annoying and ruins my preferred way to use Lemmy.

[–] Swuden 23 points 1 year ago (1 children)

Ranking is hard. My biggest gripe with this however, is that the front page doesn't seem to cache my filter/sorting options between page reloads. I've resorted to replacing the anchor href on the logo with my own preferred pre-filtered search result href, via JS injection.

[–] [email protected] 27 points 1 year ago (1 children)

I think you can set default sort and subbed/local/all in settings

[–] Swuden 7 points 1 year ago

Oh you're absolutely right! Thank you! I swear I checked for it a couple of days ago 😅

[–] [email protected] 22 points 1 year ago (5 children)

I'm on jerboa, and like others are saying "active" is pretty ass and 'hot' is okay. My main actual complaint is the inability to sort comments! Please God, I'm tired of seeing the rare hateful message with 1/2 up votes on top, and then a more normal good comment with 50 up votes beneath it. Going to be a real problem for onboarding people and optics.

[–] rockstarashes 7 points 1 year ago

Yup, this is my biggest issue with Jerboa as well. Using the browser, it has a comment sort but it also has some scrolling bug that was making me unable to read headlines or click on posts haha.

[–] davidog23 6 points 1 year ago

Seems like there is an active PR for this

load more comments (3 replies)
[–] [email protected] 14 points 1 year ago (1 children)

I'm a bit baffled - I love the active sort so far. Sure, it's different from reddit, but in a good way. It means the exact timing of a post, to line up perfectly with the peak active hours of U.S. users, or similar, isn't critical anymore, because a post can go relatively ignored for a day or two and then get picked up and filled with comments and discussion.

It gives people more time to get around to reading a long linked article or watching a linked long video first, before commenting, too, while still leaving them able to participate in discussion after.

It means that people who comment "late" still get replies. Commenting even slightly late on reddit and not getting any replies or votes felt awful, like you were talking to a wall. And the people who sorted by new and commented first tended to stick to the top of threads because they accumulated more upvotes by sheer force of time.

I hope we can avoid re-creating the constant, over-hurried content-churn of reddit, and keep this more patient feel.

That said, I'll concede that active search is best for discussion posts, like on Chat or Gaming (e.g. threads that ask people to share favorite xyz games and so on), or those based around longread articles, and not necessarily as good for Breaking News. But even then... I think it does us good to allow time to discuss news posts, too, and active search does that.

Tldr I use active search as default for everything and I absolutely love it like this, please don't get rid of it just to make the site more like reddit.

load more comments (1 replies)
[–] mo_ztt 11 points 1 year ago (1 children)

So I think it's just growing pains of the software still being at a pretty early stage; I agree it's not ideal right now but I'm fairly confident it'll get worked out. That said, there's one option that I'd really like that may not be in the works: I'd like the ability for posts I've seen to get bumped way down in the ranks, so when I refresh the front page it's mostly new stuff. Mostly the reason people go next -> next -> next is from wanting more stuff; it'd be nice if we could cut out the middleman and just show them new stuff.

[–] New_account 4 points 1 year ago

The "Top Day" sorting option does this, but posts fall off a cliff rather than falling off gradually. My understanding is that they'll remain on the page from hour 0 to hour 23, but then completely disappear starting in hour 24.

Instead of that, it would be ideal to implement a mathematical formula that pushes pages higher into the rankings with every upvote, comment, or view it gets, but pushes posts lower in the rankings with every additional hour passed. You have to tweak the specific parameters of that formula to get it right, but it essentially forces posts off the page after enough time has passed, while introducing new posts to replace the old. Unlike the "Top Day" sort where things are a step function, the idea with this is to make it gradual so that a popular post falls from #1 overall down to #2, then #3, etc. over the course of a day.

[–] rjc 10 points 1 year ago (1 children)

Hopefully the algorithm will improve over time - compared to the site which shall not be mentioned, I find that Hot or Active tend to show the same articles for days (despite there being plenty of newer content). Top Day works well the first time I log in for the day, but then that gets stale too. On the front page I feel like I need more like a "Top Hour" option ... so I can see what is new without the "drinking from the fire hose" that is "new".

These are the early days, Im not unhappy with where we are, I just hope this remains a work in progress and improves.

[–] New_account 4 points 1 year ago

Agreed. Something like Top for the last 4 hours would be super easy to implement because Top for the last day already exists (just change 24 hours to 4 hours in the code that fetches comments). However, for those that are used to checking the site multiple times in a day, you don't want to ge served up the same content every time you check. Top for the past 4 hours would seemingly be a decent balance between giving posts that have some type of traction while not giving posts that are stale.

[–] jukibom 10 points 1 year ago

Biggest problem I think right now is how it auto-appends new posts to the top - browsing /new/ is a simply impossible task. Maybe just tell me there are new posts to fetch and let me refresh when I'm ready? Right now I can't read stuff before it yeets off the bottom of the page

[–] TheAmorphous 10 points 1 year ago (2 children)

Can someone explain why if I choose All/Hot the first page will look "normal" for a bit, but then it starts updating/scrolling constantly? Like I can't keep my place, new items are continuously being added and I can't even finish reading a headline. I don't see any settings to prevent that. What am I doing wrong?

load more comments (2 replies)
[–] [email protected] 9 points 1 year ago (2 children)

I always sort by "New Comments". "Active" just gives me the same posts over and over again.

[–] New_account 3 points 1 year ago (1 children)

I think it's because a few of the posts appear at the top for everyone, so people keep adding comments to those, which "bumps" them to the top of the feed like it used to work with forums back in their heyday 15-20 years ago.

[–] ewe 5 points 1 year ago

And that made sense for Lemmy when it was a lot lower volume than it is now. But Lemmy has grown a bit in the last few days and there's more content to deal with now.

load more comments (1 replies)
[–] [email protected] 9 points 1 year ago (1 children)

I'd really like to see a "Unread" filter, that shows posts that has not already been up/downvoted or clicked

[–] empyrean 9 points 1 year ago (2 children)

It is already an option, go to profile settings and unmark "Show Read Posts".

[–] [email protected] 4 points 1 year ago (1 children)

But when is a post marked as read? Do I have to click on everything or vote for everything?

[–] empyrean 3 points 1 year ago

You need to open the post to mark it as read. Expanding picture does not count. There are discussion on improving this https://github.com/LemmyNet/lemmy-ui/issues/384

[–] [email protected] 3 points 1 year ago

omg thank you! I never noticed it!

[–] ericjmorey 8 points 1 year ago (1 children)

I wish I could change the default comment sorting

[–] [email protected] 4 points 1 year ago (1 children)

Also defaulting to "All" communities would be nice :)

[–] ericjmorey 4 points 1 year ago

That's configurable. I've switched mine to Subscribed. I rarely ever look at All.

[–] ericjmorey 7 points 1 year ago (1 children)
load more comments (1 replies)
[–] RobotDeathSquad 6 points 1 year ago (3 children)

I'm not sure about the algos, but I'd kill if it would at least remember my choices between page refreshes.

load more comments (3 replies)
[–] FreddyNO 4 points 1 year ago

Personally I usually sort by "hot", works good for /all, but mixed results on subscribed

[–] danc4498 4 points 1 year ago (2 children)

Reddit's top hourly was one of my favorite ways to browse. They need to implement that here. Just show me the top posts from the last hour.

load more comments (2 replies)
[–] Comrat 4 points 1 year ago (1 children)

A lot of the discussion around sorting specifics makes me wonder if a plugin-like system for user created sorting algorithms would be useful.

It could allow you to curate your own feed in a way, based on age, activity, filters, basically any post metadata. The algorithms could be shared or maybe even federated through lemmy itself. I have a suspicion this would be closer to "neat" than "worth it" though. This is really just a brain dump of a random idea.

load more comments (1 replies)
[–] finder585 3 points 1 year ago

My biggest issue is that posts stream in regardless of the sorting option you have picked. So, even if I am sorting by 'hot' posts I'll get a stream of posts that where made less than a minute ago.

[–] [email protected] 3 points 1 year ago

I use "Top Day" and seem to be quite happy with it.

load more comments
view more: next ›