Transcript
WEBVTT
NOTE
Transcription provided by Podhome.fm
Created: 3/27/2024 9:58:09 PM
Duration: 7226.828
Channels: 1
1
00:00:02.560 --> 00:00:16.445
With central planning money, which is such a core technology to society working. Think about it, Ed. You go to work every single day, and you pour your blood, sweat, and tears all of the time you spend on this planet in exchange for what?
2
00:00:17.480 --> 00:00:17.980
Money.
3
00:00:18.920 --> 00:00:21.980
So the central planning of money convulates and complicates
4
00:00:22.760 --> 00:00:34.695
so much of the inner workings of society. Let's go back to basics. Our government is in debt. Right? Yes or no? The US government. That is what all governments. Right? Our government's in debt. Okay. Traditionally, Ed, if I owed you $20,
5
00:00:35.340 --> 00:00:43.600
I'd have 2 options. I'd wanna have to default on that and say, you know what, Ed? I hope you still consider me a good friend, but I'm not gonna make whole on that $20.
6
00:00:43.975 --> 00:00:54.860
The other is I could pay it back. Those are classically the 2 options that anyone in debt has. Right? Now the government, because they centrally plan and control our currency,
7
00:00:55.640 --> 00:01:00.059
unfortunately, has a third, and that's that they can print more money, devalue
8
00:01:00.360 --> 00:01:05.805
the debt that they have and that they owe, and allocate more capital to themselves. So our government
9
00:01:06.105 --> 00:01:13.380
can't default. The US, the United States of America cannot default on debt. It would collapse the entire planet.
10
00:01:13.759 --> 00:01:31.800
We also cannot afford to pay it back. So if you just like, listen. I didn't even go to college, brother. This is just 101 basics how the world works. If we can't default and we can't pay it back, what's the only option that they have to do? No matter what they sit and tell you at the Fed chair meetings and all of the economists,
11
00:01:32.100 --> 00:01:57.170
they have to issue more dollars. And so if there's going to be more pieces of green paper, you want them competing for the most fixed thing. Right? There's more dollars that are competing for a fixed amount of Bitcoin. And Jack. Yes. Real estate's gonna go up too because there's more dollars competing for real estate, but they can make more real estate. They can find more gold. They can't make any more Bitcoins. And that's just I mean, even a college dropout can understand that, my friend.
12
00:02:29.695 --> 00:02:34.995
Happy Bitcoin Wednesday, freaks. It's your host, Odell, here for another Citadel Dispatch,
13
00:02:35.535 --> 00:02:38.515
the interactive live show focused on actionable
14
00:02:38.990 --> 00:02:41.250
Bitcoin and Freedom Tech discussion.
15
00:02:41.790 --> 00:02:45.650
That intro was rider die freak and good friend,
16
00:02:46.675 --> 00:02:47.415
Jack Mallers,
17
00:02:47.875 --> 00:02:48.614
on Bloomberg.
18
00:02:50.834 --> 00:02:55.360
Duncan on the host telling him he dropped out of college and still understands the system.
19
00:02:56.860 --> 00:02:58.800
I have a great, great crew,
20
00:02:59.500 --> 00:03:01.280
joining me for dispatch today.
21
00:03:01.815 --> 00:03:04.395
The the focus of the conversation will be Noster.
22
00:03:05.015 --> 00:03:07.355
I have a subset of the Noster Illuminati
23
00:03:08.215 --> 00:03:13.160
here on dispatch to discuss Noster development goals, the path forward.
24
00:03:14.580 --> 00:03:15.320
We have
25
00:03:15.780 --> 00:03:17.640
Mike Dilger of Gossip,
26
00:03:18.065 --> 00:03:20.004
the Gossip client. He was on
27
00:03:20.305 --> 00:03:22.885
dispatch a couple weeks ago. How's it going, Mike?
28
00:03:25.584 --> 00:03:27.990
You're muted. We went over this earlier.
29
00:03:30.690 --> 00:03:32.390
His name is literally Mike.
30
00:03:32.770 --> 00:03:46.270
Is it I actually pressed the end button, but my mouse was in a different window. You're good. Is it is it other than that and I'm I've got my coffee, so I'll try to wake up and be a bit more alert for this. Mike, we did a full rip,
31
00:03:46.570 --> 00:03:50.190
and I realized afterwards I didn't ask you. Is it Dilger or Dilger?
32
00:03:51.585 --> 00:03:53.125
Depends what country you're in.
33
00:03:53.985 --> 00:03:58.885
You know, the Germans will say Dilger, but we never said that because I grew up in America. So it's Dilger.
34
00:03:59.290 --> 00:04:01.950
Okay. Dilger it is. We have Fiat Jaf,
35
00:04:02.890 --> 00:04:05.870
the satoshi of nostril. How's it going, Fiat Jaf?
36
00:04:06.735 --> 00:04:07.555
It's good.
37
00:04:08.415 --> 00:04:10.834
Good to have you good to have you back on the show.
38
00:04:11.614 --> 00:04:15.720
I think you've been you've been on the show many times. It's always good to have you.
39
00:04:16.200 --> 00:04:20.300
We have Pablo who does many things in in Noster. How's it going, Pablo?
40
00:04:21.240 --> 00:04:25.225
Very good. Nice to be here. Are you cool with that intro? You do a lot.
41
00:04:25.685 --> 00:04:27.625
I do a lot. Yeah. That sounds good.
42
00:04:28.805 --> 00:04:33.550
His his main well, one of his projects, definitely not his main project, is Wikifredia,
43
00:04:33.850 --> 00:04:37.630
which is a Wikipedia competitor that's actually censorship resistant.
44
00:04:38.970 --> 00:04:41.055
That's not just, like, controlled by Jimmy Wales.
45
00:04:42.495 --> 00:04:49.235
Yeah. Which Gigi told me a couple of days ago that when he first heard it, he thought it was retarded and hated the idea
46
00:04:49.919 --> 00:04:54.020
and that it took him, like, a week to realize how genius it actually is.
47
00:04:54.720 --> 00:04:56.100
Would that he hated Wikifredia?
48
00:04:56.880 --> 00:04:59.965
Yeah. The the concept of no canonical entry for Wikipedia,
49
00:05:00.265 --> 00:05:06.205
that there is no one entry for anything. And it's also different. We live in a post truth world now.
50
00:05:06.660 --> 00:05:07.160
Exactly.
51
00:05:07.620 --> 00:05:13.880
Yeah. Pablo, you might be on your wrong mic. Tap your mic. Goddamn it. Yeah. You're on your wrong mic. Alright.
52
00:05:14.825 --> 00:05:20.845
And we have Huddl bod, who I had the pleasure of meeting in person for the first time, in an Austin bathroom.
53
00:05:21.630 --> 00:05:24.210
He is, the maintainer of Coracle,
54
00:05:25.070 --> 00:05:27.170
the Nostril client. How's it going, Huddlbot?
55
00:05:27.950 --> 00:05:30.610
Very well. Good morning to everyone except for Pablo.
56
00:05:31.134 --> 00:05:32.974
Autobot, by the way, you have,
57
00:05:35.134 --> 00:05:40.990
you have the title of being there's only 2 people I've I've ever met in a bathroom before is you and Craig Raw.
58
00:05:41.770 --> 00:05:46.830
So Good. Well, I'm happy to be, be in good company, I guess. Yeah. There you go.
59
00:05:47.425 --> 00:05:51.925
Okay, guys. Well, first of all, like, we plan to go pretty deep on this show.
60
00:05:53.824 --> 00:05:56.405
If you've never used Noster or tried Noster,
61
00:05:57.430 --> 00:05:59.530
you should still join us. You should
62
00:05:59.910 --> 00:06:04.490
come along for the ride. It's good to hear technical discussions and and kinda learn through osmosis.
63
00:06:05.925 --> 00:06:07.305
You'll figure it out eventually.
64
00:06:07.765 --> 00:06:10.505
But if you've never used Nostra, consider checking it out.
65
00:06:11.845 --> 00:06:12.585
It is
66
00:06:13.800 --> 00:06:16.460
quite fascinating and quite powerful. And,
67
00:06:17.640 --> 00:06:24.085
yeah, I mean, if I recommend a client here, like, I'll probably just get shit on. But if you go to the App Store and just search Primal
68
00:06:24.625 --> 00:06:29.044
in your favorite App Store and download that, it's a good place to get started.
69
00:06:29.585 --> 00:06:31.030
Company around bags, I see.
70
00:06:31.590 --> 00:06:35.370
You know, I fund I fund 22 Noster clients. So,
71
00:06:36.790 --> 00:06:39.610
yes, I am I am pumping my bags a little bit.
72
00:06:40.205 --> 00:06:47.185
Would I mean, do you agree that, like, primal is the best place for a beginner to get started with Master, or am am I off base with that?
73
00:06:47.965 --> 00:06:49.265
Yeah. That's probably fair.
74
00:06:50.509 --> 00:06:52.530
The, the integrated lightning wallet doesn't.
75
00:06:54.750 --> 00:06:57.650
Yeah. Because people need to feel the zaps in the beginning,
76
00:06:59.265 --> 00:07:01.125
and Lightning kinda sucks
77
00:07:02.385 --> 00:07:08.210
to use self custody for the first time. So it it does suck that that primal is using a custodial wallet,
78
00:07:09.250 --> 00:07:14.310
that has some KYC attached to it. Specifically, you have to do email verification,
79
00:07:15.090 --> 00:07:16.215
which I don't love,
80
00:07:18.294 --> 00:07:20.235
But it's pretty smooth onboarding,
81
00:07:20.695 --> 00:07:22.315
and it works for most people.
82
00:07:22.935 --> 00:07:26.440
Given the state of things, it could be far worse than email.
83
00:07:27.300 --> 00:07:28.520
Yeah. Exactly.
84
00:07:29.300 --> 00:07:34.440
Yeah, Jeff, you you have an opinion on my client recommendation for beginners before we get more technical?
85
00:07:35.585 --> 00:07:37.365
No. Let's let's get more technical.
86
00:07:37.745 --> 00:07:44.005
Okay. That's what the flame client flame wars. Yes. You don't wanna do client flame wars? Yeah. Okay.
87
00:07:44.930 --> 00:07:49.990
There's many great clients. I do we have a repository for all the clients? Is it nostr.org?
88
00:07:50.450 --> 00:07:53.110
Does that does that list actual clients? Or nostr.net
89
00:07:53.975 --> 00:07:59.575
has a giant list. Nostr.net. Everybody's busy. If you wanna overwhelm yourself, you can go there,
90
00:08:00.135 --> 00:08:04.699
or you can open the App Store and just search Primal, get started, and just trial by fire.
91
00:08:05.720 --> 00:08:06.220
Okay.
92
00:08:06.759 --> 00:08:11.395
So we have a booming Nostril live chat. You can get to that at sill dispatch dotcom/stream.
93
00:08:12.095 --> 00:08:13.315
That's powered by zap.stream.
94
00:08:15.215 --> 00:08:21.490
Shout out Kieran for maintaining that project. Awesome fucking project. You do not need a Nostril account to join us
95
00:08:21.790 --> 00:08:23.889
there. You can create one on the website.
96
00:08:24.830 --> 00:08:29.169
Okay, guys. Where do you wanna get started? I woke up in the morning, like, 5 days ago,
97
00:08:31.095 --> 00:08:32.314
and I was, like, being
98
00:08:32.695 --> 00:08:38.394
kind of, like, peer pressured into doing something by Fiat Jaffe. It seemed like there was, like, a little bit of protocol wars brewing.
99
00:08:39.500 --> 00:08:41.840
What is this about? Like, why should people care?
100
00:08:43.020 --> 00:08:44.800
And maybe that's a good spot to start.
101
00:08:48.555 --> 00:08:51.695
Okay. Everybody's silent. So what happened was answer.
102
00:08:52.475 --> 00:08:54.495
Oh, I'm I supposed to do that?
103
00:08:54.875 --> 00:08:55.910
No. Go for it.
104
00:08:59.110 --> 00:09:04.009
Well, what happened was that I did a small test that people would say was statistically
105
00:09:04.975 --> 00:09:06.915
invalid, but I just posted
106
00:09:07.535 --> 00:09:08.995
to my usual relays
107
00:09:09.455 --> 00:09:11.875
that I just choose more relays that I post through.
108
00:09:12.950 --> 00:09:17.370
And and I posted the exact same content to the big relays. And
109
00:09:18.150 --> 00:09:23.525
in 5 like, 5 minutes, there was a dramatic difference in the amount of responses
110
00:09:23.905 --> 00:09:28.245
between the 2. And then I did the test again with a comment on the same experiment,
111
00:09:29.379 --> 00:09:31.240
and the results was the same.
112
00:09:31.779 --> 00:09:33.879
Like, it was 10 times more
113
00:09:35.300 --> 00:09:37.319
comments and likes and replies, etcetera,
114
00:09:37.845 --> 00:09:39.865
on one versus the other.
115
00:09:40.565 --> 00:09:41.465
And I concluded,
116
00:09:42.405 --> 00:09:44.505
that this was the problem with the,
117
00:09:45.290 --> 00:09:50.589
like, with the censorship resistance properties of Nasr. If I was being censored
118
00:09:51.050 --> 00:09:54.269
by the big relays and was only able to post to my
119
00:09:55.025 --> 00:09:56.165
2 small relays,
120
00:09:56.785 --> 00:10:04.680
and then my my post was not reaching the people that have voluntarily decided to follow me, and that was the problem.
121
00:10:06.500 --> 00:10:08.680
And that, I think, sparked a lot of discussion.
122
00:10:11.315 --> 00:10:12.135
So, basically,
123
00:10:12.915 --> 00:10:16.774
Noster uses a system of relays. Right? Anyone can run a relay.
124
00:10:17.315 --> 00:10:19.495
And if you right now, as Noster
125
00:10:20.339 --> 00:10:30.040
Noster is pretty early in its adoption cycle, but right now, in Noster, if you if you publish your note if you broadcast your note to one of the the large relays,
126
00:10:30.805 --> 00:10:31.945
you get more engagement.
127
00:10:32.485 --> 00:10:34.825
That was the conclusion of your test.
128
00:10:36.565 --> 00:10:48.795
Yeah. Yeah. The idea is that, there is a much of people that are supposedly following me, but they're not getting my notes or they're not getting them, like, they're maybe they're getting them the relator, but doesn't matter.
129
00:10:50.935 --> 00:10:52.875
And then it's kind of, like,
130
00:10:53.255 --> 00:10:55.515
it's a kind of shadow bound, you could say,
131
00:10:56.860 --> 00:11:01.520
because their clients are not connecting to to the small release, I'm I'm publishing my notes too.
132
00:11:03.795 --> 00:11:07.495
Yeah. To to add a bit more color to it, the the way more
133
00:11:08.115 --> 00:11:12.579
the way the way, pretty much all clients, especially, like, the big big,
134
00:11:12.959 --> 00:11:19.300
clients, they all do it this way. You define a set of relays, and they connect to that that list of relays.
135
00:11:19.904 --> 00:11:30.260
And then whenever you follow someone, it asks those relays give me everything that all these a 1,000 a 1,000 pub keys that I follow give me everything that you know about them.
136
00:11:31.120 --> 00:11:36.980
But if you don't publish to to those relays, then if someone is following you, they're simply not going to see it.
137
00:11:37.585 --> 00:11:38.085
So
138
00:11:38.625 --> 00:11:43.045
one of the things that we've been discussing is what we used to call the the gossip protocol.
139
00:11:43.665 --> 00:11:47.340
We gossip means a bunch of things in a bunch of different contexts,
140
00:11:47.720 --> 00:11:50.060
in lightning networks. It it means one thing.
141
00:11:50.600 --> 00:11:51.100
So
142
00:11:51.455 --> 00:11:54.515
we we are trying to change the name to to outbox model,
143
00:11:54.895 --> 00:12:04.880
which is more descriptive of what we're doing. And the idea is you your pop key says I'm going to be writing on these relays or I'm going to be reading on these relays.
144
00:12:05.660 --> 00:12:13.685
So if one of the main relay sends for you, it doesn't really matter because the clients will go to those relays and find the notes
145
00:12:14.065 --> 00:12:15.365
that that you wrote.
146
00:12:15.985 --> 00:12:19.765
So the the the difference is very stark. I I've been using
147
00:12:21.540 --> 00:12:22.040
Deimos
148
00:12:22.500 --> 00:12:24.120
and and a few other clients
149
00:12:24.580 --> 00:12:27.255
with, a small set of relays, and I'm
150
00:12:28.215 --> 00:12:32.235
constantly not seeing responses. Then I go to primal in primal because,
151
00:12:32.615 --> 00:12:34.475
because primal is using the caching server.
152
00:12:34.810 --> 00:12:36.650
Even though I am using the,
153
00:12:37.210 --> 00:12:44.510
I am using the same, the same set of relays, I am reading for from the caching relay, so I see all the responses that I would have missed.
154
00:12:45.035 --> 00:12:49.295
But that only works because the caching service is indexing all these other relays.
155
00:12:50.555 --> 00:12:51.615
But if
156
00:12:52.010 --> 00:12:58.830
the the network fragments so, for example, probably FiatChefs pyramid relay, which has, like, 10 users,
157
00:12:59.205 --> 00:13:05.225
is not being indexed. Right? So if I don't have that relay on my Well, he's probably indexing that, Milan.
158
00:13:05.685 --> 00:13:06.440
It's a very,
159
00:13:06.840 --> 00:13:21.305
I mean, it's a it's a it's a known relay, but it's still a very small relay. But the point stands that if I run a small relay, that really is not going to be indexed. If if I span a new relay and I just put it in my NIP 65 on my on my list of relays that I that I write to,
160
00:13:22.490 --> 00:13:32.015
probably probably, primal is not going to index that. It's not going to be listening for all the relays that are published, and there's one person I mean, the bigger issue the bigger issue is that,
161
00:13:32.655 --> 00:13:47.320
you know, the the primal caching server can omit posts. It's it's a centralized service. I mean, it's it's false. It's open source. Anyone can run a caching server right now. The Unity Wallet guys run a caching server as well. Presumably, there'll be more you could run your own, technically.
162
00:13:48.745 --> 00:13:52.365
But I think the bigger issue with the primal caching server is that
163
00:13:53.065 --> 00:14:00.630
it can lie to you and say that a note doesn't exist, that does exist, and and and you wouldn't know unless you check a different client or switch your caching server.
164
00:14:01.090 --> 00:14:04.950
Mhmm. I mean, I know Milan's goal is to index, like, all of Nostr
165
00:14:05.454 --> 00:14:06.815
and every relay and everything.
166
00:14:07.774 --> 00:14:12.195
I will say using primal during Fjotchoff's test was really annoying because
167
00:14:12.760 --> 00:14:15.180
I saw all the posts. I saw all the notes.
168
00:14:17.720 --> 00:14:22.380
Well, the product, like, after 10 minutes, like, after maybe 20 minutes,
169
00:14:22.985 --> 00:14:33.800
the notes on my small relay, they got broadcasted through all the big relays. So People were rebroadcasting them? Yeah. Yeah. So if if if you arrived on any client, if you arrived
170
00:14:34.660 --> 00:14:42.085
a little later, a little after I posted, then you'll see both. And then you say my test is flawed, but in the beginning, you would not
171
00:14:42.565 --> 00:14:48.345
see both. I don't know about about what happened on primal, but I know primal index is my small relay too. So
172
00:14:48.965 --> 00:14:51.970
primal is not a is not a good parameter. Yeah. It does.
173
00:14:52.270 --> 00:14:58.850
By the way, was I intentionally excluded from pyramid because you don't like the caps? Was that why I wasn't part of the original group of users?
174
00:14:59.465 --> 00:15:04.285
No. You can be you can be invited, I think. I'm no. I'm in. I'm in now. Island got me in.
175
00:15:05.145 --> 00:15:09.005
Well, the idea is that people would invite other people, but I I kept inviting everybody.
176
00:15:10.730 --> 00:15:18.830
So okay. Yeah. Yeah. The rebroadcast thing isn't isn't a totally irrelevant point either because, like, even if your notes are eventually making it to the big relays,
177
00:15:19.415 --> 00:15:22.555
there's that time delay. Even if it's, like, 1 minute, 2 minutes,
178
00:15:23.175 --> 00:15:24.695
Nostra feeds are so,
179
00:15:25.255 --> 00:15:26.795
so biased towards recency
180
00:15:27.330 --> 00:15:32.950
that the people who wanna see your stuff, are a lot less likely to see it because most most,
181
00:15:33.330 --> 00:15:35.005
notes are seen at the top of the feed.
182
00:15:35.485 --> 00:15:44.530
Yeah. Right. So the ultimate concern is People are saying people are saying that Zap ZapStream died. Is that relevant? Is that something you need to fix? Did ZapStream die?
183
00:15:49.070 --> 00:15:50.610
It wasn't it just wasn't updating?
184
00:15:51.845 --> 00:15:58.264
Obviously, no. Yeah. It's it's comments. The stream ended. There is no stream on Substream. Why did the stream end?
185
00:15:58.725 --> 00:15:59.225
Kieran,
186
00:16:00.610 --> 00:16:05.750
fix it. This is the censorship we're talking about, Matt. So this is what we need to fix.
187
00:16:06.745 --> 00:16:12.204
It says it's streaming on my side. Kieran's probably freaking out right now. The chat still works.
188
00:16:12.745 --> 00:16:14.445
Continue to use the chat freaks,
189
00:16:15.329 --> 00:16:19.029
while Kieran fix it. We're on YouTube. You know? Fuck Google, but
190
00:16:19.570 --> 00:16:21.269
it doesn't just There are other clients.
191
00:16:22.305 --> 00:16:25.285
There are other clients that can see the the live stream. Really?
192
00:16:25.745 --> 00:16:28.245
Amethyst? Yeah. I don't see it on Nostril though.
193
00:16:29.620 --> 00:16:31.480
I think it all just goes through ZapStream.
194
00:16:32.180 --> 00:16:36.920
No. No. No. Yeah. It's just not through events. So, like, on Amethyst, you can see it.
195
00:16:37.555 --> 00:16:40.455
There's this app stream server, which is different from the client,
196
00:16:40.915 --> 00:16:45.495
but it's tightly integrated, but it's different. I don't know if you It's probably your streaming service
197
00:16:45.875 --> 00:16:47.255
that's that's gone down.
198
00:16:47.620 --> 00:16:54.995
I don't think so because we're still on YouTube. I think you just marked the, the stream as ended in in some way
199
00:16:55.315 --> 00:16:59.015
Because I it looks like the event changed to to ended.
200
00:17:00.035 --> 00:17:07.950
I think it watches the stream. So whatever's reeling the stream to, to ZapStream went down. But if YouTube's still working, then that's bullshit.
201
00:17:08.890 --> 00:17:15.375
YouTube probably a some kind of fan out thing. Okay. Well, we're not gonna, like, troubleshoot this right now. Technical person to help us
202
00:17:16.315 --> 00:17:16.815
with
203
00:17:17.755 --> 00:17:20.655
this. Okay, guys. Let's let's continue the conversation.
204
00:17:21.755 --> 00:17:25.520
The the live chat is still working. Hopefully, it comes back.
205
00:17:27.420 --> 00:17:32.240
So so, I mean, the so Gossip is is a client that that does this,
206
00:17:32.955 --> 00:17:35.775
Would you say does this the right way? I mean, we have Mike here.
207
00:17:36.635 --> 00:17:41.135
Like, the whole point is it's it's supposed to read your your relay list and then
208
00:17:41.970 --> 00:17:47.990
automatically check the relays that you're broadcasting to depending on on how you're, you know, viewing your feed.
209
00:17:49.414 --> 00:17:53.275
Yeah. The Gossip client is the first one to do it this way as far as I'm aware.
210
00:17:54.054 --> 00:17:54.554
And
211
00:17:55.015 --> 00:17:55.835
by the time
212
00:17:56.215 --> 00:17:56.715
that
213
00:17:57.100 --> 00:17:58.080
was sort of formalized
214
00:17:59.019 --> 00:18:01.279
and we had niche 65 to say,
215
00:18:01.580 --> 00:18:05.200
here's here's an e here's a better way to do what Gossip was doing, but
216
00:18:06.085 --> 00:18:07.785
being more straightforward about it,
217
00:18:09.205 --> 00:18:11.865
there were already some 20 or 30
218
00:18:12.165 --> 00:18:13.065
nonster clients.
219
00:18:13.845 --> 00:18:14.345
So
220
00:18:14.900 --> 00:18:16.360
most of them had already developed
221
00:18:16.740 --> 00:18:20.760
you know, we're working on other things, and we're we're not thinking about that problem.
222
00:18:21.300 --> 00:18:24.555
And so that's where we're at today. We have all these developed clients
223
00:18:25.015 --> 00:18:27.995
that, well, they already built themselves up in a certain way,
224
00:18:28.455 --> 00:18:35.282
and to go back and change this now is, I think, a little bit a little bit trickier. There's a little bit,
225
00:18:35.712 --> 00:18:36.143
hesitancy.
226
00:18:36.573 --> 00:18:54.280
So that's where I think it's, you know, where all of us are trying to, you know, push push to get people to move more towards that because as Fayette Jobs points out, you know, if we don't if you don't check where someone posts, you're not gonna get their posts or you're gonna have to copy the posts.
227
00:18:54.900 --> 00:18:59.205
And then there's a you're relying on a copying service, which could be a sensor,
228
00:19:00.305 --> 00:19:03.765
or you're relying on a proxy service, which could be a sensor.
229
00:19:04.305 --> 00:19:05.125
And so,
230
00:19:05.505 --> 00:19:06.530
yeah, it's just
231
00:19:07.490 --> 00:19:09.190
but, yeah, the gossip client was
232
00:19:09.650 --> 00:19:13.190
was where this started. That's why people were calling it the gossip model.
233
00:19:15.735 --> 00:19:21.195
Yeah. Yeah. And now now there's quite a few clients that that implement this model. What other clients do?
234
00:19:21.710 --> 00:19:25.570
By the way, I fixed ZapStream. I just ended the stream and restarted it.
235
00:19:27.310 --> 00:19:34.424
Well, go ahead. Go ahead. Cool. Yep. I can speak for myself. And I I know NDK, you're putting you're adding support to it. Right, Pablo?
236
00:19:35.205 --> 00:19:38.184
No. It had support for the past,
237
00:19:39.040 --> 00:19:44.420
whatever, like, 6 months or something like that. I don't know. Yeah. Like, I don't know. For for a while,
238
00:19:45.120 --> 00:19:46.945
I'm improving support and improving and improving
239
00:19:56.980 --> 00:19:58.440
and everything after 2.1,
240
00:19:58.900 --> 00:20:00.280
which was a while ago,
241
00:20:00.659 --> 00:20:02.360
has outbox model by default.
242
00:20:03.394 --> 00:20:09.174
So I have a list Loom has it too. Yeah. Loom. Loom uses NDK, so so do it does.
243
00:20:09.634 --> 00:20:14.990
Nozzle. I don't know if Nozzle is still around. Canvas app, is that still around? I don't know. Snort
244
00:20:15.450 --> 00:20:16.669
uses it. Iris,
245
00:20:18.250 --> 00:20:19.789
OpenVive is in the process.
246
00:20:21.195 --> 00:20:22.975
So Nastur Hasid.
247
00:20:23.835 --> 00:20:28.735
Horrible name. Nastur Hasid. Horrible name. I didn't know. Yeah. With a u. Nastur with a u.
248
00:20:29.420 --> 00:20:32.160
One u. It should at least be 2 u's, but whatever.
249
00:20:33.020 --> 00:20:33.740
The the interesting
250
00:20:34.620 --> 00:20:40.365
it's kinda interesting though because, like, having the outbox model isn't really like a a Boolean switch.
251
00:20:40.905 --> 00:20:44.150
Yeah. It's it's incredibly complicated to get right,
252
00:20:44.870 --> 00:20:47.610
even if you're doing just the outbox part of it.
253
00:20:48.230 --> 00:20:51.690
Yeah. I was reviewing my my implementation this morning because,
254
00:20:52.285 --> 00:20:53.345
right now, feeds,
255
00:20:53.885 --> 00:20:54.705
don't exactly
256
00:20:55.245 --> 00:20:57.745
implement it because I have a cap on how many,
257
00:20:58.205 --> 00:21:05.929
relay connections the client can open at any given time. And so Coracle actually weights towards, the biggest relays currently. The fuck?
258
00:21:06.390 --> 00:21:10.405
Yeah. Sorry. I rugged you guys. I'm, I'm trying to fix it right now, but,
259
00:21:11.184 --> 00:21:18.920
and then there's the whole, like, bootstrapping problem. So what relay do you connect to first on a fresh on a fresh, like, install of your client?
260
00:21:19.300 --> 00:21:24.680
And how do you find everyone's Relay selections in the first place? That's a whole whole other
261
00:21:25.135 --> 00:21:25.855
thing that,
262
00:21:26.415 --> 00:21:29.955
that clients have to do right or wrong or or figure out some way.
263
00:21:31.295 --> 00:21:41.110
Yeah. Even the gossip client isn't doing everything right. Like, I as we were discussing DIP 65, I I realized I'm not looking for replies
264
00:21:42.235 --> 00:21:50.654
in the inbox of of the author of the event that I'm looking for replies in. I I don't I never read from an inbox. I only write to an inbox, unless it's my inbox.
265
00:21:51.669 --> 00:22:01.735
But that ends up being a really great place to find those replies because if all the other clients are using the outbox model, they will they will be putting replies into that inbox so I could find them all there.
266
00:22:02.275 --> 00:22:07.655
So now I have to go change my code. So I'm not even, you know, doing it all right in the gossip plan.
267
00:22:08.000 --> 00:22:15.360
I I don't think there's a kinda tweaking it a little bit. I don't think there's a correct way. I think there's, there are many ways to do it. There's
268
00:22:15.925 --> 00:22:24.985
each client can have a different approach. You can have, like, to think big manual. You have to click a button to add a new relay or accept connection to a new relay, or you can do it automatically.
269
00:22:25.450 --> 00:22:31.230
You can only fetch reply from relays that you you deem to be safe of spam or,
270
00:22:32.170 --> 00:22:37.995
into the release that are not safe of spam. You restrict that to some accounts only or something like that.
271
00:22:38.855 --> 00:22:39.595
You can
272
00:22:40.295 --> 00:22:44.190
pick relays only from the NIP 60 like the NIP 65
273
00:22:44.970 --> 00:22:49.950
list of relays that people publish, or you can use relay hits, which I think you should
274
00:22:50.635 --> 00:22:52.894
even as a secondary fallback mechanism.
275
00:22:53.995 --> 00:22:57.115
Can you use other other ways to track, like, the the
276
00:22:58.150 --> 00:23:02.250
to keep track of who where people are posting and how to connect?
277
00:23:03.030 --> 00:23:06.650
You can do one thing that I think some clients are doing. It's like like you optimize
278
00:23:07.424 --> 00:23:10.325
to only connect to some relays. You you like, you
279
00:23:10.784 --> 00:23:18.970
you pick relays that a lot of people are publishing to, and then you connect to those instead of connecting to, like, a small relay that's just one person who publishes
280
00:23:19.590 --> 00:23:21.290
as long as that person is covered.
281
00:23:22.150 --> 00:23:28.205
You can do that or you cannot do that. You can use a different rate to select the relays when you're asking for post.
282
00:23:29.545 --> 00:23:31.165
I don't think that's correct, man.
283
00:23:31.625 --> 00:23:35.820
I, yeah, I agree. A few a few months ago, like, 6 months or so ago,
284
00:23:36.360 --> 00:23:40.060
we had a bit of a discussion on the roster whether we should formalize
285
00:23:40.725 --> 00:23:42.585
how to implement the outbox model.
286
00:23:42.965 --> 00:23:57.570
And we realized that there it's more of an art than a science. It's it's something that we it's not settled on what's the right way. Like, for each of I don't think there is a right way. There is just a bunch of different approaches, and we are using the term outbox model or gossip
287
00:23:58.095 --> 00:24:03.075
as a as a very loose term. It doesn't necessarily need to be the outbox itself.
288
00:24:03.535 --> 00:24:05.395
It's like what the the
289
00:24:05.775 --> 00:24:07.475
the discussion we're having is about
290
00:24:07.920 --> 00:24:09.220
what's the smart way
291
00:24:09.600 --> 00:24:11.380
of reading and writing from relays.
292
00:24:12.080 --> 00:24:14.820
And when we want to like client relay selection.
293
00:24:15.544 --> 00:24:17.565
Like, how clients handle relay selection.
294
00:24:18.184 --> 00:24:29.330
Yeah. Yeah. Yeah. Exactly. I mean Like, one one of the things he said right now, we are at the stage where, say, for example, you have I I used this example today on on Noster,
295
00:24:29.710 --> 00:24:31.650
talking with, with Shavie 55.
296
00:24:32.115 --> 00:24:32.615
And
297
00:24:33.235 --> 00:24:41.174
imagine that you have 5 main relays and you are following Trump, and then Trump is banned from all those 5 relays.
298
00:24:43.130 --> 00:24:44.430
And he moves to relay.troopsocial.com,
299
00:24:46.010 --> 00:24:48.110
but nobody's read reading from relay.troopsocial.com.
300
00:24:48.970 --> 00:24:50.670
But they would if you switched to it.
301
00:24:51.935 --> 00:25:17.875
Well, actually, Trump had what? Like, a 100,000,000 followers? In truth social, he has 6,000,000 followers. Yeah. But truth social is a fucking shit coin. It fucking sucks. Like, if you just have to go into settings and just, like, change which relays you're looking at, like, it's a way lower lift. But it's it's a very bad idea to do that because, like, you're going to connect to truth social, and then you ask for all your posts from all the Bitcoiners you follow from the truth social relay that has not no one
302
00:25:18.179 --> 00:25:19.559
just has Trump. Like, this
303
00:25:19.860 --> 00:25:27.460
is so bad. The client should be architected. Wait. So True. I mean, there's 2 things here. Right? Like, Mike There are many things. Mike Mike there's many things here.
304
00:25:28.075 --> 00:25:29.775
And I saw pseudo Carlos,
305
00:25:31.275 --> 00:25:38.020
commented like, oh, this feels like one of my work calls. I get this is like a nostril work call is what's going on here, and I hope you guys enjoy it.
306
00:25:38.960 --> 00:25:42.020
We try and mix it up here on dispatch. I know I'm enjoying it. Okay.
307
00:25:42.434 --> 00:25:52.600
I because I I need Noster, and I love Noster, and I I use Noster. And I I wanted to be as censorship resistant as possible because I know the first censorship battle is gonna be against all caps,
308
00:25:52.980 --> 00:25:57.800
and we need this to be as as censorship resistant as possible before they try and stop my caps.
309
00:25:59.425 --> 00:26:01.125
The there's there's
310
00:26:01.745 --> 00:26:07.525
like, Mike is building a desktop only client, which I'm I'm not gonna say is easy, but it's easier
311
00:26:08.180 --> 00:26:15.480
than if people are coming on mobile. Right? Because, like, the big trade off here is, like, if if I'm hit if my mobile client is hitting a ton of relays,
312
00:26:15.985 --> 00:26:18.645
like, it's gonna hurt it's gonna suck up data,
313
00:26:19.185 --> 00:26:20.405
and it's going to
314
00:26:20.705 --> 00:26:24.405
hurt my battery life. Right? Am I correct in this No. You're you're
315
00:26:24.785 --> 00:26:25.380
you're not.
316
00:26:26.340 --> 00:26:46.880
So the way the way NOS works is when you fetch events, if when you fetch notes from other people you follow is you literally send your whole follow list to each relay saying give me everything you know from this 1,000 puppies. Right? Okay. Follow-up a 1,000 puppies. So if you're connected to the my to the main 5 relays,
317
00:26:47.419 --> 00:26:50.799
the main 5 relays are all going to have, most likely,
318
00:26:51.365 --> 00:26:54.665
the the events for all 1,000 of those puppies. Right?
319
00:26:55.365 --> 00:27:00.105
So you are essentially downloading if you're using 5 relays, you're downloading the same events
320
00:27:00.640 --> 00:27:02.000
valid and 5,
321
00:27:02.480 --> 00:27:20.390
5 times. Right? If you're connected to 10 relays, you're downloading the same event 10 times. Each event for all the people that you follow to, 10 times. In the outbox with the outbox outbox model, you will query the the relays where you know that these people are publishing. I just want Pablo from this relay.
322
00:27:21.090 --> 00:27:28.195
Exactly. But then you don't send Pablo to all the other 20 relays you're connected to. You said Pablo from this 1 or 2 relays. That's it.
323
00:27:28.914 --> 00:27:30.774
So it's actually less data consumption.
324
00:27:32.274 --> 00:27:39.400
The, the overhead that I think Vitor has pointed out is from establishing a bunch of connections to different relays, and that's like,
325
00:27:40.020 --> 00:27:40.920
I guess, SSL,
326
00:27:41.860 --> 00:27:42.360
encryption
327
00:27:42.740 --> 00:27:43.240
negotiation.
328
00:27:44.020 --> 00:27:51.615
And I don't know how true that is, but I trust Vidor. He he works on a mobile client and I don't. So I think that is substantial, but
329
00:27:52.575 --> 00:27:59.070
I'm I'm like what you said, Odell, I'm I'm lucky I'm on a desktop. I don't have to deal with this complex problem. But
330
00:27:59.690 --> 00:28:00.830
it seems to me,
331
00:28:01.370 --> 00:28:04.030
like like Pablo says, it's less data,
332
00:28:04.375 --> 00:28:07.915
which is oh, you're getting it from potentially a lot more connections.
333
00:28:08.295 --> 00:28:13.115
And so the only way that that could be more overhead is if the per connection overhead was high,
334
00:28:14.730 --> 00:28:18.270
and which makes me think of SSL because obviously this is all over SSL.
335
00:28:19.050 --> 00:28:20.350
But the the
336
00:28:20.865 --> 00:28:25.845
the cost to your battery life of establishing an SSL session is really in the public key,
337
00:28:26.465 --> 00:28:27.205
key exchange
338
00:28:27.665 --> 00:28:28.165
stuff,
339
00:28:29.110 --> 00:28:30.090
And the cost,
340
00:28:30.470 --> 00:28:34.810
to your battery life of verifying an event is is, like, 3 times worse
341
00:28:35.510 --> 00:28:35.910
with,
342
00:28:36.470 --> 00:28:37.290
store signatures,
343
00:28:38.245 --> 00:28:40.745
on on this curve that we're using. And so,
344
00:28:41.125 --> 00:28:43.145
to me, it seems like if your client
345
00:28:43.605 --> 00:28:45.544
on a phone is verifying events,
346
00:28:46.540 --> 00:28:50.060
that's far more of your battery drain than the,
347
00:28:50.700 --> 00:28:57.415
the connection overhead of SSL. And so even in this case, it seems that the app box model would be less battery drain
348
00:28:58.195 --> 00:29:04.770
because you're not getting, you know, 101 the same event 10 times, and you're not verifying the same event 10 times.
349
00:29:05.870 --> 00:29:09.970
Yeah. There there are ways around that. Like, so in Coreacle, I keep a cache of,
350
00:29:10.925 --> 00:29:17.745
event hashes to signatures. I think I stole this from NDK, actually. So I don't I don't validate the same event multiple times.
351
00:29:18.460 --> 00:29:25.920
But that's like that's an in the weeds thing. But, also, I wanna point out, like, this whole network topology thing is one conversation, but the optimizations,
352
00:29:26.995 --> 00:29:31.575
there's that's a whole different conversation. So I'm I'm very much in favor of,
353
00:29:32.195 --> 00:29:32.695
proxies,
354
00:29:33.235 --> 00:29:44.795
and these can take all kinds of different forms. I I wrote one about a year ago. A number a number of them have been written. And the proxies can do a lot of this deduplication for you. And even if you trust it, it can,
355
00:29:45.115 --> 00:29:45.935
check signatures
356
00:29:46.315 --> 00:29:50.850
for you. If you really trust it, you can give it your private key, and it can sign things for you.
357
00:29:51.410 --> 00:29:53.990
We don't have to debate the trade offs with that. But,
358
00:29:54.610 --> 00:30:12.700
you know, if you're talking to a single proxy that you trust and that proxy is swappable, you get all the censorship resistance, you get the network topology that you want, and you only have to establish a single network connection and download events a single time. So, like, you know, just keep that in the back of your mind when you're thinking about all this stuff.
359
00:30:13.000 --> 00:30:27.600
Like, battery life and connections and validating signatures, these are not real reasons to not use the gossip or the the outbox model. I can't stop using the saying gossip. I'm sorry. Gossip's a better gossip's a better name than outbox.
360
00:30:27.900 --> 00:30:31.600
It's a weird it's a horrible name, man, because it means something different things.
361
00:30:33.054 --> 00:30:38.835
But why do I call it gossip? It knows who it is. It's Twitter model. Why did out Outbox get chosen as the name?
362
00:30:40.015 --> 00:30:45.080
It it's more representative of of what's going on, really. But it's also not a great name.
363
00:30:45.540 --> 00:30:49.225
It's really We need, like, a naming podcast on this space.
364
00:30:49.785 --> 00:30:53.804
I have I have 2 naming podcasts. It wasn't meant to be a marketing name.
365
00:30:54.105 --> 00:30:57.885
It was meant to help describe describe what's going on to other developers.
366
00:30:58.659 --> 00:31:09.845
Got it. Yep. People have is the only main People have an inbox and an outbox. If you wanna send something to them, you put it in their inbox. If they put it in their outbox, you can look there to see all the things they posted. That's basically it.
367
00:31:10.225 --> 00:31:13.525
So the outbox is is my small relay that I'm running?
368
00:31:13.905 --> 00:31:14.405
Potentially.
369
00:31:15.025 --> 00:31:20.110
Or there's someone else's running? You can have you can post to 10 relays. I wouldn't, but you can post
370
00:31:20.650 --> 00:31:25.790
to, you know, multiple relays and that your outbox is actually multiple relays. Okay. So let's let's
371
00:31:26.835 --> 00:31:36.760
let's I mean, let's start naming names because I feel like it you're, like, pussy footing around the names of of of clients and stuff, and and it makes it more difficult conversation.
372
00:31:37.220 --> 00:31:42.520
So is the biggest concern here of, like, how Domus is handling things? Like, is Domus just
373
00:31:43.125 --> 00:31:46.024
like it breaks if if you're not publishing
374
00:31:46.325 --> 00:31:47.225
to big relays?
375
00:31:47.684 --> 00:31:48.184
No.
376
00:31:49.205 --> 00:31:51.705
Nothing is broken right now. From big relays.
377
00:31:52.330 --> 00:31:56.750
Go, Fiescher. Nothing is broken right now. We're just preparing for the future. Like,
378
00:31:57.450 --> 00:31:59.470
if Nasr is not censorship resistance,
379
00:32:00.265 --> 00:32:05.645
then I don't I don't see the point. Like, I don't I don't know what the the people that are not
380
00:32:06.745 --> 00:32:08.205
supporting the outbox model,
381
00:32:08.910 --> 00:32:10.770
why do they like Noster if
382
00:32:11.230 --> 00:32:14.370
if Noster is not censorship resistant? Or why why did they came?
383
00:32:14.830 --> 00:32:17.490
It's like the a bunch of developers writing clients.
384
00:32:18.805 --> 00:32:19.325
I know, like,
385
00:32:20.085 --> 00:32:20.585
JB
386
00:32:21.445 --> 00:32:23.225
55 points is is that you
387
00:32:24.245 --> 00:32:33.200
can manually go there and add a new relay whenever someone is censored. But I I don't think that I think the client must help you somehow to find out that someone is
388
00:32:34.080 --> 00:32:36.535
automation because the users aren't gonna fucking do it.
389
00:32:36.915 --> 00:32:43.015
Yeah. Yeah. Like, the default right now, the default is that when if someone is censored, if someone is not using,
390
00:32:43.470 --> 00:32:46.130
the main relays or the relays that you are using,
391
00:32:47.149 --> 00:32:56.995
they simply don't show up. Right? You follow them, and you think, oh, this person is never publishing and is never posting anything. It's like a shadow bunny. You they simply don't show up. You don't know that if something is happening.
392
00:32:57.455 --> 00:32:58.434
But In theory.
393
00:32:58.815 --> 00:33:00.274
But I think it's time
394
00:33:00.575 --> 00:33:01.475
to to mention,
395
00:33:02.210 --> 00:33:03.030
because of blaster,
396
00:33:03.490 --> 00:33:12.534
it it does show up. Main or main? Ends up. Yeah. No. No. Not really. Not really. I I've been using I've been using small relays for the past 5 days. And
397
00:33:12.835 --> 00:33:13.815
on on Deimos,
398
00:33:14.914 --> 00:33:35.065
most of the responses don't have like, most of the responses don't have what they're responding to, I cannot see. And then I moved to primal, and then I see what the response was to. But it's not in theory. It's it's already happening. Like Yeah. And the primal is not a solution. Right? Once again. Primal is not a solution that scales. Yeah. It it's part of a solution. When it will scale, centralization
399
00:33:35.445 --> 00:33:36.264
always scales.
400
00:33:37.205 --> 00:34:01.230
Yeah. Yeah. It's, it is centralization, but making that indexer swappable would be would be It is swappable. It already is swappable. There you go. It's in settings. Yeah. But what I would like is a good step. What I would like is a good step. No. No. Well, the proprietary format is bad, but the the the architecture is is okay. Well, what I would like is for your your client to like, the primal client to automatically,
401
00:34:01.644 --> 00:34:06.865
like, dub because the the big thing the caching server is trusted with is it can omit
402
00:34:07.404 --> 00:34:11.790
notes that exist. Right? So I think there's something there to be said about, like,
403
00:34:12.250 --> 00:34:14.190
doing a sample of your relays.
404
00:34:14.650 --> 00:34:27.500
And if you notice your caching serve like, if the client notices the caching server is lying to you about notes that exist, it automatically switches to someone else's caching server. Like, you have, like, extra caching servers, like, in settings,
405
00:34:27.960 --> 00:34:30.220
and it'll just automatically flip over.
406
00:34:31.000 --> 00:34:32.220
Does that help at all?
407
00:34:32.805 --> 00:35:01.920
Well, there are different kinds of caching. Right? There's you've got caching, but then you also have indexing, and those are kinda 2 different things. Indexing is a particular cache, but it's meant to help you find the content in other places. Caching is is like a more more comprehensive scenario. And then there's stuff like search, which is a different interface for the same data, and that is a whole different set of trade offs. But, you know, like, the indexing part of it is really important. And I think the best solution we have for indexing so far is purple pages,
408
00:35:02.619 --> 00:35:03.680
which Pablo made.
409
00:35:04.220 --> 00:35:11.485
And that just kinda looks around and grabs 10,000 twos and zeros and threes. Is that right, Pablo? That's right. Yep.
410
00:35:11.945 --> 00:35:13.645
So you can pretty reliably,
411
00:35:14.789 --> 00:35:16.630
look at Purple Pages to grab,
412
00:35:17.349 --> 00:35:29.295
the list of relays that any given user posts to and then go there for their actual posts. And And that means that Purple Pages doesn't have to be super huge. It doesn't have to keep these giant indexes of Zap counts and all this stuff.
413
00:35:29.970 --> 00:35:33.270
And, you know, the the primal caching server is just too thick,
414
00:35:33.890 --> 00:35:35.430
and it doesn't need to be thick.
415
00:35:36.565 --> 00:35:39.785
Hey. Where does how does purple pages get its data?
416
00:35:40.885 --> 00:35:43.305
It's just it's just indexing. I wrote an indexer,
417
00:35:43.640 --> 00:35:49.820
but it's only getting those kinds and storing them. And for the longest time So it's it's copying events?
418
00:35:50.440 --> 00:35:53.625
Yeah. Yeah. It's just copying events. Now a lot of people publish to them,
419
00:35:54.165 --> 00:35:56.665
so it all it only accepts 03,110,002.
420
00:35:58.405 --> 00:36:02.585
But, yeah, for the longest time, I was running it on a $5 VPS just to prove the point.
421
00:36:03.109 --> 00:36:09.289
Then I realized that I was the only one that knew that it wasn't a $5 VPS, but it's a very, very But now we all know.
422
00:36:09.670 --> 00:36:17.195
Now we now we all yeah. Trust me. But, I actually moved into my main relay because I was thinking I'm spending $5 for nothing here.
423
00:36:17.975 --> 00:36:26.539
No. I'm gonna change I'm gonna change my code to refresh relay lists way more often than so we can bring your VPS down a little. Wait. Wait. Let's just go.
424
00:36:27.640 --> 00:36:34.345
So let's just bring it back to real world. And first of all, you know, is Pablo's relay a small relay? Like, I saw, like, Dorsey
425
00:36:34.725 --> 00:36:40.200
switched his relay list, and then he added Pablo's relay. Like, is this all just a conspiracy to, like, get him over to your
426
00:36:40.680 --> 00:36:45.180
relay? Like, why is your relay considered a small relay? I feel like that's a big relay.
427
00:36:47.335 --> 00:36:57.619
I'll do profit. Yeah. I I just I just want to censor all caps of ale. It's not about profit. It's about censoring a billionaire. Like, it's there's there's it's enjoyable. That's the end game. Yeah. Yeah. That's definitely.
428
00:36:58.800 --> 00:37:01.460
So No. I do wanna say that that big relays are not bad.
429
00:37:01.840 --> 00:37:05.265
This is not about using only small relays. Big relays have,
430
00:37:05.744 --> 00:37:06.724
plenty of utility.
431
00:37:07.825 --> 00:37:19.820
They they do support some of those optimizations. So if you post to a big relay and you're not censored, then everyone can just connect to the one relay and get everything they need. That's fine, but it should be treated as an optimization, not as a default.
432
00:37:21.000 --> 00:37:22.620
It it just needs to be possible
433
00:37:22.985 --> 00:37:33.319
for clients to find people who have been banned from the big relays. Yeah. Yeah. Let's And that's not a heavy lift, really. Well, let I mean, let's yeah, go on. Let me put that slightly different. Mike.
434
00:37:33.940 --> 00:37:44.155
I'll put that a little bit different and say, you know, I don't actually think we should all be getting on the small relays. I don't think we should all be spreading out, and everybody's setting up their own small relays. Good.
435
00:37:44.875 --> 00:37:51.450
I think we should all generally, you know I don't know how many 20, 30 relays is plenty. We've got a lot more than that now,
436
00:37:52.390 --> 00:37:54.490
you know, because they're not all gonna get censored.
437
00:37:56.069 --> 00:37:58.970
They might. When when something starts happening,
438
00:37:59.735 --> 00:38:04.075
people are gonna have to jump the ship of those relays and go set up new ones.
439
00:38:04.535 --> 00:38:14.020
And you need to have some process where that automatically, you just keep following them. And that's what this outbox does. So I mean, yeah, there's some It's it's it needs to be possible
440
00:38:14.320 --> 00:38:17.860
to set up smaller guys, but what doesn't mean we should all be doing that right now?
441
00:38:18.285 --> 00:38:22.705
There's some helpful back of the envelope math I did yesterday that kinda puts this this situation
442
00:38:23.085 --> 00:38:34.485
in a little bit clearer terms. So if if if you have a 10% chance of being censored from any given relay, if you connect to 1 relay, then you have a 10% chance of being censored. If you connect to 2 relays and,
443
00:38:34.805 --> 00:38:39.065
you have a 10% chance being censored from either one, you now have a 1% chance.
444
00:38:39.650 --> 00:38:43.910
If it's 3, you have a point 1 percent chance. 4 is point 0 1% chance. So
445
00:38:44.369 --> 00:38:45.170
you you,
446
00:38:45.809 --> 00:38:51.845
small amounts of redundancy go a really long way towards censorship resistance. That math is very wrong because there's censorship.
447
00:38:52.545 --> 00:39:03.420
If you're a per a person that's likely to be banned from one relay, you're more likely be been from all the others too. So Yeah. Yeah. But, like, only one of those has to be one that you run or that you trust.
448
00:39:03.720 --> 00:39:13.704
So, like and that's that's totally, like, ignoring any kind of relay selection heuristics. If you're naive and you just, like, choose whatever relays, that's that's, like, your worst case scenario.
449
00:39:14.349 --> 00:39:14.849
So,
450
00:39:16.190 --> 00:39:25.845
but, like, you know, the way blaster works is it's it's sending your notes to 100 of relays. And now you have a 10 to the negative 300th power chance of being,
451
00:39:27.025 --> 00:39:29.845
censored, and no one needs that. Like, it's not worth,
452
00:39:30.650 --> 00:39:44.654
you know, storing those notes in in so many duplicates. Well, I mean, I think the biggest issue here is, like, we don't have spicy enough content on Nostra yet. Like, people should be trying to push the envelope. Like, there's there's not much sensor worthy material out there yet.
453
00:39:45.030 --> 00:39:54.810
And I feel like I don't wanna see anything worse than what I've seen. I I feel like you start we'll start to see like, it's all about incentives. Right? And so it's not only about incentives. Like, it's about,
454
00:39:55.305 --> 00:39:59.085
like, open systems only really evolve and improve with pressure.
455
00:39:59.705 --> 00:40:04.680
And it's it's we haven't really seen any kind of censorship pressure, and it's hard for me to imagine,
456
00:40:05.860 --> 00:40:12.695
you know, making substantive changes or clients improving or user behavior improving until, like, people actually are getting
457
00:40:13.955 --> 00:40:15.655
censored from major relays.
458
00:40:17.075 --> 00:40:23.339
Well, we don't have enough people we don't have enough people using also, but we should be prepared for when that happens. So,
459
00:40:23.880 --> 00:40:30.765
no one's being censored. I'm not being censored by the big relays even though I choose to only post through the small relay.
460
00:40:31.625 --> 00:40:33.885
Yeah. And then You need spicier content.
461
00:40:35.340 --> 00:40:36.940
What kind of spicier content? That's
462
00:40:38.060 --> 00:40:39.360
I can't think of anything.
463
00:40:41.820 --> 00:40:45.174
Wait. So let's talk about a real world example. Right? Real world example,
464
00:40:46.914 --> 00:40:54.430
Will woke up hungover one day. It was like, holy shit. Like, this video of me on Noster is super embarrassing. Just deleted the whole Domus relay.
465
00:40:54.810 --> 00:40:57.285
Biggest relay in the world. Just decided
466
00:40:57.585 --> 00:41:01.045
decided you wanted to delete the relay. Were any notes lost?
467
00:41:02.145 --> 00:41:05.204
Probably not. I think there were some note notes lost. Yes.
468
00:41:05.590 --> 00:41:08.250
I think so. I've had a harder time finding things at least.
469
00:41:09.190 --> 00:41:20.635
But that doesn't matter. It was only old notes that were Is this theoretical? Is this theoretical or did that that didn't happen? Right? No. He did. He did it in November, I think. October, something like that. Maybe he did do it recently as well. But
470
00:41:21.300 --> 00:41:24.680
he literally just woke up in the morning and was, like, fuck this shit. Delete.
471
00:41:25.060 --> 00:41:26.520
Just deleted the relay.
472
00:41:27.140 --> 00:41:29.960
And I I didn't notice any notes lost. I mean,
473
00:41:30.565 --> 00:41:33.945
if a note was lost and you didn't notice, did it actually get lost?
474
00:41:36.965 --> 00:41:38.825
I can't find my first note anymore.
475
00:41:39.359 --> 00:41:43.859
So that's what you should've used blaster. Maybe you should've posted it to as many relays as possible.
476
00:41:46.400 --> 00:41:56.760
I do have an archival relay. I don't know what else. People, even if there's no outbox model, most people, they're they're configuring more than one relay. And so the note if one relay goes down, doesn't get lost.
477
00:41:57.460 --> 00:42:00.120
And then on top of that, you've got things like blaster
478
00:42:00.660 --> 00:42:02.520
or even clients that copy
479
00:42:03.155 --> 00:42:05.175
other people's notes from relay to relay,
480
00:42:06.435 --> 00:42:09.815
that sort of replicate that stuff. And so it's kind of like we're all,
481
00:42:10.400 --> 00:42:13.700
you know, it's kinda like we're riding bicycles with training wheels on.
482
00:42:14.480 --> 00:42:14.980
And,
483
00:42:15.360 --> 00:42:16.020
you know,
484
00:42:17.414 --> 00:42:20.474
we we don't know who's actually able to ride a bicycle
485
00:42:21.174 --> 00:42:25.194
because we can't I can't see if my software was working or not because,
486
00:42:25.550 --> 00:42:26.369
you know, it just
487
00:42:26.670 --> 00:42:28.130
the problems get patched
488
00:42:28.670 --> 00:42:43.940
by this this event copying. I mean, it it it solves real problems. Right? But then we don't know the problems are there, so we can't fix them. So it'd be really nice if there wasn't any event copying because then we could easily see that your my client's not working, and and then we'd fix it.
489
00:42:44.980 --> 00:42:47.000
But I don't know how to make that world happen.
490
00:42:47.540 --> 00:42:50.760
Yeah. Well, it's it's interesting because you can't stop blaster. Like,
491
00:42:51.300 --> 00:42:53.400
unless relays choose to protect themselves,
492
00:42:53.825 --> 00:42:57.845
by authenticating who's writing to them, then Blaster is just part of the
493
00:42:58.305 --> 00:42:59.045
the situation.
494
00:42:59.345 --> 00:43:02.964
And, like, I agree with Mike. It would be a lot easier to solve,
495
00:43:03.660 --> 00:43:06.080
the these outbox model problems,
496
00:43:06.460 --> 00:43:08.880
from the client side if we didn't have blaster.
497
00:43:09.180 --> 00:43:26.640
So it would be nice if blaster would would cut it out for a while so we can feel the pain. Because you were saying, like, you know, you experience pressure and then you solve the problem. We're not experiencing the pain that exists as, like, a core part of the protocol. And I'm I'm pretty sure, like, Tony doesn't believe in Nostra as, like,
498
00:43:27.184 --> 00:43:34.885
a censorship resistant long term solution. I think he said that in his blog post from last year when he joined. So, you know, does he does what they have?
499
00:43:35.369 --> 00:43:38.750
Does he? Oh, man. Well, that says everything, I guess.
500
00:43:40.090 --> 00:43:48.545
But, like so he's not incentivized. He's not interested in solving this problem, which is fine. Like, you know, he he's, we need cats to knock things over.
501
00:43:49.085 --> 00:43:57.900
So now we have to figure out how do we react to blaster? How do we how do we I don't think even blaster is the is the worst culprit. Like, I think people will naturally
502
00:43:58.600 --> 00:44:00.620
select the big rebate, like nos.lawanddemos,
503
00:44:02.515 --> 00:44:09.895
nos. Wine, and then they will just publish to these and read from these, and this will happen naturally. And the network will centralize naturally without.
504
00:44:10.350 --> 00:44:12.450
And if you're if you're not in these, then
505
00:44:13.310 --> 00:44:16.050
then then you're not heard. And and people can also
506
00:44:16.510 --> 00:44:17.730
rebroadcast manually.
507
00:44:18.035 --> 00:44:23.415
Like, I think there were some bots that were broadcasting stuff. Like, the the the primal the primal
508
00:44:24.115 --> 00:44:28.280
service has some kind of listener that listens to all the relays in existence.
509
00:44:28.900 --> 00:44:36.935
And there are there were there were many other bots in the past that were not blaster. They were just broadcasting stuff.
510
00:44:37.395 --> 00:44:37.895
So
511
00:44:38.275 --> 00:44:40.214
it's not it's not Tony's fault.
512
00:44:41.470 --> 00:44:42.850
Blame Tony. But I
513
00:44:44.030 --> 00:44:50.525
Yeah. And and and, broadcasting has a lot of good use cases too. So, like, even in the NIP 65 spec, it says,
514
00:44:51.645 --> 00:44:55.184
kind 10,002 should be broadcasted as aggressively as possible.
515
00:44:55.565 --> 00:44:56.704
And most relays,
516
00:44:57.484 --> 00:45:01.780
can afford to keep an index of of those, Even if there's 9,000,000,000
517
00:45:02.080 --> 00:45:10.575
of them, like, that is not a huge relay. It's it's a fairly big relay to store 9,000,000,000 records, but it's like, that actually does scale,
518
00:45:11.035 --> 00:45:12.015
reasonably well.
519
00:45:12.795 --> 00:45:22.559
So broadcasting that kind of stuff so that you can find the actual content you're looking for, that's a great trade off. Well, but, like, I mean, first of all, let's unpack this really quick. Like, blaster is
520
00:45:23.019 --> 00:45:25.519
is is this relay that's hosted at noster.munitywallet.com.
521
00:45:27.075 --> 00:45:31.175
And if you broadcast to that, it broadcasts to every known relay.
522
00:45:31.555 --> 00:45:36.214
And if if that relay will accept your notes, it accepts your notes, and now you're on that relay.
523
00:45:37.800 --> 00:45:41.580
From a user perspective, like, once again, coming back to incentives. Right?
524
00:45:43.080 --> 00:45:43.980
As a user
525
00:45:44.665 --> 00:45:54.205
who is actually in like, wants to use Nostra as a censorship resistant communication medium, a way for me to connect directly to the people I care about,
526
00:45:55.290 --> 00:45:55.790
without
527
00:45:56.090 --> 00:45:56.590
without
528
00:45:56.970 --> 00:46:00.190
being censored and being blocked and and and being stopped.
529
00:46:01.130 --> 00:46:05.295
Isn't my incentive to broadcast to as many relays as possible? Like, I don't understand
530
00:46:06.075 --> 00:46:15.970
like, I understand you guys trying to make a point about, you know, you should use small like, I I broadcast to a small relay, relay dot bitcoinpark.com. Like, only members of Bitcoin Park
531
00:46:16.270 --> 00:46:29.785
can write to that relay. But then I also broadcast to any fucking relay that will accept my notes. And if they don't wanna accept my notes, they shouldn't accept my notes. But if they're gonna accept my notes, like, I want that seed to spread as far and wide as possible.
532
00:46:30.829 --> 00:46:33.069
Yeah. Exactly. It's it it doesn't seem
533
00:46:33.790 --> 00:46:42.165
You want that seed time person to get here. It's sorry. Go ahead. Oh, really? You're gonna just do that to me on my own show? I'll explain it. I'll explain it. But go ahead, Pablo.
534
00:46:42.465 --> 00:46:51.130
No. No. No. You go ahead. Explain it. Okay. Yeah. So it's it's it's high time preference behavior. You're you're taking advantage of free resources that other people are providing,
535
00:46:51.990 --> 00:47:06.020
to serve your own, your own interests. And, like, yeah, those resources are there. They're not protecting themselves. So I think that's how how, like, blaster eventually dies is relays realize, you know, I need a way to not have to scale my VPS
536
00:47:06.400 --> 00:47:18.670
past $20 a month. And so I guess I'll upgrade to a relay implementation that allows me to protect myself. So and that introduces its own problems. It's kinda it it is interesting. If you if you say, I'm only accepting
537
00:47:28.184 --> 00:47:29.724
like, that's a Relay's prerogative,
538
00:47:30.025 --> 00:47:33.005
and that is gonna result in Relay's having different datasets,
539
00:47:33.305 --> 00:47:37.565
which is going to make it impossible for blaster to function, and it's going to incentivize
540
00:47:38.250 --> 00:47:45.690
the, the outbox model. So, like, over the long term, that's just what's gonna happen. It's that we need to, like, build this now and,
541
00:47:46.090 --> 00:47:49.545
blaster makes it kinda hard and relays that accept public notes.
542
00:47:51.685 --> 00:47:54.665
So you want less relays to accept public notes?
543
00:47:55.150 --> 00:47:57.730
Yeah. I've always been about that. Relay decommodification
544
00:47:58.030 --> 00:48:04.130
is what I call it. And it's like, you know, Fia Jaff has talked about this too, but it's, making relays interesting.
545
00:48:04.555 --> 00:48:10.255
You know, right now, it's like, if I wanna join a relay, it's like, well, I'll choose the one with the lowest ping
546
00:48:10.795 --> 00:48:24.735
and the fastest response times and the biggest database. That it's all like computational characteristics that that inform relay selections right now. But if it's like, well, I wanna talk about, you know, like, I don't know, Dustin Hoffman
547
00:48:25.035 --> 00:48:25.535
podcast.
548
00:48:26.155 --> 00:48:31.775
Bitcoin Park. That's a better example. I don't know. I don't know why Dustin Hoffman hopped hopped in my head, but like very specific.
549
00:48:32.260 --> 00:48:34.840
Very telling. R r slash Dustin Hoffman.
550
00:48:35.460 --> 00:48:36.280
Very specific,
551
00:48:36.900 --> 00:48:38.500
you know, areas of interest.
552
00:48:39.060 --> 00:48:40.795
You know, relays can support that,
553
00:48:41.835 --> 00:48:43.835
if if the owner is,
554
00:48:44.555 --> 00:48:44.875
is,
555
00:48:45.434 --> 00:48:47.775
aligned with with that interest. Right?
556
00:48:50.290 --> 00:48:54.870
Yeah. I don't see I don't see how relays are going to just allow anybody
557
00:48:55.410 --> 00:48:56.070
to post,
558
00:48:56.565 --> 00:48:57.065
some
559
00:48:58.244 --> 00:49:02.025
some will will abuse that and just fill it up with a bunch of junk events
560
00:49:02.484 --> 00:49:04.105
or use it as a disk drive,
561
00:49:04.405 --> 00:49:04.984
you know,
562
00:49:05.329 --> 00:49:11.750
You know, put take a movie and slice it into a 1,000,000,000 pieces of different events and stick them all up there to share movies.
563
00:49:13.035 --> 00:49:17.855
There's gonna have to be you know, paid relays is where it's moving towards, I think.
564
00:49:20.395 --> 00:49:22.335
And so there needs you know?
565
00:49:25.000 --> 00:49:26.700
I don't know where I was going with that.
566
00:49:27.160 --> 00:49:31.020
I mean I mean, I guess your point is paid relays are gonna be more of a thing.
567
00:49:31.905 --> 00:49:35.925
But I assume not, like, pay once because that also doesn't seem to make sense.
568
00:49:36.305 --> 00:49:44.750
Yeah. We need some pay once the pay once thing was supposed to be about spam, like, you're not you're not accepting notes for anyone. It's not it is never supposed to be
569
00:49:45.530 --> 00:49:48.270
a business model. I don't know why people thought that.
570
00:49:49.130 --> 00:49:50.955
It's just an interest payment mechanism.
571
00:49:52.295 --> 00:50:00.850
But there are all kinds of ways to make special purpose relays. Like, paying is one one way. There's, you know, relays might wanna pull in particular kinds of content,
572
00:50:01.470 --> 00:50:11.015
to preserve it. There might be archival relays that only accept notes after a certain period, or there might be up to date relays that only accept new notes and then purge their cash.
573
00:50:11.395 --> 00:50:13.335
There might be relays that represent,
574
00:50:13.714 --> 00:50:27.875
actual communities. So based on, a social graph, you can just have, like, a seed pub key and everyone they follow. I mean, pyramid is a good example of this. There's relays that only accept certain kinds. So purple pages is an example of that. They all have functions,
575
00:50:28.335 --> 00:50:30.674
and we need a way to differentiate one from another,
576
00:50:31.460 --> 00:50:36.040
both on a, like, client level and on a user level so that people can make intelligent selections.
577
00:50:36.500 --> 00:50:41.695
And, obviously, like, this shouldn't be offloaded onto users because that's a terrible user experience.
578
00:50:42.715 --> 00:50:44.895
But, you know, the the network should
579
00:50:45.195 --> 00:50:46.255
sort of partition,
580
00:50:46.715 --> 00:50:47.215
naturally,
581
00:50:47.850 --> 00:50:50.190
as people use different things for different purposes.
582
00:50:50.570 --> 00:50:51.070
So
583
00:50:53.370 --> 00:50:57.070
Yeah. There's some problems with with this, especially the user experience
584
00:50:57.835 --> 00:51:03.295
and how do they know which use which relays to choose for their outbox or for their inbox.
585
00:51:04.920 --> 00:51:05.660
New users
586
00:51:06.040 --> 00:51:10.140
are probably gonna wanna sign up somewhere that doesn't charge them,
587
00:51:11.160 --> 00:51:13.900
but then you have an open relay again, which can be abused.
588
00:51:15.505 --> 00:51:22.484
And then for an inbox, well, if if I wanna accept, how do you make it so that your relay accepts any note that tags you?
589
00:51:23.425 --> 00:51:24.085
I mean,
590
00:51:25.150 --> 00:51:32.130
what I did in the Chorus relay was this. It you relay accepts any note that tags you, but doesn't send it back out again, so it's can't be abused.
591
00:51:32.505 --> 00:51:39.644
And then the moderator has to actually say that, okay, anything from this user or or any of these notes is allowed to go back out again,
592
00:51:41.040 --> 00:51:45.859
so that it could still be an inbox without without opening up that that abuse possibility.
593
00:51:46.960 --> 00:51:48.820
But this is difficult, you know,
594
00:51:49.435 --> 00:51:52.095
figuring out how to get the relays right is a whole another
595
00:51:52.475 --> 00:51:55.195
whole another challenge. It's that's quite difficult. But
596
00:51:57.400 --> 00:52:07.875
Yeah. And then there's monetization, of course. You know, we've talked about the cost side a little bit where small relays get bloated with a bunch of useless content, and then that increases their cost. But relay monetization
597
00:52:08.655 --> 00:52:20.070
is an unsolved problem for the most part, especially for these, like, public bootstrapping relays, where if you got a new user and they wanna join the network, they do need, like, a public right thing like domus or no.law.
598
00:52:20.849 --> 00:52:21.250
And,
599
00:52:21.935 --> 00:52:28.835
you know, how those relays actually make money. It has to be attached to some other business and, like, may maybe to a client,
600
00:52:29.460 --> 00:52:42.474
but I'm not sure how that what that would look like. I mean, like, Bitcoin Park is simple. It's like, okay. They're members of Bitcoin. And, like, community realize I mean, I know how about you a lot of your perspective is like, I want to move my church group off of Facebook Messenger.
601
00:52:43.655 --> 00:52:53.970
It's like a church group is like a very easy like, of course, like a community relay, like, that makes sense to me. There's other funding mechanisms, and this is just one value add that the community organizer,
602
00:52:55.070 --> 00:52:56.290
whatnot is offering.
603
00:52:57.075 --> 00:53:00.115
Yeah. That can be an on ramp for sorry, Pablo. One
604
00:53:00.595 --> 00:53:02.375
that can be an on ramp for certain people,
605
00:53:02.755 --> 00:53:03.795
but not for everyone.
606
00:53:04.115 --> 00:53:10.330
Go ahead, Pablo. Okay. But play play that part out. Play that case where you onboard your church,
607
00:53:10.630 --> 00:53:12.230
and they are in tune after their party
608
00:53:13.125 --> 00:53:16.425
participating in the community with with the the the churchgoers
609
00:53:16.725 --> 00:53:18.265
within that church community,
610
00:53:18.725 --> 00:53:35.215
but they start using Nostar beyond that community. And they're writing to their church relay stuff that is more public, so kind ones, global post, the Twitter, the micro blogging experience. But now because they're not writing to Deimos Relay, because they weren't onboarded via demos, they weren't onboarded via primal,
611
00:53:36.234 --> 00:53:39.535
they maybe maybe their their events are blasted outside.
612
00:53:40.160 --> 00:53:45.220
But now if they're using demos, for example, they're not gonna see responses to their content.
613
00:53:45.520 --> 00:53:55.224
So this is the part if you play out the part where a bunch of communities onboard people into Nostr, that's when the outbox model becomes even more and more and more clear.
614
00:53:58.470 --> 00:54:00.010
Yeah. I totally agree with that.
615
00:54:00.789 --> 00:54:04.635
Yeah. And, like, even if your community relay has public read,
616
00:54:05.115 --> 00:54:08.815
and your 10,002s are replicated across the network as they should be,
617
00:54:09.275 --> 00:54:11.215
if if you have a client that doesn't support,
618
00:54:12.315 --> 00:54:15.260
support the the outbox model, it's not gonna see stuff,
619
00:54:15.720 --> 00:54:19.500
unless it gets blasted, and then, you know, we're back kind of in the same situation we're in now.
620
00:54:20.095 --> 00:54:24.115
Yeah. Unless unless it get no. No. But unless it gets blasted. But if the community
621
00:54:24.494 --> 00:54:29.714
relay that you're running for your church is right protected as it should be, then replies
622
00:54:30.320 --> 00:54:31.700
might not go into the relay.
623
00:54:32.560 --> 00:54:33.060
Right?
624
00:54:33.520 --> 00:54:34.340
Right. Yeah.
625
00:54:34.880 --> 00:54:41.535
And you follow say say you follow Matt, but Matt is not part of that church. Now you're reading only from the community relay,
626
00:54:41.995 --> 00:54:45.295
but you think you're following Matt. You just think that Matt Matt
627
00:54:45.675 --> 00:54:53.680
never posts anything. Well, I mean, I would Yeah. Exactly. As it stands right now, like, if they would accept my notes, I am broadcasting to their relay.
628
00:54:55.635 --> 00:54:58.855
Yeah. But that's we we established that this high time preference.
629
00:54:59.795 --> 00:55:01.575
No. No. No. No. No. No. It it it it it has
630
00:55:01.875 --> 00:55:04.110
even but even if But even
631
00:55:04.590 --> 00:55:08.290
right. It projects to right. And so even within that model It's so tight. Blaster
632
00:55:08.830 --> 00:55:18.335
blaster Yeah. Publishes to the top 300 relays. So it gets from Nosto dot watch, it gets the 300 most popular relays, and it blasts everything to those 300 relays.
633
00:55:18.875 --> 00:55:19.855
But as relays
634
00:55:21.240 --> 00:55:23.180
as relays protect themselves
635
00:55:23.720 --> 00:55:30.535
and say, hey. I'm a special purpose relay. I only deal with certain things. You know? I've got my personal relay. It only accepts events from me
636
00:55:30.995 --> 00:55:32.455
or events to tag me.
637
00:55:32.755 --> 00:55:42.720
And so if blaster wants to put events there, and I keep seeing something keeps trying to put events there that have nothing to do with it, starting with a a really old event from FitchApp about Brandy.
638
00:55:43.500 --> 00:55:47.865
And it just keeps it just keeps blocking it. It says, no. That's not related. You know.
639
00:55:48.665 --> 00:55:51.565
Then blaster's not going to be able to put the events there.
640
00:55:52.585 --> 00:55:53.325
And then,
641
00:55:53.705 --> 00:55:58.150
you know, blaster doesn't fix the problem. You have to use the outbox model.
642
00:56:00.210 --> 00:56:01.590
One question I have is,
643
00:56:03.250 --> 00:56:04.390
imagine Notar
644
00:56:04.885 --> 00:56:07.224
succeeds and gets, like, a 1,000,000,000 users.
645
00:56:07.685 --> 00:56:11.305
Will there be free public relays like we have today?
646
00:56:11.605 --> 00:56:14.540
Yes. And who who will be running them? Well, Prime will
647
00:56:14.840 --> 00:56:16.940
be will be running one of them for sure.
648
00:56:17.960 --> 00:56:20.060
Yeah. People who wanna harvest data. Noster.band
649
00:56:20.440 --> 00:56:21.980
will probably be running 1.
650
00:56:25.315 --> 00:56:29.955
Okay. I didn't have a follow-up for that. I think you you really don't need to be able to support,
651
00:56:30.675 --> 00:56:31.335
for businesses
652
00:56:32.030 --> 00:56:43.704
that that need that data. Right? So they'll host the relay. They'll suck in the data because everyone's posting to it, and then they'll power things like paid search or paid recommendations. And, like, Hootsuite and shit. Like, okay. I'm Coca Cola,
653
00:56:44.165 --> 00:56:47.464
and I wanna know, like, how my new product is is being
654
00:56:47.960 --> 00:56:48.840
discussed on,
655
00:56:49.960 --> 00:56:52.380
on Noster, and I I need to see a full
656
00:56:53.240 --> 00:56:55.420
a full view of the network as a result.
657
00:56:57.315 --> 00:57:08.750
Like I do Yeah. Completely agree. I mean, it really starts as cost centers. For most cases, there's just gonna be cost centers attached to whatever Yeah. Product you're selling. The problem is is if there's only a few of them.
658
00:57:10.089 --> 00:57:15.335
Right? Like, I've Fiat, John, this is what you, like, originally sold me on a Nasr. It's like, it doesn't have to be decentralized.
659
00:57:15.714 --> 00:57:16.454
It just
660
00:57:17.234 --> 00:57:29.589
like, it it is it works because it's in a lot of ways, it's very centralized. But if if if there's not friction if there's not that much friction to move and there's not that much friction to run, you know, competing relays,
661
00:57:30.375 --> 00:57:31.435
then when censorship
662
00:57:31.895 --> 00:57:34.875
does rear its head, we can kind of route around it.
663
00:57:35.815 --> 00:57:37.355
Yes. Yes. That was the idea.
664
00:57:37.770 --> 00:57:41.070
But only only if you can find the relays where you're publishing
665
00:57:41.530 --> 00:57:45.310
or you move to. Right? If you cannot find the relay, then you're fucked.
666
00:57:45.885 --> 00:57:52.625
Okay. Besides calling me high time preference, because there's nothing high time preference about quitting Twitter and doing noster only,
667
00:57:53.165 --> 00:57:55.345
during the greatest bull market of all time.
668
00:57:57.410 --> 00:58:00.789
Like, there is no incentive for me not to
669
00:58:01.329 --> 00:58:09.744
broadcast my notes to every single relay that will accept me. Like, that is that is what any user that's concerned about censorship should be doing.
670
00:58:10.204 --> 00:58:27.815
That's fine. I'm predicting that the relays will over time not do that, not accept that anymore. And it's not it's not just the monetization that you guys are talking about, that relays are just a cost center, and only if someone wants to, you know, collect a bunch of data analysis that they would bother to run one, it's going to be the abuse.
671
00:58:28.490 --> 00:58:36.910
Because if you have an open relay that just allows anybody in there, that's are you gonna monitor everything that's going on? Or are you going how are you going to stop
672
00:58:37.675 --> 00:58:43.055
someone that writes a program that just generates random pub keys and start shoving things in there to try to take you down?
673
00:58:43.515 --> 00:58:44.015
So
674
00:58:44.609 --> 00:58:53.430
relays are going to have to defend themselves against abuse, and I think that's what's going to eventually close it all down and require people have to sign up for some service on SunRelay.
675
00:58:53.855 --> 00:58:55.155
Yeah. Even beginners.
676
00:58:55.935 --> 00:59:03.155
I that's just my prediction. I mean, I don't know how it's actually going to go, but I don't see how to stop that problem. At a fundamental level, it seems unstoppable.
677
00:59:07.030 --> 00:59:10.730
Yeah. I mean, you're right. You're right, Matt. Like, there is no incentive against
678
00:59:11.225 --> 00:59:18.365
blasting notes for individuals. And if you if you're care caring about getting something done today, growing your platform or reach or whatever,
679
00:59:18.665 --> 00:59:20.765
like, that's how you do it, and that's fine.
680
00:59:21.609 --> 00:59:25.690
But, like, maybe as a developer, you know, I just wanna be able to see my notes because
681
00:59:26.490 --> 00:59:30.305
yeah. But I I actually want people to not see my notes if gossip isn't working.
682
00:59:30.704 --> 00:59:33.125
Right? Because that will mean that
683
00:59:33.425 --> 00:59:39.204
and, you know, it it'll reduce my reach, and I my reach is, is probably reduced because I don't use any big relays.
684
00:59:40.080 --> 00:59:45.540
But that's okay because I feel the pain, and now I can be a squeaky wheel and and yell at Tony more often.
685
00:59:48.145 --> 00:59:50.945
Matt, there there is no ins there there is,
686
00:59:51.905 --> 01:00:00.050
how did you phrase it? There is incentive for you to run to use blaster, or there is no Well, I mean, let's take blaster out of this. When I had Mike on the show
687
01:00:00.830 --> 01:00:05.025
4 weeks ago, right, by default, I was connecting to 32 relays.
688
01:00:05.565 --> 01:00:09.745
Like, forget about blaster for a second. Right? It's like I'm using it on desktop.
689
01:00:10.210 --> 01:00:14.390
I wanna see everything, and I wanna be I I I don't wanna get censored.
690
01:00:15.170 --> 01:00:18.869
Right? It's like my incentive is to connect to as many relays as possible.
691
01:00:19.454 --> 01:00:21.555
But but that's only
692
01:00:22.255 --> 01:00:28.595
like, you are doing all these and it's fine because it's not a big problem, but you're doing this inefficient way of using Nostra
693
01:00:28.980 --> 01:00:49.040
just because most clients don't do it. Right? Right. Just because you're not using Outbox, you have to do it in this way. Right. And you find out about this new pleb who is on this other relay, and you add this other 33rd relay, and now you're requesting for everybody you follow from that relay as well. From all 33 relays you're requesting from everybody the same thing.
694
01:00:50.140 --> 01:00:56.285
And it and it's fine. It's not a big deal. It's a like, a little bit not as efficient as it could be, but who who cares?
695
01:00:57.545 --> 01:01:01.085
But the the the issue is that there there is,
696
01:01:01.785 --> 01:01:02.285
currently,
697
01:01:02.800 --> 01:01:04.800
there is an incentive to use,
698
01:01:05.200 --> 01:01:08.980
there is no incentive not to use plaster and to publish everything you want everywhere,
699
01:01:09.680 --> 01:01:11.140
but there is
700
01:01:12.525 --> 01:01:15.744
there is no incentive not to do it. There is no incentive because
701
01:01:16.525 --> 01:01:25.680
why wouldn't you? You want You might as well blast it. You might as well blast. Right? And you are going to be something out of it. This is why Jack banned himself,
702
01:01:26.380 --> 01:01:27.920
because he has an incentive
703
01:01:28.755 --> 01:01:33.415
to to make no store work in the long term. So he's he's much more sensitive to this,
704
01:01:33.875 --> 01:01:38.859
you know, whereas Matt has no incentive to, to make no story. How do I have no incentive?
705
01:01:39.880 --> 01:01:41.180
I have a huge incentive.
706
01:01:41.720 --> 01:01:51.845
I'm just kidding. But, like, you know, every person like shits and, like, the whole world knows he shits. Like, I I have a bigger incentive than than Dorothy does in terms of Every person who,
707
01:01:52.145 --> 01:01:53.890
maybe they're not the worst. Like, term.
708
01:01:54.369 --> 01:02:19.720
Every person who starts posting to small relays or and bans themselves from the big relays is is one more person that people What is a small relay? Like like Pablo's relay, like, connecting to Pablo's re does that really solve anything if we just all connect to Pablo's relay instead? No. No. We we shouldn't all do it. But right now, like, really interesting accounts who do post to, you know, not the top, like like, 15, let's say,
709
01:02:20.340 --> 01:02:21.400
those people are
710
01:02:21.860 --> 01:02:22.760
breaking domus
711
01:02:23.295 --> 01:02:24.835
by how they're using the protocol,
712
01:02:25.215 --> 01:02:39.840
and and Amethyst and anyone else, not to pick on Domus. But they're breaking things, they're breaking clients by putting their information somewhere that those clients are not gonna see it. And then people following them are gonna say, like, well, what's the deal? Like, why can't I see Jack's post? I follow him.
713
01:02:40.335 --> 01:02:55.940
It's well, it's the fault of the client that you're using. They're not using Nostra properly. So that's what I mean by, like, low time preference is saying, I'm not gonna build my platform right now. I'm not gonna let people see my notes so that long term, I have access to the censorship resistant protocol
714
01:02:56.400 --> 01:02:56.885
that,
715
01:02:57.765 --> 01:03:16.345
will ensure that my notes can be seen. So and and we have, like, Twitter. So just just cross post to Twitter. Be a blue check-in the meantime if you Are you really cross posting to Twitter during this whole process? No. No. I've I've deleted my Twitter account. Because that's really hypocritical. That's the biggest relay. I walked in. Oh, you're, like, you're cross posting to Twitter.
716
01:03:17.204 --> 01:03:23.650
No. But if you have, like, a business you need to run, like, post to Twitter because no sir is not ready for you yet. No. Nostra only.
717
01:03:24.190 --> 01:03:25.410
Lower your time preference.
718
01:03:26.190 --> 01:03:26.690
Okay.
719
01:03:26.990 --> 01:03:39.445
Blast all the relays. Well, yeah, good question you're asking right now, like, what's a small relay? I've seen a lot of people asking these questions since we proposed that Jack and Odell started publishing through small relays.
720
01:03:40.710 --> 01:03:46.809
And some people are interested in doing that, but then they ask, what's a small relay? I don't think that that question
721
01:03:47.995 --> 01:03:49.115
is easy to answer, but,
722
01:03:49.835 --> 01:04:04.070
it's it's basically the one relay that people don't know and they're not configured by default. But I don't think people should be searching. I don't think that's the correct way to use Nasr. Like, you open a list of relays and then you choose 1. I I don't think that's a good idea. Like, you you should
723
01:04:05.135 --> 01:04:05.955
in a normal
724
01:04:06.255 --> 01:04:11.795
way, in in a world in which Notar is successful, you could you should, like, already know some relays.
725
01:04:12.190 --> 01:04:15.650
Like, when you join Allstar, you'll join through a relay or
726
01:04:16.750 --> 01:04:20.290
through someone that invited you and pointed you to a relay
727
01:04:20.685 --> 01:04:41.905
of a community or something like that. Like, the client should handle it, basically, for the most part. No. No. Someone should invite you. Yep. And then you get to the client and the client points you to the relay of the people, like the person who invited you. Something like that. I don't know. Maybe a local relay. I don't know. What happens when someone joins Twitter for the first time?
728
01:04:42.525 --> 01:04:43.025
Like,
729
01:04:43.484 --> 01:04:50.940
people was was always people were always asking, like, how do I get how do I know who to follow when I first joined Oscar?
730
01:04:51.720 --> 01:04:55.339
I don't know because, like, this is the same question. Like, what relate do I pick?
731
01:04:56.425 --> 01:04:59.805
When you first join Twitter, and if you don't know anyone,
732
01:05:00.265 --> 01:05:03.005
like, you just follow a bunch of NPC accounts
733
01:05:03.410 --> 01:05:04.069
from media
734
01:05:04.450 --> 01:05:08.069
people. Like, that's not the experience people like on Twitter.
735
01:05:08.609 --> 01:05:09.109
So
736
01:05:09.650 --> 01:05:14.765
you you should join the thing already knowing something. I think that's the natural way that will happen
737
01:05:15.145 --> 01:05:15.805
in the future.
738
01:05:16.345 --> 01:05:17.325
So whatever.
739
01:05:18.744 --> 01:05:21.100
We have some nippo 5 maxis in the chat.
740
01:05:21.580 --> 01:05:23.120
Yeah. Speaking clearly,
741
01:05:23.500 --> 01:05:27.280
why can't we use nipo 5 relay list to advertise where to find our notes? All caps.
742
01:05:27.740 --> 01:05:31.765
The answer is, we should. Like, that's that's part of clients,
743
01:05:32.625 --> 01:05:47.630
bootstrapping, basically, you know. If you're given an NPUB I mean, sorry, if you're given an a a NIPIFYB address, then you you should have relays that you can start with, and then you don't have to consult an indexer or something like that. NIPO 5 is just an indexer solution that works over HTTP and DNS
744
01:05:47.974 --> 01:05:49.275
rather than over relays.
745
01:05:50.055 --> 01:05:54.315
But then everyone's just gonna use, like, the primal nippo 5. Like, how does that solve shit?
746
01:05:54.615 --> 01:05:55.835
It doesn't solve shit.
747
01:05:56.760 --> 01:06:03.180
Well, hopefully, primal will allow you to set your relay, like, it like, nifa fives should mirror your 10,002's.
748
01:06:04.445 --> 01:06:07.996
Most people are not 50% sensitive. Most
749
01:06:08.685 --> 01:06:29.565
we need the content the content needs to be spicier. I think the I think the big issue is, like, there's not enough sensible content. Like, if there's more sensible content, then we'll fucking figure it out. Go go browse global go browse global on a Japanese relay and then come back to me. No. Don't global's a straight point. You don't check global. You never check global. Primal, you can't even view global on primal.
750
01:06:30.990 --> 01:06:36.210
Doesn't because you you are screen I've never seen Your computer would crash. I have I've still never seen global.
751
01:06:37.070 --> 01:06:38.850
Don't do it. Don't do
752
01:06:39.855 --> 01:06:44.434
it. Yeah. Connect to 32 relays and then click the global tab. That's a horrible idea.
753
01:06:47.230 --> 01:06:50.990
So you're saying that, people who actually have some sort of,
754
01:06:51.630 --> 01:06:57.335
following should spoo should post spicier content. No. No. No. I'm not sure what spicier than, like, Jack posting,
755
01:06:58.035 --> 01:07:03.850
everything is a rich man's game. Okay. Jack hasn't posted anything spicy. It's not spicy enough yet.
756
01:07:04.410 --> 01:07:07.790
I I look. I think I think that Noster
757
01:07:08.090 --> 01:07:14.165
You wanna start the censorship early so that we can fix it early. Noster's gonna have, like, it's Alex Jones moment.
758
01:07:14.865 --> 01:07:19.205
And we I like, we can, you know, have these super technical conversations,
759
01:07:19.665 --> 01:07:20.165
and
760
01:07:20.589 --> 01:07:30.725
Pablo can ship, like, a 1000000 different fucking projects, and, like, all this different theoretical conversation can happen. But, like, it's not going nothing of of substance is gonna change
761
01:07:31.585 --> 01:07:34.885
until we have, you know, a fire rod
762
01:07:35.265 --> 01:07:42.150
that gets censored off of all centralized social media that moves to Noster that could starts getting centralized on the major relays,
763
01:07:42.530 --> 01:07:45.750
and then there's, like, actually pressure to, like, change things.
764
01:07:46.445 --> 01:07:56.700
I think the problem with that is the major relays right now are run by people who care about censorship resistance, and so they're not gonna censor very much. The precondition for that not a problem. That's good.
765
01:07:57.400 --> 01:08:00.380
Yeah. But but the precondition for people get getting banned
766
01:08:00.815 --> 01:08:11.849
is bringing people in who wanna make money, and so they run a huge relay and outcompete everyone because they wanna make money, and then they wanna make money, and then they ban people. So we need to, like, get giant,
767
01:08:12.170 --> 01:08:18.270
companies that, that wanna censor us on the Dosto first. Maybe, maybe threads is the beginning. I don't know.
768
01:08:22.665 --> 01:08:30.540
The thing is is if we go through that test, if there was, like, a court order saying, Will, you have to censor this pop key. Like,
769
01:08:30.920 --> 01:08:32.540
we would fail the test
770
01:08:33.079 --> 01:08:33.820
so hard
771
01:08:34.440 --> 01:08:38.235
unnecessarily, but we would fucking fail it so hard. It will be
772
01:08:39.015 --> 01:08:39.995
laughing stuff.
773
01:08:40.935 --> 01:08:44.715
Like, Bitcoin was used by Wiki p by, WikiLeaks.
774
01:08:45.015 --> 01:08:52.330
Right? Like, they were able to use it. Right. We would not be able to sustain an attack, like, not even a little bit.
775
01:08:53.190 --> 01:08:55.115
Unless everyone uses that account. Use that?
776
01:08:57.115 --> 01:08:59.375
Alright. I mean, look at Pierre Chefs' test.
777
01:08:59.995 --> 01:09:02.095
Just I saw all the tests.
778
01:09:03.250 --> 01:09:03.750
Afterwards?
779
01:09:04.290 --> 01:09:05.830
No. While it was at the hospital
780
01:09:06.210 --> 01:09:08.469
What if primal what if primal had received a court order?
781
01:09:09.305 --> 01:09:15.405
Then I would be I would be like, primal received a court order to censor fiatjaf. Like, stop using fucking primal.
782
01:09:16.320 --> 01:09:25.540
You know you know, Humble and Locust, these 2 big platforms there, they don't serve any content to Brazil anymore because they received court orders from Brazil
783
01:09:25.945 --> 01:09:30.125
asking them to censor some specific people. So they shut down the entire site for Brazil.
784
01:09:30.905 --> 01:09:33.885
I think they did the the most honorable thing possible,
785
01:09:35.540 --> 01:09:37.640
And, well, people are still using them
786
01:09:38.020 --> 01:09:42.120
on the United States, IMS, I guess. People who are very
787
01:09:44.325 --> 01:09:46.585
mindful about this censorship stuff.
788
01:09:48.405 --> 01:09:50.585
Which platform was that you said did that?
789
01:09:51.110 --> 01:09:53.050
Humble and Locos.
790
01:09:53.909 --> 01:10:01.395
Oh, right. Yeah. It's it's called Humble. So they're not they're not Humble. Humble. Humble. Humble. Right? I don't know if you Zoho. Okay. Don't make fun of me.
791
01:10:02.335 --> 01:10:06.835
I wasn't making fun of you. I was like, shit. There's a platform named Humble, and I didn't know about that.
792
01:10:07.590 --> 01:10:10.010
It's it's basically the same thing. Right?
793
01:10:10.950 --> 01:10:16.635
That's that's why I asked. I thought that's what you said, but I couldn't if I tell. You should rebrand those here to Humble. Yeah.
794
01:10:17.175 --> 01:10:18.074
That's a great
795
01:10:18.535 --> 01:10:23.195
What did we call it? Or making fun of Wait. Instead of the outbox protocol, Humble protocol.
796
01:10:23.880 --> 01:10:26.619
I like it. There you go. I like it. Just fucking go.
797
01:10:27.159 --> 01:10:28.219
It's a thing now.
798
01:10:29.320 --> 01:10:31.340
Stay on humble and snack stats.
799
01:10:32.205 --> 01:10:44.350
But, I mean, look, Theo Jeff, that's, like, a perfect example. Right? It's like there is a bunch of people that actually believe that Rumble is censorship resistant, and then their whole country gets banned from it. And they're like, oh, no. It's not. We need to improve the situation.
800
01:10:44.810 --> 01:10:55.114
But until that happened, no one was gonna improve the situation. I have a reply guy on Noster who fucking loves Rumble. He's, like, constantly telling me, like, caps are not not okay. Like, I shouldn't do like,
801
01:10:55.655 --> 01:11:00.830
he calls me a retard. It's like, oh, well, you're the reply guy to the retard, so who's the fucking retard? You know?
802
01:11:06.005 --> 01:11:09.065
People believe rumble is censorship resistant until it's not.
803
01:11:09.445 --> 01:11:12.040
Like, that's I have the same thing with with Gabb.
804
01:11:12.580 --> 01:11:18.600
When I first started looking into this stuff, I was like, oh, Gabb, they're, like, redoing their architecture so that they can run on multi cloud
805
01:11:18.915 --> 01:11:24.614
kind of stuff. So if cloud providers censor them, they can still be up. But then, like, they're just
806
01:11:24.915 --> 01:11:30.570
relocating the locus of censorship in themselves. It's it's so dumb that no one has done this. I just can't even believe.
807
01:11:31.030 --> 01:11:32.809
I I can't believe it. It's
808
01:11:33.349 --> 01:11:33.849
yeah.
809
01:11:36.385 --> 01:11:38.885
So what's the what's the yeah. Go on. Mike.
810
01:11:40.224 --> 01:11:41.284
Mike? Nope.
811
01:11:42.465 --> 01:11:47.010
I'm just page topic Sorry. Already. Okay. Let's talk what do you wanna talk about?
812
01:11:48.030 --> 01:11:48.530
Wikifreeda
813
01:11:48.910 --> 01:11:50.210
is censored in my articles.
814
01:11:54.695 --> 01:11:55.835
Get a better protocol.
815
01:11:57.415 --> 01:12:02.075
I've created I've created 3 different key pairs, and I've copied
816
01:12:02.540 --> 01:12:09.600
some content from, like, a movies database and another movie database and created an articles automatically for each movie that exists.
817
01:12:10.060 --> 01:12:10.800
And, also,
818
01:12:11.545 --> 01:12:18.605
some other feedback about the names, name like, the history of names. Like, there's one article for each name, and it's published by this
819
01:12:19.060 --> 01:12:20.120
different key pair
820
01:12:20.500 --> 01:12:21.720
to my own relay
821
01:12:22.100 --> 01:12:23.640
that has all this crap.
822
01:12:24.420 --> 01:12:29.735
And I can't read anything of that in Wiki 3rd year, and I don't know how to fix it, how to properly
823
01:12:30.275 --> 01:12:31.255
select relays
824
01:12:31.955 --> 01:12:34.695
for that use case. It's not the outbox model.
825
01:12:35.410 --> 01:12:40.930
I don't know what it is. The humble protocol. Yeah. Yeah. The so on on the humble protocol, we have,
826
01:12:41.490 --> 01:12:42.690
HIP we have HIP,
827
01:12:43.810 --> 01:12:44.310
34
828
01:12:47.255 --> 01:12:47.655
That,
829
01:12:48.375 --> 01:12:49.175
did you put the,
830
01:12:49.655 --> 01:12:55.420
that new relay that you created on on one of the whatever relay kind we created for for Wiki?
831
01:12:55.720 --> 01:12:59.820
No. Forgot the name. I did not. What's the name? There you go.
832
01:13:00.200 --> 01:13:00.680
Well, but
833
01:13:02.655 --> 01:13:03.475
go to nostril.com
834
01:13:04.015 --> 01:13:05.235
and read how it works.
835
01:13:07.775 --> 01:13:11.889
No. But what's what's the flow? Like, someone wants to read about some movie,
836
01:13:13.469 --> 01:13:20.875
at the it's that Yes. So so movies published. So if I if I if I were to follow that those pub keys that you wrote from,
837
01:13:21.435 --> 01:13:26.095
or someone within your web of trust follows them, it will check for the relay
838
01:13:26.475 --> 01:13:29.295
list of Wikipedia, of Wikifredia entries,
839
01:13:29.755 --> 01:13:33.920
of Wiki entries, and it will connect to those. So it will do outbox,
840
01:13:34.460 --> 01:13:39.360
to to those really, so it will find them. But if it's just a random pop key in the middle of nowhere,
841
01:13:40.335 --> 01:13:54.250
and there is no way to get to that What's what do you mean by that? Web of trust. Do you have a degree in web of trust or a master's? You can configure it on the no. I a degree. No. There is a degree of the configuration of the web of trust, but,
842
01:13:55.210 --> 01:13:57.710
I got fired from synonym, so I don't know.
843
01:14:00.675 --> 01:14:04.775
So it is it's like, what what's the default? Like, 2 2 hots away?
844
01:14:05.395 --> 01:14:08.820
3. Okay. A friend of But if you go to settings, you can change it.
845
01:14:09.300 --> 01:14:09.800
Okay.
846
01:14:10.900 --> 01:14:13.480
By the way, in the in the live chat,
847
01:14:13.860 --> 01:14:18.679
this is why I love Nostril. Like, Kieran's, like, debugging his features in my live chat,
848
01:14:20.085 --> 01:14:20.585
Live.
849
01:14:22.245 --> 01:14:25.385
Post a clip says don't use a clip. Don't use clips.
850
01:14:26.565 --> 01:14:27.865
Big pink box.
851
01:14:30.810 --> 01:14:32.590
What What about the inbox model?
852
01:14:33.130 --> 01:14:38.195
What is the difference? So inbox is where I want to receive my notes. Is that the
853
01:14:38.574 --> 01:14:44.195
difference? Yeah. Yeah. You could say that, but we we are horrible at names. Like, in the current 65,
854
01:14:44.974 --> 01:14:48.580
there's a concept of inbox, which is where we want to receive
855
01:14:49.200 --> 01:14:50.980
reactions, replies, and
856
01:14:51.600 --> 01:14:53.220
mentions, stuff like that.
857
01:14:53.680 --> 01:14:54.180
But
858
01:14:54.515 --> 01:14:57.574
Alex Glayson suggested some days ago, and
859
01:14:58.034 --> 01:15:03.415
I proposed the NIP for the inbox model. I don't know if it's a good idea, but I just wrote it. I hate it.
860
01:15:03.900 --> 01:15:04.560
I hate
861
01:15:05.580 --> 01:15:08.800
it. So you 2 are wrong, and I think my I think the
862
01:15:09.260 --> 01:15:19.985
the basic idea is interesting where you just, like, put something out there that's, like, I want this kind of stuff, and anyone who wants to give it to me can put it in my inbox. No. That's not that idea. That's that's yeah. That's much looser.
863
01:15:20.285 --> 01:15:22.945
Well, it's similar. I mean, it uses the uses an advertisement.
864
01:15:23.260 --> 01:15:26.240
Yours is way too way too strict, way too structured.
865
01:15:26.700 --> 01:15:31.360
My idea is, like, I wanna I wanna subscribe to I wanna follow Pablo, and Pablo
866
01:15:32.755 --> 01:15:34.375
signals that he implements this
867
01:15:34.835 --> 01:15:42.510
this model. And then I send a follow request or something like that to Pablo to Pablo's release release that Pablo advertised.
868
01:15:43.130 --> 01:15:43.630
And
869
01:15:44.490 --> 01:15:47.070
then the next time Pablo publishes any note,
870
01:15:47.610 --> 01:15:52.585
he will send like, in this in this follow request, I I include the relay.
871
01:15:53.045 --> 01:15:59.784
And then Pablo will sub submit his note directly to my relay that I note like, I that I wrote there.
872
01:16:00.440 --> 01:16:05.420
So so so, Matt, to to make to translate that to English, this has the feature.
873
01:16:06.760 --> 01:16:14.635
This has this this model that FireChef proposes has the feature where you can actually block people, like, for real. Like, they cannot see your posts.
874
01:16:14.960 --> 01:16:23.620
So But you you you you use this together with the Outbox model. You would still publish stuff to the relays that you advertise. So people can still follow you there.
875
01:16:24.485 --> 01:16:25.385
It's just a
876
01:16:25.885 --> 01:16:31.065
Mhmm. Instead of instead of you going and and getting Pablo's notes from his outbox,
877
01:16:31.560 --> 01:16:34.540
you tell Pablo to put his notes in your inbox.
878
01:16:35.320 --> 01:16:39.980
Right? So you kinda flip it around. But what you're basically you're taking the locus of control,
879
01:16:40.345 --> 01:16:47.085
and you're handing it to Pablo. And so then Pablo could say, I'm gonna cut you off. And then not send you the notes anymore.
880
01:16:47.620 --> 01:16:49.719
Yeah. But then the client, after
881
01:16:50.020 --> 01:16:56.965
realizing that for a week, Pablo hasn't posted anything, your client goes there and checks if Pablo is publishing through his outbox. And then you switch
882
01:16:57.505 --> 01:16:58.405
Pablo publishes.
883
01:16:58.864 --> 01:17:01.844
Well, I I mean, I think it's If it comes this potentially
884
01:17:02.864 --> 01:17:05.364
I think there's use cases for it, but
885
01:17:05.870 --> 01:17:08.370
I I I don't wanna use any of those use cases.
886
01:17:11.550 --> 01:17:14.450
Doesn't the doesn't the Outbox model just solve this?
887
01:17:14.985 --> 01:17:22.364
It does. Outbox model solves everything. But But I'm I'm I'm saying that there's a different there's a different way of doing the thing.
888
01:17:23.040 --> 01:17:25.300
Like, you you you don't have to equate.
889
01:17:26.239 --> 01:17:29.060
But you don't have to equate to us or with the other one.
890
01:17:29.825 --> 01:17:32.725
Yeah. You do things multiple ways. No? You don't?
891
01:17:33.905 --> 01:17:41.180
It's okay. Experimentation is good. Criteria for acceptance of NIPs, There should be no more than one way of doing the same thing.
892
01:17:46.715 --> 01:17:47.535
That's right.
893
01:17:48.315 --> 01:17:51.535
It's it's stuck, Matt, the the chat.
894
01:17:52.235 --> 01:17:56.970
I don't I don't think it's the same thing. So I I think it's Oh, Kieran Grove is there. If
895
01:17:57.910 --> 01:18:00.170
if someone finds a good use for it, I'm fine with it.
896
01:18:00.550 --> 01:18:09.115
It's so much more complicated. Yeah. I'm like I read it. I was like, okay. What's the goal of this? And he was, okay. I I don't see
897
01:18:09.495 --> 01:18:11.435
a point. It's really complicated.
898
01:18:13.095 --> 01:18:14.475
And, yeah, I don't know.
899
01:18:15.160 --> 01:18:17.160
So something that's similar that,
900
01:18:17.640 --> 01:18:19.980
that I was talking to Nanya Bidness about,
901
01:18:20.920 --> 01:18:21.239
he,
902
01:18:21.800 --> 01:18:28.065
he he proposed this idea, is to just put put something more generically out there. So rather than delivering it to a particular person's,
903
01:18:28.525 --> 01:18:34.440
inbox and saying, I want your stuff, you just put something out there and it's like, I want more information about
904
01:18:34.820 --> 01:18:57.630
Bitcoin or whatever. And then people can and the thing about that is it not only means that people would deliver stuff to your inbox about Bitcoin, but it would mean that people know that there's a market for that or like a, you know, market of attention. And so people might be incentivized to actually create more content. I think that's that's the best application of this sorta architecture that I can think of.
905
01:18:58.515 --> 01:19:05.815
That's a completely different idea and has nothing to do with what I said, but I think it's a good idea too. Although I like it. It doesn't work
906
01:19:06.180 --> 01:19:11.160
in the naive way you said, but I think it can't be can't be used can have uses.
907
01:19:12.660 --> 01:19:14.040
You're calling me naive.
908
01:19:16.594 --> 01:19:21.094
Well, if someone creates, like, a 1,000,000 puppies saying that they want more content about,
909
01:19:22.675 --> 01:19:30.010
I don't know, basketball. Are you going to start getting basketball content? Like, it's just just going to scan you of your time
910
01:19:30.550 --> 01:19:35.085
and and then of your bandwidth having to publish stuff to a relay that doesn't even exist,
911
01:19:36.344 --> 01:19:39.485
where supposedly someone is looking for basketball content.
912
01:19:40.264 --> 01:19:48.730
But Yeah. Yeah. I think it could could, like, could have its users, but then it would be, like, 10 years ago. In in 10 years, we can think about that.
913
01:19:49.085 --> 01:19:54.784
Yeah. I'm not gonna do it. Or you could just publish an event saying, oh, I would like to read more about
914
01:19:55.485 --> 01:20:02.840
spinners or flowers or whatever. Right? And it's it's just people can't fulfill that. Just go to Corigall. You'll know everything you need to do.
915
01:20:03.220 --> 01:20:04.760
All your spinners are fulfilled.
916
01:20:07.235 --> 01:20:08.375
Can we talk about proxies?
917
01:20:09.795 --> 01:20:12.775
Okay. By the way, MBK wants us to talk about OMIMO.
918
01:20:14.490 --> 01:20:15.390
Jesus Christ.
919
01:20:17.530 --> 01:20:19.870
I'm not smart enough. You'll have to do it for me.
920
01:20:22.145 --> 01:20:29.605
I think proxies are cool and, like, you know, they're like a a partial solution to a lot of these, optimization problems, from a client's perspective
921
01:20:30.030 --> 01:20:32.690
because they can implement the the outbox model.
922
01:20:33.150 --> 01:20:43.844
You know, if you have a proxy, you can just ask it like, give me stuff from these pub keys. And then it can go figure out where those pub keys are and keep an index of all that stuff internally. The and that makes clients a lot simpler potentially,
923
01:20:44.224 --> 01:20:47.520
so reduces the barrier to entry to to the outbox model.
924
01:20:48.860 --> 01:20:53.040
Some interesting things about proxies are you can't proxy auth right now. It's impossible.
925
01:20:54.395 --> 01:20:54.835
But,
926
01:20:55.275 --> 01:20:58.175
I love this idea that Pablo mentioned to me.
927
01:20:58.555 --> 01:21:06.480
No one has been talking about it, but I really want it to exist. I'll build it if I ever get around to it. But making NIP 46 signers that are also proxies.
928
01:21:07.020 --> 01:21:12.585
Right? Because you already trust the NIP 46 signer with your private key. And And it's a common do that
929
01:21:13.625 --> 01:21:14.844
yeah. Yeah. Well,
930
01:21:15.385 --> 01:21:20.450
all all this all Net 46 signers. Right? I mean, you gotta have the Yeah. No. I'm just I'm just giving reference to to Matt.
931
01:21:21.410 --> 01:21:22.470
Oh, okay. Yeah.
932
01:21:22.930 --> 01:21:34.175
So, so what you can do is you can reduce a lot of round trips with that signer by just sending an unsigned event to the signer and saying, publish this where it should go. Then you don't have to do relay selection for publishing either,
933
01:21:34.875 --> 01:21:39.375
and you, you reduce the number of network requests, the signer can double as a proxy.
934
01:21:40.070 --> 01:21:41.130
I think it's great,
935
01:21:41.510 --> 01:21:44.410
with the caveat that you have to put your private key somewhere. But,
936
01:21:45.030 --> 01:21:46.810
proxies would be easily self hostable.
937
01:21:47.205 --> 01:21:52.025
The database wouldn't, wouldn't grow any bigger than, any clients, database.
938
01:21:52.804 --> 01:21:54.265
So I think it's totally doable.
939
01:21:54.570 --> 01:21:59.070
And, someone should do it. Maybe I But you should should you do it, like, through the normal