A sorting algorithm seems out of scope for Jerboa, which is just a lightweight client. The current algorithms, such as they are, are handled by Lemmy itself, and I think it makes more sense to keep it that way so that features aren't unique to this one app. Plus that way you aren't downloading the entire list of content and sorting it locally, which seems somewhat expensive versus just sorting it on the server where it already is.
Jerboa
Jerboa is a native-android client for Lemmy, built using the native android framework, Jetpack Compose.
Warning: You can submit issues, but between Lemmy and lemmy-ui, I probably won't have too much time to work on them. Learn jetpack compose like I did if you want to help make this app better.
Built With
Features
- Open source, AGPL License.
Installation / Releases
Support / Donate
Jerboa is made by Lemmy's developers, and is free, open-source software, meaning no advertising, monetizing, or venture capital, ever. Your donations directly support full-time development of the project.
Crypto
- bitcoin:
1Hefs7miXS5ff5Ck5xvmjKjXf5242KzRtK
- ethereum:
0x400c96c96acbC6E7B3B43B1dc1BB446540a88A01
- monero:
41taVyY6e1xApqKyMVDRVxJ76sPkfZhALLTjRvVKpaAh2pBd4wv9RgYj1tSPrx8wc6iE1uWUfjtQdTmTy2FGMeChGVKPQuV
- cardano:
addr1q858t89l2ym6xmrugjs0af9cslfwvnvsh2xxp6x4dcez7pf5tushkp4wl7zxfhm2djp6gq60dk4cmc7seaza5p3slx0sakjutm
Contact
Well, the user's preference for sorting algorithm have to be communicated somehow from the jerboa client to the Lemmy server.
But from a user interface point of view, if the sorting is happening in the server or the client doesn't make they much difference.
However, from a user to control point of view, I think it should be always possible for the client to do its own sorting.
There is no danger of losing chronological ordering , if the chronological sort is happening inside the user's device.
Also there are privacy implications, I might want to train my algorithm to sort content recommendation based on what I like. That doesn't mean I want to disclose this information to the server. In particular if I'm not on an instance that I trust not to exploit this information to leverage advertising against me.
Also, content discovery does not work well if users don't share their preferences to each other. But the server doesn't need to know this information. User might exchange this information ins peer to peer manner and keep the server out of the loop.
This would disempower the instance owners from the ability to tip the scales of content curation, since they don't know what posts users like and client request unbiased sequential listing of content which the client itself will sort later.
Frankly, I prefer not to have content similar to what I upvote. I'm not here to stay in my own echo chamber, but to see different opinions, new things.
Then use chronological ordering if you want random new things.
In fact, if what you really want is "stuff not like I've seen before" then dislike what you've seen and that will train the algorithm to show you things not you've seen.
One way or the other, there will be an algorithm that sorts the content your seeing because your can't read millions of posts and comments per second, your device has to decide what to show.
You choices are, you control the algorithm in your computer or someone else controls the algorithm while you use someone else's computer (that's the cloud).
Relay for Reddit did something I really loved. They had a hide all read or seen posts button that simply removed them from your current list. Didn't affect visibility if you refreshed the list, posts would reappear.
Would this work on mobile as well? Does it require clicking into a thread to consider it viewed?
It was literally the main reason I used Relay over any other app.
Jerboa should take into account user’s voting pattern and recommend current based on what the user likes.
I would absolutely not want this. I can already curate my feed exactly how I want it with subscriptions, but when I click on All I want it to be the exact same view that everyone else gets.
On the topic of hiding seen posts, yes I think this is a pretty common suggestion/complaint of Lemmy at the moment. Part of it is that there is currently barely a fraction of activity vs. Reddit or other websites. I am curious to see how the feed changes as more people contribute.
Also related, the staleness of 'Hot' and 'Active' is actually a bug and instances can temporary fix it by restarting.
You did not fully read my post. I explicitly mention a chronological view.
Content sorting algorithm are inevitable. How will you personally sort 5 million post per day ?
What I'm saying is they must be under individual user control. And taking part in content sorting is a duty of every Lemmy user.
I did read your entire post. I was referring to the general idea of an algoritm based on my voting patterns as you detail here:
“My user likes X,Y,Z, after consulting public voting patterns, we can see that most users who like X,Y,Z often also like A,B,C and dislike I,J,K”
This is how Netflix, YouTube and other algorithms find stuff you like.
I have personally never been satisfied with any popular algoritm, Netflix and Youtube are specifically awful at suggestion stuff I like.
How will you personally sort 5 million post per day ?
The same way it's handled right now, a 'hot' or 'active' sort which is objectively based on user activity.
Maybe the sorting algorithms on other websites work for you and that's okay, I was just voicing my opinion.
I don't love the idea of a neutral vote, because it would necessitate you voting on each and every post for them to stop showing up on your feed, which is actually how the "hide read posts" seems to work right now, but without the neutral vote.
And fuck it, it may be a hot take here, but I don't dislike the idea of suggested posts showing up on your feed. It's a great way to find new communities you wouldn't have found otherwise, even if Reddit was a bit... heavy-handed in its approach
But yeah other than that your idea for showing the user the actual weights used for their suggestions algorithm does sound interesting, but I'm not sure how plausible it is (assuming many of these algorithms use machine learning and the weights are basically meaningless to humans)
Yes, neutral vote is functionally the same as "hide this" but as an explicit vote that means "I have no feeling about this one way or the other". I think a neutral vote gives useful information for content discovery. Imagine a content with 500 positive vote 25 negative vote and 25000 neutral vote.
The most important aspect of content discovery is the relation of your vote relative to all your other vote. This is how the algorithm can find things you might like based on what other things you like.
The current algorithms which lack a neutral vote, have no concept of mediocrity. It's good or bad, they don't understand "this is ok but meh"
Lemmy already supports showing/not showing seen posts.
All we need is a quick way to toggle it on or off.
I'm here to get away from ALL interest based algorithms, I specifically want to live in a world where it isn't considered normal to outsource your sense of taste to software, because the better they work, the more your development as a person stagnates.
Change comes from seeing content outside of your preferences, to have your views and interests challenged. If a person is only ever shown stuff they already want to see, they stop finding new things and growing.
The whole point of the community>subcommunity format and the voting system is the ability to enable HUMAN self-curation. Why the heck would anyone attracted to lemmy want what you are suggesting? Reddit was already lambasted for introducing their recommended posts into the feed, which was yet another reason I hated their official app and new web interface.
Social media should be a real reflection of humanity, not an AI enforced echo chamber to comfort each person in their unique ways, driving individuals and groups apart, instead of together.
Any algorithms involved should be the same for all, not personalized. The actual content can be customized by what you subscribe to or block. We already have the tools we need to make social media what it should be.
Interest based machine customization is a tool of manipulation and profit. Not equality and freedom of thought. It's most dangerous aspect, that it can skew reality for the whole of the human race, as a it is a filter through which we view ourselves.
I didn't realize this! Do you know if that setting can be changed in Jerboa?
hamburger>settings>username's settings>show read posts
Amazing, thank you!
I would greatly appreciate any kind of feature to handle read posts, even if it's entirely manual (for now).
That said, I don't have any strong opinions on how this should be implemented. I just wanted to say that the very fact we can have this kind of conversation out in the open is so exciting. Maybe in the very early days of Reddit or Twitter that kind of user feedback was appreciated, but the last decade of monolithic tech giants has been so depressing.
The last week or two has honestly been my most refreshing and invigorating time on the web that I can remember since I got my first Gmail account back when it first went open beta.
I concur, this feels like early Reddit. I really care that it don't suck. Tired of getting evicted every 10 years by techbro dorks looking to make a quick buck