For example, for me, here are some things I wish to see (or would implement in my design) :

  • design around ease of self-hosting. A non technical user must be able to self host easily and at a very low cost.
  • Embrace content sorting and filtering algorithms, but on the client side, with optional control by the user.
  • Standardize tags on all content. So many of the different ways different platforms classify or organize content can be implemented as tags, which increases interoperability between them.
  • Abandon obsession with real-time-first implementations for use cases that don't explicitly need it.
  • Transferable user identity (between instances)
  • User identity and authentication as separate service from social network instance

Would love to hear yours!

you are viewing a single comment's thread
view the rest of the comments
[–] 2 points 10 months ago (2 children)

In the client, you wouldn’t need to be sorting and running extensive calculations on all data. You could, e.g, build the front-page by indexing/scoring posts and comments that have been created since your last visit with a hard cap on some time window (last 48h) or total data points (e.g, keep only the most recent 10k objects in a local hot database, freeze/archive everyhing else.)

Absolutely. There's a lot you can do. The "For You" Feed on Bluesky is quite instructive. https://bsky.app/profile/spacecowboy17.bsky.social/post/3mb2r5qei322a

But when you're talking about sending a lot more data to clients, you really need to consider what that means for the internet bill of instance owners.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 2 points 10 months ago (1 child)

    But when you’re talking about sending a lot more data to clients, you really need to consider what that means for the internet bill of instance owners.

    I would argue the opposite, actually. A lot of this data could be distributed in a p2p manner and the client nodes would have to rely even less on the servers. The key part would be that this data would have to be self-authenticating, but we do have the mechanisms to do that (Linked Data Signatures)

  • source
  • parent
  • hideshow 1 child comment