Is there a seamless way of linking to other instances?
For example, this comment links to another community on another instance, but when clicked on, you're not actually able to interact with anything on that community, because you're suddenly not logged in.
It's doesn't function like linking to a subreddit, and I understand that that's because of federation, but is there a better way of doing this? It seems... very stupid that linking to a page would suddenly "log you out" for all intents and purposes, while searching that same community wouldn't.
For communities or users many clients (including the default web ui) understand relative links, like [!asklemmy@lemmy.ml](/c/asklemmy@lemmy.ml) or [@tymon@lemm.ee](/u/tymon@lemm.ee). The problem with these is that if instance the person reading your messages is on doesn't know that user/community (because no one is locally subscribed to it or there have been no actions seen by that user) you will get an ugly 404 page with the only remedy being to perform a search for that unknown user/community/whatever manually. I think this issue is being worked on to make things more seamless, but IDK when this experience will be improved.
There is also technically no guarantee that any instance will keep track of non-local objects perpetually, so the "canonical" location of a thing is generally on the server that the user is based on. Posts and comments are referenced by a sequential ID that is different on every instance, so... yeah.
Technically there is a unique ID for every object sent through ActivityPub, so those may be linkable in the future with a similar scheme such as /post/288327@lemm.ee or something uglier like /post/https%3A%2F%2Flemm.ee%2Fpost%2F288327 depending on compatibility needs (as the IDs in ActivityPub are all full URLs to the source object)
The feature exists in the fediverse, but I don't know if or how it's implemented in Lemmy. I'm using Kbin and there is a button called "copy url to fediverse" (for comments and posts/threads):
There are ways to write links in such a way that they should keep you on your instance, but I'm not too familiar with them. I wonder if it would be possible to "precheck" links that load on a page, and if any point to content that can be federated, kick off the process of pulling that content in. Then when the user clicks that link, it would take them to the content on their home instance, where they can interact. That way users wouldn't need to deal with formatting links a certain way, it would just happen automatically (if your home instance software supports it).
Intuitively, that's how I assumed it already worked, and it's probably what most new users will also expect. But a single global identity also runs counter to the idea of decentralization, and could invite other further complications.
The current experience can still be pretty jarring.