Amplifying this for critical discussion.
Who will run relays in the future, and is there anything that Nostr as a protocol can tweak to improve future relay decentralization?
nostr:note17jqv3typtv2va0gq8s2xl7fn86v4z5t98sxyyawrleqkuqae89sqkw93l0
Amplifying this for critical discussion.
Who will run relays in the future, and is there anything that Nostr as a protocol can tweak to improve future relay decentralization?
nostr:note17jqv3typtv2va0gq8s2xl7fn86v4z5t98sxyyawrleqkuqae89sqkw93l0
Great questions, I'm also interested in this discussion.
PUT THE RELAY IN THE PHONE
What about relays that forget content after a period of time? These would be very lightweight and easy to run. Most people don't even want their notes stored for eternity.
Samesies +đź’Ż
Obviously we want to save important notes and clients can have a nostr KIND for them
Twitter grows by 12TB per day. If there was a relay that stores 30 days only for each user, that would still be 30 x 12TB - too much for anyone to store.
Although a lot of that is probably bloated media files, which relays can farm out to other servers (still have to address scaling for those though)
People love to lost audiovisual content. Will be no different on Nostr. Outsourcing the storage to somewhere else doesn't solve the problem that the disk space must exist and be paid for somewhere.
We need to find the right incentives for people to want to run relays in a decentralized manner. People respond to incentives (just like Satoshi achieved). Any ideas?
BitAxe + NOSTR + SOLAR + Internet. Park this in your backyard.
For internet, we don’t have great alternatives yet. Maybe Skylink from SpaceX, but that will get shut down.
clients -> outbox model

WEN wss://relay.nostr.lyn đź’ś
If I remember correctly, that panel had only a single nostrati who's implemented and supports outbox, and that's nostr:npub1l2vyh47mk2p0qlsku7hg0vn29faehy9hy34ygaclpn66ukqp3afqutajft (NDK).
What’s outbox?

