mastodon / mastodon

Your self-hosted, globally interconnected microblogging community
https://joinmastodon.org
GNU Affero General Public License v3.0
46.35k stars 6.8k forks source link

[FEATURE] Follow public local timelines from other instances #6942

Open ghost opened 6 years ago

ghost commented 6 years ago

Just what the title says.

Maybe implemented like the "show a toot from another instance"-feature: Copying the full URL of the instance into the search bar opens the local timeline of this other instance.

Which makes following interests easier, since a lot of instances are specialised on some specific interests, but a person does'nt follow only one. So to mix things a lot more up.

Cassolotl commented 6 years ago

Do you mean like, to make the local timeline of another instance a pin-able column? (This sounds awesome.)

ghost commented 6 years ago

Do you mean like, to make the local timeline of another instance a pin-able column? (This sounds awesome.)

Yes, that's exactly what I think of! Only shorter and to the point, thanks.

Cassolotl commented 6 years ago

Browse Other Instances' Public Timeline #1053 was closed without being implemented a few hours ago. That discussion was super messy and started a long time ago, before we had public timelines on /about pages, which partially solved the OP's needs.

This new issue is more specific and I think it should stay open.

deutrino commented 6 years ago

Duplicate of #979?

Cassolotl commented 6 years ago

Certainly could be included in #979! ("Configurable federated timelines aside from "local" and "federated"")

it would be more clever to allow users to configure additional timelines by specifying the servers they want to see toots from. The server would no longer need a whitelist (although they might have the possibility to configure a default curated whitelist timeline), but could show the whole federated timeline when the users wishes to do so.

nightpool commented 6 years ago

If we're going to continue this discussion here, which is fine, I'll repost my earlier comment, which I think is still releavent:

There are third-party website that will allow you to do this, but my opinion is that if you want to view the instance timeline of another instance as part of your day-to-day browsing of the service, you should sign up for an account on it. Otherwise you have this weird culture where a small number of users are "performing" for a much larger audience, and there's no way for the users viewing that timeline to "join in", and post things to that timeline. this leads to very awkward possible community issues.

antoniotorresm commented 6 years ago

@nightpool I agree with you, but I don't think having people to have multiple accounts is enough user friendly. Maybe some kind of subscription system? There are a lot of thematic instances and it's natural to want to participate in various ones without having a bunch of accounts.

Cassolotl commented 6 years ago

There are a lot of thematic instances and it's natural to want to participate in various ones without having a bunch of accounts.

Groups (#139) would probably resolve that issue - toots about a subject would end up in your timeline whether you follow the person posting or not.

deutrino commented 6 years ago

I think it would be cool to follow scholar.social but I'm not a scholar and don't want or need an account there.

Other people might want to follow the timeline from the recently created cars/racing instance.

Etc.

SatanicMechanic commented 5 years ago

I made a small donation on bountysource for this.

sprite-1 commented 5 years ago

Having this feature would make following along multiple instances way easier.

kasinjsh commented 5 years ago

Having this feature would make following along multiple instances way easier.

Otherwise it is hard to stay for example up to date whit FOSS news and discussions living on My own instance.

sprite-1 commented 5 years ago

It would also incentivize joining of smaller instances. People who may be looking for more activity will of course join larger instances making said instance even bigger. If this gets implemented, the instance they join would stop mattering as much and they can choose more freely.

sparr commented 5 years ago

This issue would make more sense without "follow" in the title. "Follow" already has a specific meaning on Mastodon. Following a whole instance would be... interesting, but is not at all what this discussion is about.

rickisen commented 5 years ago

Could this be implemented by simply making the instance a toot was made on a searchable field, similair to how hastags work in the search interface?

So if you want to see how the timeline in "linuxrocks.online" looks like you'd type "@linuxrocks.online" in the search, and the latest toots made there would show up.

aranud87 commented 5 years ago

+1, it is same to Relay :

instance

Relay add many many instances i don't want, it would be easier to add instances directly i want to show on wall for all users on my local instance.

Cassolotl commented 5 years ago

@aranud87 You might be interested in Instance-wide subscription #8082!

donmasto commented 4 years ago

"There are third-party website that will allow you to do this, but my opinion is that if you want to view the instance timeline of another instance as part of your day-to-day browsing of the service, you should sign up for an account on it."

This shows why Mastodon could fail. We need a setup where we may follow all human beings and orhganizations on earth. Why would you limit who you can follow? Imagine all the email accounts you would need ... sounds like a comunistic, bureaucratic nightmare. This is why capitalism is better than socialism

Cassolotl commented 4 years ago

Imagine all the email accounts you would need

It's okay, you can use the same email address on all instances because they're totally separate websites. :)

Not needing to sign up to an instance in order to see and interact with its local timeline seems good though anyway.

