MaskingTechnology / comify

Comic based social network built with Jitar
GNU Affero General Public License v3.0
3 stars 1 forks source link

Popularity #165

Open petermasking opened 5 months ago

petermasking commented 5 months ago

We need to design a popularity system that we can use for the explore features.

basmasking commented 4 months ago

The first and simple implementation could be very simple and show the posts ordered by the most likes on the post. I think for now that is good enough.

petermasking commented 4 months ago

Should we also take the number of reactions into account to calculate the score based on all engagements?

For the creator popularity I think we can use the average comic post popularity score and the number of followers for the calculation.

basmasking commented 4 months ago

Should we also take the number of reactions into account to calculate the score based on all engagements?

We could, but then I suggest to rate a reaction higher than a like. People tend to like easier then that they leave a reaction.

For the creator popularity I think we can use the average comic post popularity score and the number of followers for the calculation.

I like the idea of incorporating the number of followers, but I don't know if this is going to work the way we want.

Let's look at the following scenario: creator A creates a lot of good posts. Let's say A has 100 posts with an average of 300 likes, and has 1000 followers. The popularity score for A would be 0.3 (300 / 1000). Now that the creator is ranked number 1 in the explore creator ranking, A gains 501 new followers before a new post has been created. The popularity score now drops to 0.1998 (300 / 1501).

Creator B has 1 post with of 2 stars, and has 10 followers. The popularity for B would be 0.2 (2 / 10). Now that A has gained a lot of followers, B is now the most popular creator.

What I like about this idea is that creators with a small follower base can become popular quickly if they post some good content. Having a lot of people simply clicking on the post doesn't make you popular.

What I don't like is that if you have gone viral with a single post and don't do anything anymore, you can stay popular for a long time. Especially if people start to unfollow you, because then the number of followers decreases, making you even more popular.

Should we also keep track of the activity of the creator then?

petermasking commented 4 months ago

I agree with your statements, but I don't think it's an issue for the first version. Since we're primary aiming at events, everything is short lived. Meaning that the factor time doesn't come to play in this context.

On Sun, May 5, 2024, 08:27 Bas Meeuwissen @.***> wrote:

Should we also take the number of reactions into account to calculate the score based on all engagements?

We could, but then I suggest to rate a reaction higher than a like. People tend to like easier then that they leave a reaction.

For the creator popularity I think we can use the average comic post popularity score and the number of followers for the calculation.

I like the idea of incorporating the number of followers, but I don't know if this is going to work the way we want.

Let's look at the following scenario: creator A creates a lot of good posts. Let's say A has 100 posts with an average of 300 likes, and has 1000 followers. The popularity score for A would be 0.3 (300 / 1000). Now that the creator is ranked number 1 in the explore creator ranking, A gains 501 new followers before a new post has been created. The popularity score now drops to 0.1998 (300 / 1501).

Creator B has 1 post with of 2 stars, and has 10 followers. The popularity for B would be 0.2 (2 / 10). Now that A has gained a lot of followers, B is now the most popular creator.

What I like about this idea is that creators with a small follower base can become popular quickly if they post some good content. Having a lot of people simply clicking on the post doesn't make you popular.

What I don't like is that if you have gone viral with a single post and don't do anything anymore, you can stay popular for a long time. Especially if people start to unfollow you, because then the number of followers decreases, making you even more popular.

Should we also keep track of the activity of the creator then?

— Reply to this email directly, view it on GitHub https://github.com/MaskingTechnology/comify/issues/165#issuecomment-2094650167, or unsubscribe https://github.com/notifications/unsubscribe-auth/AZZFNCN45Z3GE7VDKBTC7EDZAXGOBAVCNFSM6AAAAABFO3WHFSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAOJUGY2TAMJWG4 . You are receiving this because you authored the thread.Message ID: @.***>

basmasking commented 4 months ago

I started with this issue and ran into a challenge. We need to resolve this before this story can be continued.

The reaction count, rating count, followers and following are all stored on the main domain objects itself (creator, post, reaction). We want to change this and introduce an engagement domain object. This separate model should help us in getting the numbers for popularity etc. easier.

petermasking commented 4 months ago

We've been philosophizing and playing around to come to the following model (that looks like a mystery box if you weren't there, but it's for our own reference).

Popularity

This helped us with making the decision to go for an event driven solution. The only problem is that Jitar doesn't support this yet... So we have to pick that up first before we can continue this issue. On hold for now.