Your client checks which relays people you follow write their notes to and reads from their "outboxes"
yana does a good job describing it here: https://github.com/Cyd0n1a/yana-Cyd0n1a/blob/master/GOSSIP.md
the only way nostr works as a censorship-resistant protocol -- formerly known as gossip.
the basic idea is instead of everybody writing to 3 or 4 or 10 "popular" relays each pubkey says "I'll write to relays X, Y and Z, you can find me there"
Now all a user needs to be able to make available is this very small event (which dedicated relays like Purple Pages focus on) that maps pubkeys to relays.
That way, if User A is censored by a vast majority of the relays, followers of that user can still continue to find their content without noticing that any type of censorship is going on.
(Imagine if all of Trump users could have continue to interact with his account when he moved to Truth social without even realizing that anything was happening)
---
There's a lot more to outbox than this, but this is the basics.
Storage tiers like google drive. First tier should always be free that takes care of 80% use cases/users. Hopefully revenue brings more relays. BUT not like $9.99/month for Damus purple that is too rich.
Also relays should have bandwidth (only new notes) tiers among themselves for gossip so they share revenues.
Twitter grows by 12TB per day (probably much more nowadays). The cannot be a free tier. No relay in the world will have that much data lying around for free.
People are talking about only storing motes for 30 days - but that would still be 30 x 12TB - utterly infeasible for anyone to store that much data.
And hence the payment tier that subsidies the smaller less space using free users.
Even just the data for a free tier, and even if just saved for one single day, will be too much for any individual to be stored.
For paid tiers it can work, but those relays must then be run hyper professionally, constantly adding more storage, guaranteeing zero downtime and zero loss of data. Only very few relays will have the expertise to pull this off - and that means, a handful of relays will store everything, and those relays can be censored by the state.
The argument that it isn’t decentralized doesn’t make sense to me as a user. The client/relay design of Nostr makes my user data redundant, verifiable, and ownable.
Redundant: once signed, my events can be broadcast to as many relays as I want, and they don’t even have to be broadcast by me. Anyone can broadcast them, and I can broadcast anyone else’s.
Verifiable: No matter where my events are broadcast/stored, they are verifiable by your client by my public key, and vice versa.
Ownable: I can use any combination of public, private, shared or personally owned relays, and all my data is redundant across them all. I can locally backup my entire event history and rebroadcast it any time I want.
Who will run the relays? Whoever can, and if centralized relays become more problematic then the data can be easily broadcast to additional relays.
I agree with this line of thinking.
The identity is already detached from the relay runner. That’s the key to this whole thing.
Since we accomplished this part, the rest doesn’t matter much. Not because there won’t be problems, but because the problems are relatively easy to solve.
I wonder if the criticism comes from having a false assumption that there needs to be a single global state/view of “the network.” Nostr is different from Bitcoin in this way, and there is no single global view of “the nostr.” There is no global consensus that needs to be maintained.
I think that’s what’s happening here. And that was actually mentioned on the same panel iirc.
I always assumed that nostr will be random pockets of data that exist where the people who are interested in those will be able to involved in them.
Like the pocket of data that is for Japan, could be completely isolated from one in Greenland. And that’s totally fine.
Not everyone needs to have access to all the notes, everywhere, at all times.
Right, and in that example data in Japan could easily find its way to Greenland if some user happens to broadcast it there. It may then only exist on those 2 relays but that may be the only people who care to know it exists in the first place and that’s perfectly fine.
That's the beauty of the thing. Local communities can have their own networks going, the same person can participate with the same identity either on private networks or public ones.
Doesn't matter, same protocol on both sides. The messages can even arrive on paper and delivered by pigeons. They are still verifiable as being from a specific identity.
That's really the future.
Sure, everyone can (and should) run their own relays and store their own data.
But all those personal relays will not be known to anyone else, all our clients still only connect to a small list of well known central relays - and these relays can only be run by huge companies - if Nostr ever were to get as big as Twitter, it would grow by far more than 12TB per day.
Profit incentives will run relays, freedom to compete will ensure a space for everyone.
What profit incentive do people have to run a relay? Most people are not going to pay for relays. You have to know what a relay is and does to even begin considering paying for one. Most people are not going to do that. You can advertise on a client (useless because people will just use a different client) but you can't really advertise on a relay. I suppose you could sell your users data. Plus on top of low financial incentive to run one, it also carries pretty stiff risk. Especially for large public relays. I'm not saying your entirely wrong. But it's going to be a loooong game for nostr to finally win.
I would pay zaps for a privacy premium
I think small, niche, community relays and small special use case relays will be the backbone of the decentralization. For this, relay software has to get a lot easier for anyone to run with with very little technical expertise.
nostr:nprofile1qqs8sxs4yuz47axp7uprpugrs3sfkdz5379tdg9xe2n5qfvz070a4egprdmhxue69uhkwmr9v9ek7mnpw3hhytnyv4mz7un9d3shjqg4waehxw309aex2mrp0yhx6mmnw3ezuur4vgzaq60d is good for this
We will all run relays and they will be called nodes. Relays will serve as bridges between network clusters. And content will be filtered by the crowd.
This is #peercuration https://github.com/baumbit/peercuration?tab=readme-ov-file#peercuration
How does peercuration accept input from the user? When a user is scoring content either negatively or positively, how are they doing so? Does a user have to score every piece of content they come across? Would be curious to see what the implementation would look like.
Not really unless the websocket nonsense is superceded by something that is more resilient and could be ran over tor properly. Also all the relays require a DNS address due to TLS, which is also the reason that using them over Tor is really hard, due to the timing constraints of it.
Can you combine Bitcoin and Nostr nodes? Make it dual purpose so it's easier? IDK about the incentives so it gets wide spread adoption.
Umbrel already kinda does that.
Can someone make a raspberry pi computer which runs nostr relays out of the box?
nostr:npub1aghreq2dpz3h3799hrawev5gf5zc2kt4ch9ykhp9utt0jd3gdu2qtlmhct can do this easily
The problem with Umbrel is, it is quite hard to give Umbrel access to more disk space. I couldn't figure it out. Sure you can SSH in and mount a USB disk, but then that additional disk space doesn't show up anywhere in the Umbrel server stats and none of the docker containers that you install have access to that volume as well.
I found Umbrel fairly useless for any if those apps that require huge amounts of disk space, like Nextcloud and Immich.
Relays will probably be decentralized like markets are decentralized. There will be large, medium and small relays. Relays that you pay to use as a product and others that are free and you are the product.
pre-paid billing incentives and infrastructure is needed by relay operators
Spent part of the weekend working on getting a relay up and running. All of the tutorials I found were for stacks that don’t match what I’m trying to do, so there was some guesswork involved. Installing the Docker container was fine… but then what? Took forever to figure out how to configure it. I’m not sure if the config.toml file was placed correctly. There’s no way to monitor the relay and watch what it’s doing.
I’m sure part of the problem was me holding things wrong—I only joined Nostr a couple weeks ago—but if you’re asking about ways to make it harder for new relay operators to hold it wrong, those were the pain points last night.