universal IDs for threadiverse items (re kbin-core #635)
universal IDs for threadiverse items (re kbin-core #635)
kbin.social
universal IDs for threadiverse items (re kbin-core #635) - /kbin meta - kbin.social
universal IDs for threadiverse items (re kbin-core #635)
universal IDs for threadiverse items (re kbin-core #635) - /kbin meta - kbin.social
A unique ID doesn't have to be long, opaque, and ugly like a UUID. All you need is a
<locally-unique-number>
+<originating-intance-domain>
. Add a prefix to distinguish its type from other things at that domain, and you've got an ID that's unique, readable, and easy to troubleshoot.that would certainly make it nicer! I do not know about the limits of randomness. As long as it would be enough to avoid all the instances that will ever exist accidentally bumping into each other's content.
We already have the IDs you mention in the URLs though, right? In the post I used as the example, the author's home instance URL for the item is
https://lebowski.social/post/12337
<locally-unique-number>
=12337
<originating-intance-domain>
=lebowski.social
To make things really simple (at least for the end user), instead of having a UUID, you just have a way that can be easily learned to transform the URL by copy/paste by hand, and would also lend itself to programmatic manipulation:
I still am thinking there must be some reason why this isn't done because it seems very obvious. Either it is more difficult to implement across federation than I am guessing, or there are use cases I am not considering.
Yes, the needed information is already present in those URLs, but as URLs, they instruct the browser to leave the current site and visit the origin instance, which is not what we want. To get the desired behavior, we would want:
Yep. That's the kind of ID we want. :)