Virtheon commented 4 years ago

Uh, since no one has mentioned this. If this feature was implemented, would you be able to post to remote instances?

sprite-1 commented 4 years ago

Uh, since no one has mentioned this. If this feature was implemented, would you be able to post to remote instances?

I would hope not, that's going to be ripe for abuse

trwnh commented 4 years ago

Uh, since no one has mentioned this. If this feature was implemented, would you be able to post to remote instances?

I would hope not, that's going to be ripe for abuse

You don't post "to" an instance. You post to a collection of actors, like your followers, or to Public. You would need a separate account/profile on that instance, if you wanted your post to show up in that "local" public timeline.

sprite-1 commented 4 years ago

You would need a separate account/profile on that instance

I believe that's what the other guy was asking. If it would be possible to post to have your pots show up in a remote instance's timeline which is why I said it would be ripe for abuse

Virtheon commented 4 years ago

You would need a separate account/profile on that instance

I believe that's what the other guy was asking. If it would be possible to post to have your pots show up in a remote instance's timeline which is why I said it would be ripe for abuse

Yeah, that's what I meant. Also, the way I think of that problem is admins having the power to block users or instances from being able to post on their timeline. Thoughts?

sprite-1 commented 4 years ago

I see that being akin to someone being able to send an email on behalf of your own server without them needing to have an account with you. I see the use-case but I personally wouldn't want it

Virtheon commented 4 years ago

That's true. I don't know, though. I see the whole thing - plus decentralysed identities - as a way to abolish the idea of instances as different websites and more as community spaces within the larger Mastodon platform. Similar to spaces and communities in other social media. For example, you don't have to create new accounts to see new subreddits or Facebook groups or to post to them. You just create one account and you can go wherever you want. I'd like to see that transition for Mastodon and hopefully the Fediverse as a whole eventually. After all, what's the point of a decentralysed platform if you're bound by whatever community you chose?

Virtheon commented 4 years ago

Hypothetically, instances could always disable such a feature. So for example, someone running an instance on their house wouldn't need to worry about people abusing their server, but at the same time, they would not be bound by it and could join multiple communities in the comfort of their customisable private space.

sprite-1 commented 4 years ago

So you're looking for a more outward than an inward approach to things. Also I'd like to add more to my "abuse" perspective. A group of people can potentially harass both instances by making a bunch of account on one instance and spamming the other, one of the common knee-jerk reactions would be to block the whole instance that hosts multiple spam accounts which will be a disservice to the other users of said instance as instead of only not being able to participate on the remote instance's timeline, now they're cut off completely. Not to mention each instance has their own policies of what they are comfortable and not comfortable with allowing people to post (nudity, gore, etc). Rules which are only really properly shown when signing up.

The way I see it is that, currently, Mastodon takes the more reserved approach wherein you can follow anyone to tailor your content for your personal timeline but you can't affect others'.

marrus-sh commented 4 years ago

RE: “Participating on instances where you do not have an account”: There are people working on this problem but those people are not the Mastodon development team and those technologies are probably a few years out.

So, uh, be patient on that one.

