Replying to Avatar Derek Ross

We've had a lot of talk about relays over the past day here on Nostr. This may be a bit confusing if you're new to Nostr.

What's going on with this discussion and why are many people making comments, jokes, or memes about relays?

The argument boils down to centralization and decentralization. On Nostr, we decentralize our infrastructure by using a potential wide variety of servers. Many of us are reading this note right now that's been retrieved from a variety of servers or as we call them, relays. Some relays are more popular than others. This leads to the questions surrounding decentralization. If many users are only using a top subset of relays, then we're not as decentralized as we could be or maybe even as decentralized as we should be.

I have various opinions on this subject. Even if Nostriches mostly only use ten relays, we're still magnitudes better than any existing social platform where only one entity runs the server infrastructure. We can do better though and we should do better. We have the tools to and the capabilities to make Nostr even more decentralized.

Now, this gets us into the next discussion. Which method of decentralization is best? For that, again, in my opinion, I'm a fan of the Gossip model. Simple put, Gossip makes relay selection not overly matter all that much. You can use any relay that you'd like and your follower's clients essentially fetch the notes and events from the relays that are being used without the need to be utilizing the same relay for communication to flow.

What should you do? Nothing, IMO. Relay selection and discovery aren't that great on most clients. I'd say keep using the same relays that you're using for now. Maybe, at some point, you'll update your relays to use smaller, community relays. For now, this is a developer problem to solve. You just keep creating notes and sending zaps. It will all work out in the end. Our developers LOVE to have problems to solve. Pura vida!

Thanks for the explaination. Wouldn't it be possible to have a sort of authomatic relay rotation built into the code? Let's say an X number is authomatically assigned and then people can eventually add to those. Don't know if it can even work but that's my two cents. :-)

Reply to this note

Please Login to reply.

Discussion

That could be done once gossip is in place, but this may not be the best approach for all clients. I foresee a future where we have many different kinds or types of relays used for various things. We have this kind of support now, but I see it expanding. For example, we have search relays, new user filtering relays, 140 char maximum relays, phone book style contact relays, archive relays, RSS feed relays, etc. Specialized relays and community sized relays will be where we're headed.

Wow, the complexity and beauty of all this is astonishing! 😍 I really love to see the future unfolding, though I often don't understand the technicalities.