Skip to content
This repository has been archived by the owner on Dec 27, 2022. It is now read-only.

Index friends of friends, but don't show in timline unless following #39

Open
RangerMauve opened this issue Jun 13, 2018 · 9 comments
Open

Comments

@RangerMauve
Copy link

Fritter is great, but one of the biggest pain points is that it's hard to discover people to follow or that are following you.

Having centralized repositories for discovering people is probably also a bad idea since it would defeat the purpose of being decentralzied and p2p in the first place.

Indexing everyone that signs up is going to be a big load on performance and is probably not a good way forward either.

I propose that when you "follow" a person, that all of the people they're following get indexed too.

The firends-of-friends shouldn't show up in your timeline, but you should still see posts that mention you and should still see their posts in replies to posts on your timeline.

This will make it easy to organically grow your social network through people that you know or that your friends know.

Thus, if a new user joins fritter, if somebody follows, them, they can start interacting with that person's social network and slowly get integrated into it.

In addition, this will make it possible to start indexing who your followers are since it didn't make sense to do it when it would just be a subset of people you follow.

@fsteff
Copy link

fsteff commented Jun 13, 2018

At least the "who to follow" box already does exactly that (as far as I understood the code right).
With indexing do you mean also downloading their posts?

Probably a search index that is constructed from all posts one knows and from the search indices of all people one follows would be an idea. Theoretically such a search index should converge to completeness.
If the data structure is simple and minimalistic this should not be much overhead.

@RangerMauve
Copy link
Author

"who to follow" is only used for suggestions about people to follow, you can't interact with them unless both of you follow each other. With this, you could have interactions without explicitly following these people if you have a mutual follow who follows both of you.

Regarding indexing, I meant the regular process that WebDB does to store all your follows' posts in IndexedDB. So, basically, it'll just be adding more people into WebDB, but only rendering posts from people you follow, replies to the current post / thread, and show you notifications from people you don't follow yet.

@fsteff
Copy link

fsteff commented Jun 13, 2018

This could be a little performance problem... If one follows 100 people that each follow 100 distinct people this results in 10000 dats to download(unrealistic, worst-case example).
I don't know if beaker supports background workers, but these posts should be lazy-loaded.

@RangerMauve
Copy link
Author

Yeah, if you follow a lot of Dats this will cause problems. Probably realted to the inability to "close" archives.

Though I doubt this will be a problem any time soon, and I'm sure something can be done regarding prioritization of updates that will help address this in the long run.

@pfrazee
Copy link
Member

pfrazee commented Jun 13, 2018

Yeah, this is how we did things in Secure Scuttlebutt. We called it a "FoaF Expansion," and IIRC we did 6 hops out with SSB. It's a valid strategy, but performance has already been somewhat subpar (IMO) so I'm not sure adding more dats would work out that well. If it weren't for performance, I'd say yes.

@pfrazee
Copy link
Member

pfrazee commented Jun 13, 2018

I wouldn't discourage anybody from trying it. I'm personally inclined to try something with the datPeers API first, for notifications between strangers.

@RangerMauve
Copy link
Author

RangerMauve commented Jun 13, 2018

Regarding the dat peers thing, it'll be a bit hard to do with fritter since you're likely to pick up random stargers seeding fritter rather than people you follow or are in your extended social network.

Gonna need to do that iframe trick I mentioned before for your own dat URL so that you could recieve info from people specifically following you.

@fsteff
Copy link

fsteff commented Jun 13, 2018

I will have holidays in two weeks, maybe I´ll play around with this^^

@RangerMauve
Copy link
Author

Maybe it shouldn't even be automatic. Like, you get a prompt to do it when you start following someone or when people you follow start following another person.

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

No branches or pull requests

3 participants