RE: “Pinnable remote-local timelines”: The major thoughts I have are:

  1. Instances do not receive every post from every timeline by default. There is presently no good way for an instance to just “subscribe to all the public posts of another instance”. With the new instance Actors (#11321), this could hypothetically be achieved (having one instance Actor subscribe to another), but #8082 is definitely a prerequisite if you don't want these timelines to just be “public posts that happen to have already appeared on our Federated Timeline for other reasons”.

    One of the reasons why “viewing the public timeline page visible on the instanceʼs URL” is currently required is because it is the most complete view of the public timeline that exists. Anything federated loses some information. This is of course less convenient, but having deterrents for this sort of thing might actually be a good thing, because…

  2. I agree with @nightpool that this might lead to weird community behaviours, specifically from the direction of “context collapse”. For people on small (especially single-user) instances, there is a pretty good idea of who will see their public posts (their followers, and the other people on the instance's followers). This expectation gets broken when posts get boosted / shared around a bunch, but it's good enough that like, I can probably post something publicly on gentle.town (where I live) and, unless it goes viral, not get weird randos that are completely disparate from my social circles viewing it. If people can subscribe to gentle.town (à la #8082) and view its posts, then the local understanding of who might see them gets a lot more confusing, especially since (as far as has been discussed) there is no public announcement that Stranger $X is now viewing everything your instance has to say.

    This can be mitigated on instances which implement local-only posting (which explicitly defines a limited context for the posts), but as this is not an upstream feature, it is not relevant to the discussion here. I would say that implementing this without local-only posting effectively threatens the public timelines with becoming an entirely contextless space, to the detriment of the local communities.

trwnh commented 4 years ago

abolish the idea of instances as different websites [...] you don't have to create new accounts to see new subreddits or Facebook groups

this is not happening any time soon -- you are posting web resources to a website, not to a group or to a subreddit. people follow other people, not topics, and local timelines don't strictly have a topic. it's just an arbitrary way to filter a subset of public posts. if you want addressable groups, then that's #139

what's the point of a decentralysed platform if you're bound by whatever community you chose?

by signing up on a specific website, you are choosing a service provider. the admin of that service can run that service as they wish.

fsnk commented 4 years ago

Uh, since no one has mentioned this. If this feature was implemented, would you be able to post to remote instances?

I would hope not, that's going to be ripe for abuse

You don't post "to" an instance. You post to a collection of actors, like your followers, or to Public. You would need a separate account/profile on that instance, if you wanted your post to show up in that "local" public timeline.

Obviously posts from a remote server wouldn't show up in a local timeline. I assume this would work like any other timeline, you'd be able to reply to a post and people who expanded the conversation would see your replies in that context.

For posts to appear top level in the local timeline on a server, they would still have to be posted by a local account on that server.

bs2kbs2k commented 4 years ago

I'm not a expert, but can't it be implemented fully client-side by fetching the other instance's /public feed?

BakedCrossiant commented 3 years ago

Any update on this?

ykgoon commented 3 years ago

I upvote this.

eobet commented 2 years ago

I would love to be able to add the local timeline of a different server to a column in the advanced web layout!

FediVideos commented 1 year ago

I think adding Local feed following from other servers would be really good for the Fediverse because current system is causing confusion and stress for new users.

Feedback from new users in current and previous wave is very commonly this:

They see servers as subreddits, and want to be able to "browse other servers". So, they think they need to create an account on each server they're interested in, and they find this "need" for multiple accounts as confusing and stressful.

I've tried explaining that they don't need multiple accounts, that content will come to them by following people from other servers, but they still think of other servers as something they're missing out on if they aren't a member. There's a lot of FOMO, I've had this same conversation again and again with new users.

If users could follow other servers' local feeds, they would no longer think they need multiple accounts. This would make the Fediverse seem much simpler, and it would also make smaller servers more attractive which would make the Fediverse healthier.

coffeehabit commented 1 year ago

Creating a list of other servers to browse a curation of instances would be pretty cool. "Tech servers" "Science servers" etc

FTWynn commented 1 year ago

As one who would very much like this feature, I wanted to comment on some of the expectations above.

If the goal is to limit the visibility of a post (to followers or whatever), then I would imagine anyone would run away from the concept of "public" on a toot. By contrast, a setting of public to me means "the Internet can point to this at will." So I find it confusing that public timelines would be somehow locked within an instance, except on a follower by follower basis.

This could be handled by better multiple account management as well I suppose... but it doesn't feel like the right trade-off.

dobkeratops commented 1 year ago

could a similar effect be created with a default agregator bot that the server software includes (which server admins can disable or replace as an optin) ... and servers could post a list (visible in user UI) of recommended follows .. easy to click/browse see, included in the channels feed by default (local or federated or both?) - which the user can mute; (then is down to admins to balance: how many of these to show).

would this be any less UI/software work than adding user server follows?

I also really want something like this. The underlying federated idea is awesome! but it does seem to take an extra layer of UI that the world hasn't figured out yet

dobkeratops commented 1 year ago

Currently to build a varied feed you need to follow randomly: problematic for 3 reasons:

[1] according to social media norms this just feels weird, almost inappropriate - you're expressing a signal more specific but it's meaningless. (hence user discomfort). "hey world I like this person" , er no, I dont really know them , I'm just trying to broaden my feed.

[2] it's making the information encoded in the mastodon ecosystem less valuable, because it's corrupted with this noise. you're no longer getting an accurate graph of who genuinely wants to follow who.

[3] there's usually extra clicks involved in finding and following profiles outside of your feed (if thats avoidable , then there's extra UI needed to fix).

This is why IMO the system desperately needs a different way to broaden the feeds.

I dont want to sound critical of course. it's a voluntary project if I've understood right , the underlying ideas are great, and are worth supporting. It's more like "this is what this system needs to do itself justice.."

I find myself in a similar situation with the Rust programming language. It's my favourite, I've put a lot of effort into switching from C++, but many established C++ users just get put off by the early experience (<1000 lines it feels cumbersome) , as such they never get to appreciate it's virtues ( it really shines as a program grows). I want to promote it and get more people into it but I often run into this problem.

eobet commented 1 year ago

Since there's a significant migration currently happening, I'm observing a lot of feedback from those who don't that they don't want to have to miss out on the timelines of other servers.

Now, like it or not, there are a lot of Mastodon instances which advertise themselves as having some sort of specialization, and people with a lot of followers on the bird site often only specialize in one thing. But most people aren't like that. Most people have more than one interest, and thus want to follow what's going in some place other than the server they happened to create an account on (the other huge complaint I see is that people don't want to have to choose severs at all, or have actually registered an account on each server they're interested in and are having a difficult time managing that, but that's outside the scope of this topic).

Also, the firehose of the Federated timeline might be feasible to drink from now, but with 10x or 100x more growth, that's going to be just noise (if it isn't already).

Exhibit A B C D E F G H I J K

I think there's an opportunity here to turn the specialized instances into something positive for everyone...

brendanjones commented 1 year ago

This one from @eobet hits the point home for me

Something folks moving to mastodon may not entirely realize is that server choice can make your experience better. You probably never use Federated timeline, but Local timeline? That's your local server. Which, if it's cool, can be useful!

Federated timeline is interesting (and often amusing) for an occasional visit, but honestly it's a firehose of posts that mostly aren't of interest to me. That's only going to become more true as more people join the fediverse.

How I actually use timelines:

  1. Hear what the specific people I follow are saying: home feed, or lists
  2. Discover what everyone is saying about specific topics: follow hashtags
  3. Discover what people in my wider network are talking about, not specific to any topic (a broader discovery): local timeline

(3) is currently limited to the one server you joined, if I understand correctly. That's frustrating because I know there are a couple of other servers out there in which I'm interested and I'd love to browse for new content, and find people to follow. My example: I'm on fosstodon.org for my IT interests, but I'd also like to follow climatejustice.social.

One big caveat to all that: the goal here (for me) is to easily browse other servers, and follow people on those servers. Browsing other servers is already easy, especially with v4.0. You load up an instance example.instance and it'll redirect to example.instance/explore. Great!

However you can't follow people easily. One of the big blockers when viewing another server's feed is the number of steps to follow someone. It's literally 6 steps - it should be two clicks (click on name, click 'follow'). Solve this, and you've solved 90% of the barriers here.

Yes I'd love to save other servers as timelines (lists?) in my own server UI so I never have to leave that one UI, but that's a nice to have.

philpax commented 1 year ago

Just weighing in on this as someone who just migrated today: the Local view of my instance is fantastic because it lets me discover what people are up to on my "specialised" instance, but I really want to see what people are up to on other specialised instances I'm aware of!

The Local view has already helped me discover new people and grow out my Mastodon network. I'd like to be able to easily find new people and toots from elsewhere, too.

mitar commented 1 year ago

Maybe an alternative could be that you could have multiple accounts on multiple instances (so that you can also participate in those instances, not just lurk, and also observe potentially private local feeds), but that federation would know that this is all the same account globally and allow anyone to tag/follow under any handle, getting a sum of all your accounts back. So the downside of multiple accounts is that followers have a hard time know which handle you use. So there should be some way to make it not matter whichever handle they pick, it would all be the same global account.

brendanjones commented 1 year ago

So there should be some way to make it not matter whichever handle they pick, it would all be the same global account.

@mitar oh gods, don't open that can of worms haha. I was thinking about this a couple of days ago, that what you actually want on Mastodon (and even the Fediverse) is a universal user ID for each person. Doesn't matter what server you're on, you maintain the same ID. It'd solve so many issues. I have a feeling I'm not the first person to have this idea, but I'm really new here so no idea the history behind why this wasn't done. Anyone got links to discussions? I didn't find anything so far.

mitar commented 1 year ago

OK, having unique handle over multiple servers is tricky and a can of worms. But having metadata on your handle saying "BTW, those other handles belong to me" (with some proof) should be easier. And then only client combines those together, while at the API level things could stay probably the same.

FTWynn commented 1 year ago

It seems largely already in place with the redirect flow, right? Just don't terminate so much on the "remote" end when pointed back to the "home" instance.

Or maybe we could have the ability to ACL any other signed in account, even on a different server, to an account.

Re-aggregating the activity then becomes more of a challenge, but it would be easier to explore different instances.

Rhyothemis commented 1 year ago

How about having administrators select server categories (topical, geographical) and then have a feature where the federated timeline could be filtered by server category. So for example one could filter the federated timeline by 'science' or 'North America'? Is that feasible?

ipatrol commented 1 year ago

I'd like to toss my hat into this ring. Some instances have strict rules about who can sign up for them in order to stay topical, but then it makes it difficult for those interested in that topic to follow along.

mitar commented 1 year ago

I was thinking that given that Mastodon instances also provide API endpoints for 3rd party apps, maybe each Mastodon instance could also be simply a 3rd party app for (linked and approved on user by user basis) other instances? So then I could connect other instances to my main instance and control all of my accounts there from one instance.