woke up after a nice long sleep last night. Oh man, nice. Thank you. Thank you for
that right in the face. No, no, to be honest, I mean, we got to bed like three hours late
because we have a baby in the house. So, you know, I'm not, I'm not right there with you, but,
you know, I'm tired enough. So nice. Congrats. Congrats, man. Holy shit. How old?
He's, he's 10 months now. Nice. Yeah. Number four. Wow. Wow. We have a plead dad over here. Let's
go. I love to see it, man. Yo, this is amazing. So, sir, sleepy. Are you sleepy? I'm very sleepy.
No, I won't lie. I'm not joking. The space is, so, okay, this is my first space or, or nest or
clubhouse or anything. I've never done any of these things. So, uh, wow. Thanks. You're honored.
Yeah. Yeah. This is, uh, wow. It's been awesome so far. I've just like jumped in when I have a
chance. And last night I, uh, jumped in and someone was talking about, uh, renegade butcher was
talking about Joel Salatin, who's like basically my spirit animal. And, um, and then like turned
it off and then got back on. And then Derek was talking about asking for girls, uh, five pictures.
So I can't imagine what it was like starting at like 11 PM forward, but. Oh man. The diversity of,
um, these panels, it's, it's incredible to see. And they actually stayed on for like the next three
hours, I think. Oh my gosh. They took over multiple panels. That's awesome. So you're going to see
that in the recordings. You're going to hear that in the recordings. It's crazy. It got crazy after
that time. I want to listen to 24 hours of recordings. Can you imagine that? Can you imagine
who would actually sit there and just replay this whole thing? No Strikas was enough. I mean,
that was probably like 20 or 25 hours, right? Oh, so much content to consume. I totally skipped the
open source stage. Okay. So I didn't go to Nostrica cause I don't have, I don't have a passport.
That's, uh, unexpired right now. So I had to watch it on YouTube, but, uh, yeah, I totally skipped the,
the open source stage and just listened to the, uh, uh, wait, no, I skipped the workshop stage and
just listened to the open source stage. And yeah, that was like, that was like three or four, seven
hour videos, something like that. Uh, looks super fun though. Definitely hope to make it to, uh,
wherever the next one is. What Japan is that? That's, that's where I'm from. Japan seems awesome
though. Bro. Oh my God. I've always, I've dreamed of going to Japan all my life. I think cause I'm a
huge, uh, fucking nerd and I'm an anime fan. Uh, so, you know, uh, how can you not? How can you not?
Um, also if you ever like, if you ever played Nintendo games as a kid, you should, you should
definitely want to go. Oh yeah. Definitely played the, uh, you know, original super Nintendo
and 64 stuff grew up with that. So there you go. You see that. Are you coming by any chance to Miami?
Uh, yeah, I've also been to a conference. I've barely even been to a tech conference. So yeah,
I just, I don't really get out very much, but it's all good. Same thing over here. I'm coming
to the Bitcoin conference exclusively to hang out with Nostra people. That is, that is the reason,
you know, I'm a Bitcoiner too, but, um, I'm, I'm not even like, hardly excited about the Bitcoin
part. The Nostra part is where it's at. Oh yeah. I couldn't agree more. So you definitely have your
own karaoke ticket then. Oh yeah, I do. That's another thing I've never done. I've never done
I've never done karaoke. I've sung in like choirs and stuff, but, uh, I don't know what I'm kind of
thinking is I'll, I'll go and I won't know any of the music and then I'll just like sing like some
William Billings or something like that. And, uh, you know, stand out. That's you, you have something
in common with my, uh, with my co-host. My co-host is, uh, is it a, is it a choir group? I think it's,
is it a group or is it a, he's actually on national TV, believe it or not, in a competition,
where he lives, uh, singing is like, it's part of their heritage and, uh, yeah, they, they have a
long history of singing. Um, and I'm very proud of him for doing that and sticking to it. Do we,
do we know where Tennolla is from or, uh, is that, is that a privilege? Um, I'll give you Northern
Europe. Um, yeah, I'm, I'm part of a choir. There's like 50 people in it and 50, 50 men. Yeah. So,
and there's like, I think the first quarterfinal of the show is on maybe today or tomorrow, but
unfortunately didn't get to record as I was sick during that time, but next Friday, we are on this
semifinal and back on, back on national TV. So it's going to be absolutely amazing. I wish I
could be there for the karaoke. It could be amazing. Yeah. I, I have no idea. I'm sure,
like Derek, Derek is the one who organized it, right? Yeah. Derek, UTXO, um, Avi, I think as
well. Yeah. So, you know, it's going to be good. Yep. Yep. There's no denying that. There's no
denying that they, they've, they've got this down pack. Um, I'm super excited for that as well. And,
and now that you mentioned that you're also into, um, that you were also into like the Nintendo 64,
uh, we were planning, you know, Island, right? Oh yeah. Yeah. So Island, Island might be having a
get together, um, for, you know, some nostrigists to play some old school games. Oh, nice. That
sounds amazing. Right. That's fucking lit. So we might do that as well. Yeah. Yeah. We got to set
that up. Yeah. Every so often one of my friends goes and finds a Nint-Bolt Nintendo and, and buys
it. And then we play it for a while and then he loses it or whatever. You got to do it. Those old
goals were getting harder and harder to get ahold of, you know, like I grew up mostly playing like
windows PC games. Um, and, uh, they're, they're impossible to install on like on anything anymore.
You know, all the drivers are for, uh, direct 3d and all that stuff are completely, completely
messed up. I, I, you know, obviously I'm a dev, but I'm not technical enough to make windows work.
I'm dead. Yo, these are shots, especially at me. I'm a windows user. Yeah, I used to be, but, uh,
you know, I've repented. So actually my dad used to work at Microsoft. Uh, so he, my dad helped
write NT. Um, so I've got a lot of windows heritage, but I talked to him and he's like, yeah,
yeah, windows is pretty crappy. Yeah. Like every time somebody sees my laptop, they always, oh,
you're running Linux or cause it's a think pad and they're obvious, like they all assume, oh,
it's Linux. No, I'm a fucking regular ass plebe. I'm running windows. Yeah. I, I, I was at, uh,
I got a grant to work on core goal for a while and that just ran out yesterday, but I'm down in
Austin with a bunch of, uh, open source, like cypher punk nerds kind of, um, and, uh, and I,
I use a Mac book and, uh, I didn't exactly get like dirty looks, but people definitely dished on Mac
while I was in the room. Damn. It's funny. I don't mind. I agree, but, uh,
be what you gotta do. Facts, facts. No, especially, uh, what, what is it that you like about Mac on
specifically? Like if you, if, you know, if you're able to tell us, uh, compared to like another
machine. Yeah. Well, Mac works. Uh, that's, that's what I like. I don't really like anything else
about Mac. Uh, I don't use an iPhone. I think the design for iPhones doesn't make any sense.
Um, I think Mac's like window management and, uh, you know, like settings panels and all that stuff,
they're kind of pretty, but I just don't think I don't, I don't like them. I don't. So I don't
like Mac. I only use it because windows is slow and the command line is awful. And, uh, and Linux
every time, every time I buy a new computer, I buy a Linux computer and like a windows computer.
So I got a Dell XPS 13 last time and tried to set Linux up and, uh, you know how it is. You,
you wake up like 30 hours later, covered in sweat, trying to sign your kernel. And, uh, yeah, I,
I got that far. And then I, I returned the computer and bought a Mac book instead.
Oh, all right. So that's out of the way. Uh, yeah, back definitely works. Not gonna lie. Like the
only reason why I'm not using my, uh, my Mac book is cause the screen broke and basically it's way
too much fucking money for a screen. Not gonna lie. I could, uh, I'd rather, it was, it was enough
to actually like put up some more money down and replace it, uh, replace the whole thing with a
different laptop. So that's where I'm at currently. Yeah, I've been there. I have a 2012 Mac book and,
uh, I, I now have a 21 that I use for work and stuff, but the 2012 is, is still just kind of
taken along. I bought a new computer because, because the screen broke, but then I found a
screen online on eBay for like $80. So yeah, they, they keep going. It's nice.
I had to be myself to cough. Um, but, um, okay. So I want to give a background, a brief background
real quick, whenever, um, to the audience members that might not know who you are.
Yeah. Yeah. So I, let's see. So I write the coracle Nostra client. Um, I, uh, just like kind of my life
history is I live in Idaho and, um, it's nice there. And, uh, I got into Bitcoin in 2020 about the same
time that I started looking into decentralized social media, the two weren't really connected.
It was just, um, sort of a coincidence. Uh, you know, it was around the election, of course. Um,
and so I was like, I quit Facebook in 2017, um, but I didn't quit Twitter and I realized that,
well, I didn't really expect Twitter to censor. And then they started doing that. And, uh, so I
looked around and I found scuttlebutt and, um, that was neat, but it wasn't really like a solution,
um, that scales. So I just didn't do anything about it. And I kind of shrugged and said,
I hope someone else solves the problem. And a year later, no one had. So at the beginning of 2022,
I started writing a, uh, protocol called blaze point. You can find it on GitHub and it's really
pretty similar to Noster. It's more focused on social media. Um, so it's a little bit more fully
specified, uh, also, you know, over HTTP and stuff. So some slight differences and it was more focused
on what I wanted to solve. Um, so two weeks later I discovered Noster and I tried to convince Fiat
Jaff to use my protocol instead. But, uh, uh, yeah. And I kept like working on my protocol and then
in October I was finally like, well, I guess it turns out that writing a protocol for decentralized
social media yourself, like by yourself is not only hard, but also kind of pointless. So I just
switched over to working on Noster instead. And, uh, over Thanksgiving break, since I had the week
off, um, I just, uh, kind of pounded out the first version of coracle and I wasn't going to share it
with anyone, but, um, but Fiat Jaff or, uh, Leonardo, uh, I'm not sure which one founded on
GitHub and told Fiat Jaff and then they were like, you should share it. And so I did. Um, and then
a couple of weeks later, Jack Dorsey tweeted about Noster and it was very exciting. Uh, cause I don't,
like I said, I don't get out. So Jack Dorsey followed me and tweeted, retweeted my stuff
and that was exciting. And then, um, in December I applied for a grant with Futo in Austin and, uh,
drove my whole family, my wife and four kids down to Austin in February and, uh, just finished that
up yesterday. So after this nest, I'm, uh, at eight o'clock central time, I'm going to hop in the car
and we're going to start driving up, uh, back up to Idaho. So that's me. That's incredible. Oh, wow.
I have, I have a ton of questions about coracle to be honest, cause, uh, I'm fairly new to it. Um,
I found it, uh, through Derek. Derek introduced me to it when he was, uh, cause he was actually
explaining lists to me. And this seems to be like the only client that, um, had lists that he liked,
um, interacting with. Uh, I, I just wanted to know more about lists overall, cause I don't know
enough. And one of the things that I kept on, like, that I was like, you know, that was actually
answered here. Uh, I think Betty Berisha was the one that answered it. Cause I was asking him,
Hey, how do I even like find the list that I've been curating? Cause, uh, I keep adding people to
this list, but like on this client, I can't find anywhere that says list and I can find the whole
list. Um, so they actually told me about this other site called Lister. Yeah. I found this
through yesterday. Lister is awesome. Yeah. So, uh, yeah. So my goal with lists was actually
custom feeds. So kind of, kind of advancing the whole give, give the user control over their
algorithm and, um, allow people to have different views into Noster. And really like the main thing
that I wanted to accomplish was, uh, helping people navigate relays. Um, which is kind of,
kind of tricky. It's kind of an abstract problem right now because relays mostly have the same data
on them. There's not really like, there's not a lot of cultural cohesion or topical cohesion
on any given relay. And maybe there are, and if anyone has any like favorite relays that, uh,
that are sort of group-like, let me know. Cause I would like to see something like that. Um, in,
in practice, I kind of hope that that's where relays end up eventually rather than kind of
replicating all the data across all the relays, which seems to be the de facto standard right now.
So the goal with lists was really to allow people to, um, you know, like open up a relay and see the
global feed on it. And then if it's the kind of thing they want, they can add that to a list.
And then you have a list with just a relay and there's a custom view that you can add to your
feed. And then, you know, you can also filter it by hub key or by topic. So it is, it ended up being
like a really, uh, traditional just lists feature, but the relays dimension is what's really
interesting to me. Yeah. Now that you mentioned it, um, actually, uh, we had Mazin and Katie on,
for our first hour of this. Yeah. Yeah. And they spoke about some super, super interesting things,
especially, um, making something like, uh, um, I'm trying to remember what the name is of the
social media where content creators are valued. Do you remember that name of the social media
channel that they compared it to? Um, it's all right. Well, it's the social media where like,
it has tiers for, um, for, for them to like, uh, subscribe to you, to your content. Um, I have it
right at the tip of my tongue. It's like a super popular site, not Patreon, Patreon. Yes. Yeah.
Yeah. So something like Patreon, uh, for specific, uh, content creators, like, you know, like, um,
that do niche stuff, like let's say if it's only fans, right. Uh, specific to them. And what you
just said, like kind of reminded me of that, like, uh, uh, like a content, uh, like a content
specific really, that doesn't have any double, um, events of any kind is just specifically reading
and writing for these people that are subscribed to it. And like, um, maybe you have the, you know,
the read one, I mean the right one. Uh, but then you have to like subscribe for the read one as
well. You know what I mean? Like, I don't know. It's pretty interesting. And then you can have
lists of the content creators on that really, um, I don't know. It's super cool. Yeah. Mazin has a
lot of good ideas. I've chatted with him a little bit lately. I think he has a really good vision
for where, where relays should go. Relays are such a cool primitive. And I don't think everyone,
I don't think anyone has fully thought through, you know, this is like a truism in Noster. Everyone's
like, I don't think anyone understands what Noster is. Uh, and I think that's totally right. Relays
are, are just like a web socket connection with a bunch of events. So you could do really weird
things where you could create a relay that does content recommendations and creates and self signs
events, um, using some new kind, uh, lazily, right? So you connect to the relay, it doesn't have a
database and you just ask, like, recommend me some content. And then it signs some, some event that
says, I'm a relay and I recommend this kind one content and delivers that to you. And then you
load up the kind one, uh, or, or, or something like that. I guess that's, that's more complicated
than it needs to be. But, you know, you can have relays that serve whatever kind of weird, uh,
proprietary stuff they want, whether it's content recommendations or just like kind of grouping, uh,
grouping some, some other set of pub keys stuff or like, and filtering them out. So like maybe,
you know, it would have all of my, uh, notes, but not the replies or something like that. And so you
get like a higher signal relay. Anyway, I think of relays as like potentially being a tool for
publishers to, to be like, here's a magazine or like, you know, like a zine or the indie zine kind
of things. And, um, and then you just subscribe to that relay and you look at its global feed and
there you go. Like you get all the, the issues of that magazine, uh, loaded up as kind one or as
long form content or whatever it might be. Um, yeah, I, I think there's a ton of potential and I
don't really know exactly what that's going to look like. Yeah. One of the things that they said
was all the ability to search a relay, like to search within a relay. Um, that sounded super
interesting, especially with like all the different parameters that they had thought up already. Um,
it's, it's interesting that that's like, uh, I don't know. It's just, that's really interesting.
To me, um, it kind of reminded me of, um, like a search engine in a way. Um, I don't know. It's,
it's interesting. Yeah. I know there are some that support search. I think, I think Nostra.wine
supports search. I have it integrated in, in, uh, in coracle. If you go to the search page and you
type in a query, it'll attempt to send a search query along. Uh, a lot of relays will reject it.
Um, but the ones that support it, uh, will allow you to actually search, search profiles, um, which
is, uh, it's a big difference. Like before, before I added that last week, um, it would only search
profiles that had already been loaded, uh, by coracle. And so, you know, if you were looking for
a particular person, you couldn't find them unless you scan their QR code or something like that.
So the search improved the, the user experience by like,
probably more than anything else. Yeah. This is a problem that I believe all clients currently have.
Um, and crazy how it's just, uh, you know, doing, it's just the, the relay at the end of the day,
being able to utilize it correctly. So, uh, MindTest, can you explain a little bit of how,
how was it exactly that you were able to do it? Like, um, and does it, does it actually like, uh,
cause yeah, I had the same problem where I don't, if I don't follow that person, I've never loaded
their profile, they're not going to show up when I search them, um, like search their ad pub. So yeah.
Yeah. And of course, um, you know, search isn't a perfect solution either, because maybe the relays
that you're connected to don't have the profile you're looking for. So I, you know, Mike, Mike
Dilger, Dilger has talked about this a little bit as far as like, we should probably be replicating
kind zero and, uh, NIP 65, uh, stuff more aggressively. So, so most relays would have
everyone's profiles. So it's all searchable. And then once you find someone, then you can,
then you can like start navigating the network to find them. But yeah, as far as how I did it,
I don't know which NIP it is. Um, not sure which one it is, but I think it's, I think it's,
um, but there's, uh, there's one that just defines an extra search key on a, on a rec. Um,
let me see if I can find it. Uh, yeah, I don't, I don't see it on the NIPs page, but yeah,
it's in there somewhere and you just say search and then you give it a string and, uh, the relay
can ignore it or, um, or actually apply the search to your query. Um, but yeah, like search is really
hard to do well. You can, you can add it to your Postgres database or whatever. Um, and Postgres
has some full tech support, but it's not super, I mean, it's enough, but it's not super enterprise
level. So eventually you'll need like a elastic search cluster or something like that in order
to really fulfill search queries. And then of course you might want structured queries. So, um,
um, right now search is just kind of the bare minimum. Um, and I don't know if more features
should be added to the official version of search or if search should be implemented by like third
party indexing things. Um, I have opinions about extensions too, but, uh, I've, I've written on,
about that on my blog. Where, uh, if you, if you want to plug that in, uh, now's the perfect
time to plug it. Yeah. It's just at blog.coracle.social. Um, it loads kind of slow because the blog is,
is run on Nostr. I don't know if that's why it might be my hosting provider, but, um, it uses
the end blog by, uh, let's see, I'm going to plug, uh, Jikani. Um, I'm not sure if I got his name right, but, um,
um, yeah, it's, it's a cool, cool, like group of concept blog, blog engine that runs based on the,
uh, what 348, uh, or 30,048 long form content, uh, kind. So my entire blog is on Habla or Obla as well.
Oh, that's dope. I think it's cool. Yeah. I fucking love Obla. It took me less time to set up my blog
on Nostr than it did to set up my blog on Pelican, which is a Python static blogging thing.
Damn. Nostr is just so awesome. That's incredible. Every day, every day, I, like, I literally see
something new and shiny and beautiful come out. And I love how everybody's attention just like, uh,
automatically it's, it's drop everything else and just go full on like full throttle on this
because now's the time. Yeah. I used to have a lot of FOMO about that. And I still kind of do,
but I have like FOMO calluses now because every day it's like, oh, there's something else to feel
like you're missing out on. And when I look at what I want to spend my time on, it's like,
do I want to start a new project or do I want to make all the things that are wrong with Coracle
better, uh, and add features to Coracle. And it's always like, well, I'll just keep doing what I'm
doing. Um, but it feels like I, you know, I've only made one product. Uh, I think it's pretty,
pretty like pretty full featured. Um, but, uh, but meanwhile, Pablo is out there like pounding out,
uh, something new every six hours or something like that. Yeah. It's down to like almost every
six minutes now. So yeah, it's the, it's the Nostr time warp, uh, you know, like what, what
it's been like five months since, since, uh, Nostr blew up and it feels like it's been five years,
10 years. It really does. It really does. Of, uh, all the, all the developers, like, do you know
how many developers there are? My impression is like maybe like one or 200 active developers,
but it's super hard to say whether it's more or less. It's, I have, actually I have no idea.
I've seen that there's lists around, um, when it comes down to guides on who to follow, there's a
whole dev list, which is amazing. Um, cause you guys are, you guys are the rock stars here. Um,
and no, I have no idea to be honest, but 200 active developers seems like, are like a really good,
um, number for it. I believe we have how, how many years is it that you're, uh, cause there's,
I forgot what was Primal Primal.net tells you like how many active end pubs there are, right? But,
um, it's not a good, uh, it's not a good read, right? Since it's only like, uh, based on if
they've published one node and have one follower or something like that. Yeah. Yeah. Well says
Primal says there's 27 million public keys, which I don't believe that. Yeah, there's no way. Uh,
it says 478,000 users. I think that's probably a little high too. Yeah. That's a little high. I,
I cut that in half maybe. Yeah. Yeah. Uh, the stats I've been going off of on Nostra.band,
I don't know how they calculate their, their, uh, like high quality pub B, but it's like 18,000
weekly active users, which I think that makes a lot more sense. Um, actually that feels a little
bit low to me. So I don't know. Who knows. Damn. I should have asked them. Um, we had them here.
Not. Oh yeah. Yeah. I really wish I would have asked them. Um, he's, he's bro. Oh my God. The
work that he's doing right now. Uh, when I was with our band is top notch. I love it. Um, every day,
every day that I look on here, there's a whole bunch of new updates now that you could actually
log in and do a whole bunch of new, uh, new cool stuff. Like he's, he posted about like all those
new updates. I believe he posted about them yesterday. Um, and we talked about a couple of
them today. Um, Ethan, if we also had Ethan on and he was super excited to, to speak to, um, to him.
Um, it was, it was a super, super, super interesting conversation. Um, some of the techie
talk, um, got over my head, right? Just cause I just didn't understand it. Um, but overall, um,
it sounds like, it sounds like he's just keeps on doing the right things and making the right,
you know, um, cool things. Like, uh, I, I'm interested in the RSS feeds and the API.
Yeah. That's where you can just like create an RSS feed, uh, or you create a pub key based on
an RSS feed or something like that. Uh, you could even create an RSS feed based on a hashtag.
Oh, nice. Yeah. And have that whole hashtag, uh, on a site. If you like, if you just want it to be
like, uh, this is something I was going to tell, um, I was going to tell Walker, Walker, you could
just grab that, um, RSS feed from Flister and put it on the site. Yeah. So what would be cool is if
these RSS feeds also published to a, a public key or like a virtual relay, like wine has,
Oh yeah.
is that you would not only have an RSS feed, but you would also have a custom feed within
NoSphere that you could subscribe to. That is true. Holy shit. I had this idea a while ago about
oracles. Um, and it's kind of like come up in a bunch of different ways, but, uh, it'd be cool to
be able to make oracles really easily. Um, you know, based on whatever, like a temp, like a
thermometer in my garden or something like that, but also, you know, uh, isn't there a tool somewhere
that lets you put in an RSS feed and then integrate it with NoSphere? I can't remember.
Let me, I think I know what you're talking about, but let me just check my bookmarks real quick.
I gave up on bookmarking stuff on NoSphere. I have a text file with like 50 or a hundred links
and, uh, I just got tired of maintaining it. So I just try to remember everything. But of course
the naming conventions on NoSphere are impossible to follow. So I always forget, forget what I'm
looking for.
Yeah. I don't remember the name that, that it's get, that it has this, so I can't even fucking
like find it correctly. It's not, I tried looking for anything that said RSS, but no, I couldn't
find it. I guess I don't search for NOS because that matches everything. I get the feeling
sometimes that people don't realize coracle is on Noster, um, because it's not called Nostracle or
something. Yeah, that's so true. I should rename it to Nostracle.
Holy shit. And who's, who's, uh, cause you're, you do the backend, correct?
Uh, there, I do everything on coracle. There's not really a backend. There's, there's like a
little server, there's two little servers that are kind of helpers, but they're totally optional.
You can, they're meant to be self-hostable pretty easily. So if you go to the settings, you can
change, change which servers you're connected to. Um, and then I, I, I, I, I, I, I, I, I, I, I, I, I, I,
um, and then I anonymize all the data that I send to my usage end point. So if you, if you configure
those, uh, those links, then I don't even know you're using coracle.
Wow. Holy shit.
But, uh, yeah. So I don't collect IPs or anything like that. Um, I'm not like a huge privacy,
uh, like nerd. Um, I just know that lots of people value it and I value it too. So I tried to
make it easy, uh, or just, just avoid violating privacy accidentally. Right. Um, but, uh, yeah,
one of them is, uh, duffel putt is just a little server that helps me do integrated image uploads
and link previews. And then, um, multiplexer is, uh, it allows you to, um, kind of, uh,
filter all your, uh, web socket connections through a server. And, um, and so the server
de-duplicates events for you. So it can reduce bandwidth by a lot. Um, and, uh, it's, um,
I don't know, it, it, it increases latency a little bit, but also reduces load on the,
on the client when you're using it. So as far as performance, it probably is kind of just a wash.
Um, but, uh, but yeah, you have to, you have to verify fewer signatures when you're using
multiplexer. So, um, it, it helps with battery life and, and, uh, data, uh, like bandwidth. So
that's the only thing. Everything else is client side. And, um, that, that was kind of a goal of
core goal too, is to build something that, uh, if at all possible doesn't, doesn't contribute to the
centralization of no stir at all. Um, so there's no service that anyone relies on. And actually,
I've also been working on making core goal, um, itself, self-hostable. So, uh, just this week,
I released an update that lets you, uh, kind of white label core goal. So you can choose, um,
your color scheme and add like a logo image and change the name of the app. And then you can just
put it on your own domain. And, um, now, now you have a, and there's also a way to hard code,
which relays it connects to. So you can create a private social network on, uh, on the no stir
protocol. That's incredible. I'm actually on the GitHub right now, I believe, uh, core goal. No,
I'm on the wrong one. I'm on core code duffel, duffel pod. Oh yeah. That's the little helper
server. There's not much there. Yeah. I don't, I was looking at contributors and stuff like that.
I see Tom stab. I see. Yeah. That's me. I tried to be anonymous with no stir at first, but I
dox myself really quickly. Nice. Cause of the gap. Yeah. It was mostly, I think it was mostly
the GitHub. I set up a different GitHub and I, uh, set up a different SSH key on my computer and
stuff. Um, but then I forgot to use it. And so I committed using my regular account. Oh man.
Don't worry. I also dox myself the other day. Uh, when I, when I posted, uh, the stats of how long,
uh, uh, how much I've been using my phone. Oh yeah. Yeah. I didn't know that they,
they literally had your name right there. And then, uh, yeah, nice. Yeah. No one, no one except the
FBI cares. So literally, literally. Uh, so the, the other contributor, uh, here is actually,
is that actually Kieran right here that we have on the, on the, on the audience, uh, from Snork
or is it a different Kieran? Uh, oh, it did, uh, did Kieran have a, let's see.
I don't get a lot of, uh, pull requests, but I think I vaguely remember that. Let me see.
Let me look at more contributors. I'm going to the insights page, but I probably shouldn't be there.
I look for your job. Oh yeah. I guess, I guess Kieran does have a pull request on duffle bud. I can't
remember what, which one that was, but that was dope. That was very dope. He, he was, yeah.
He added the Docker build. Oh, nice. Yeah. Yeah.
Nice. Very nice. Uh, do you mind if we open it up, uh, to like a live Q and A so the audience could
ask you questions. No, go for it. That's great. Awesome guys. Uh, audience, uh, if you have any
questions for Hadoobad, uh, please raise your hand and we'll bring you right up.
We'll give you some time, but I see that we have, we still have, Oh, Ethan, he must have gone to sleep and woken up again.
I saw Pablo in here. Uh, he must have left for a little bit. Oh yeah.
Yeah. I'm sorry. I'm sorry. I'm sorry. I'm sorry. I'm sorry. I'm sorry. I'm sorry. I'm sorry.
I saw Pablo in here. Uh, he must have left for a little bit. Oh yeah.
He actually heard what we had said and laughed.
All right. Not everybody don't, you know, everybody don't raise your hand at once. Come on now.
I think we have Aaron, um, do you have your hand up? Cause you've had it up for like the
longest. I don't know if it was a mistake or not. Aaron, you're up on stage, brother.
If you have any questions for Hadoobad, now's the time.
Nah, I think he had his hand up by mistake.
All right. AFK.
Uh, well he raised his hand again and oh, we have Cheri as well. Hello, Cheri. How are you?
Hi. Hey, Cheri.
Hi. Hello. Uh, I think because I just joined, so probably like you guys already talk about it.
So I just gonna ask it anyway. Yeah. So like, are you still like working on core protocol four times?
I was working on core protocol full time until yesterday. Uh, do you, so this week I, I, uh,
haven't figured out how I can work full time on core protocol yet. So I'm going back to my normal
job and I'm probably going to do that for another month and then quit at the end of May. Um, and I
don't have anything figured out for the end of May. So hopefully I can figure something out by then.
I've been talking to VCs, um, and I might do, see if I can charge for core protocol or do crowd
funding or work with someone else or something. Uh, I really want to work full time on it. Um,
or, or just on Nostra in general. I think Nostra is super important, super cool. And, um, like I've
heard Pablo and, uh, G sovereignty in their podcast recently say we're going to be doing
sovereignty in their podcast recently say the same thing. They just can't think about anything else.
I can't think about anything else. I just am always thinking about Nostra and I have way more
ideas than I can ever put together. So yeah, it's just like, I have to, I have to keep working on it.
So yeah, I'll be kind of like in maintenance mode for the next month or so, but, uh, but yeah,
core is not going to go away. That's cool. That's cool. Yeah. Because I have this question
because I think it's you, I cannot remember clearly like in the North trivia, you said you're
going to work on car, like full time for three months, right? And you've got some funding,
something like that. Yeah. So it's almost the time to decide. I just certainly remember. Yeah.
Exactly. Yeah. Uh, I got a grant from Futo. They're, they're a cool little organization
in Austin, Texas. Uh, so they, they gave that to me from, uh, from February through, through April.
So, um, yeah, that just ran out. Did you figure out any like pro profit model business model around
Nostra or like in general? I have a lot of ideas, but the problem is I don't think there are enough
users to sustain a lot of businesses right now. Um, you know, there's 18,000 weekly active users.
So if you wanted to make a hundred thousand dollars a year, let's say, um, then you'd have
to make 8,300 a month and 13,000 weekly active users. You'd have to charge each of them 50 cents
a month, which is, um, not impossible, but there's so many different people and products in the space.
I feel like if all of them became profitable, uh, or even if 10 of them became profitable,
um, it would be, it would become really expensive for users. Like Zaps, Zaps feel like such a high
volume thing right now. And in some ways they are because it's value for value and people are being
generous with that, but, um, it's not really enough to sustain a lot of real development.
So yeah, I don't know what the answer to that is. There's lots of ideas I have for,
for making a profitable business, um, after Nostra scales, but, um, but right now I feel like
people have to basically build products on Nostra in a way that you can get non-Nostra users
to use your product. So that's kind of why one reason I've been working on the white labeling
stuff for Coracle, where you can deploy your own instance, because then maybe I can find a way to
sell private social networks to, um, to like organizations and businesses. And then at some
point in the future I can say, oh, you know, it's also interoperable with Nostra and, uh, now Nostra
is a big thing. So do you want to just connect your private social network to the, to the wider
network? Um, and so I can sort of compete with Slack, uh, in a, in some kind of niche, um, and
then down the road kind of use it as an onboarding tool for, for, for Nostra. Um, I don't know, I
don't know if that would work, but that's kind of the only idea I can think of that doesn't require
more adoption. Does that, does that make sense? I'm curious what, what people's thoughts are on
that because, um, I know people are trying to make business models work. I just don't know
to what extent, uh, you know, Snort is actually paying everyone's bills and stuff like that.
So there's a, um, I believe, uh, there's a couple ideas out there, um, different clients doing the
subscription models, uh, and maybe pay walls. I, I believe I spoke to Kieran about that exact same
thing. Um, because he's, you know, he relates to this, like I believe all, not all, there's like
two that are pretty good right now. Well, no, I'm pretty sure all of them, all of them are not like
profitable at the very moment. Um, unless you have like a big grant that was given to you by, you
know, someone, whatever. So point is like, yeah, devs right now, client devs are not being paid
what they're, you know, what they do for, uh, their work. So yeah, making these things like,
uh, pay walls for certain things and like allowing like that to be a feature and then, you know,
charging a fee for it. Um, and also like, you know, creating a subscription model where you,
you know, you have certain features that are premium, uh, for the user, uh, being given to
them if they subscribe for a certain price a month. Um, I think these are all models that are like,
you know, uh, that should work. Um, in, you know, in, uh, they should work and I believe that they,
they could, especially with what you said, like, you know, with our user base growing, um,
at a spending, uh, spend a little rate, especially if we, uh, if we cater to the kind of, um,
creators that will, uh, shed light on our, you know, on this protocol, um, in the correct way,
you know what I mean? Um, like, yeah, like that. Yeah. Yeah. Onboarding influencers or just people
who, who are going to get zapped, uh, and, and, uh, and share, share the protocol and the products
with, with everyone else with their audience. I think that's cool. The, the zap splits idea is
really neat too. If a client can say like, you know, do you want to give me, do you want to donate
1% of your, of your zaps? Uh, I think that makes sense too. Another model that I think really
promising is, um, charging for services. So like, um, charging for social media clients, I think
it's actually possible on Nostr just because the culture is so different, but you know, like
Twitter charging for, um, for the badges or even if they just charged for like features or something
like that, um, there's, there's, that's always been pretty unpopular. Um, I think because, uh,
just like for a variety of reasons, um, not least of which that people are not super willing to pay
for things that they don't need, especially like if we're going to into like a recession or
depression here, um, people are not going to be excited about paying for social media. That's,
that's the first thing, that's the first builder not going to pay for. So anyway, um, the other
model that I'm interested in is, is, uh, having services, uh, like third party backend services
charge. So charging for image uploads or like multiplexer saves you bandwidth. So having
multiplexer charge for bandwidth, uh, that the user uses, then, you know, you're basically,
you're basically arbitraging, uh, compute resources because you have to pay for storage and you have
to pay for bandwidth as a service provider. And so saying like, we're just passing this along with
a markup. Um, that seems promising to me too. And then it allows, it allows you to not have to pay
right out of the gate for social media, which is kind of like kind of a bad look. Um, but
kind of a bad look, I think, um, potentially just, you know, and how it's, how it's perceived by
end users, uh, who aren't bought in to the culture and everything. Um, and then also, you know,
a whole other thing is referrals. So, um, if, if third party services like content recommendation
engines or whatever can charge users for, for access to their service, um, as, as like an add
on, then the client that integrates those things can get a referral fee, right? So if there's, um,
if there's like a, a publisher that wants, wants their stuff and it's a, it's a subscribe only
magazine, if I surface that publisher as like a recommended feed in coracle and someone clicks on
it and subscribes through coracle, I can, I can report that click to the publisher and then they
can give me a cut of the subscription that they, they gain. So you get basically, it's like an
advertising model, except it's an advertising model that aligns with the interests of the users.
So rather than inserting a bunch of like curated, um, and targeted ads into people's feeds,
so they'll click directly on the product, you know, your users are just looking for good
recommendations for, um, additional content or, or whatever, um, services that augment Nostra itself.
And then, um, and then you can, they can pay for those. And then the client that brokered that
connection can make a little bit, obviously there's some like perverse incentives in there
and it could go the wrong direction, but, um, but I think it's still, I think it's viable.
Oh yeah. Yeah. Yeah. Thanks. Yeah. That's very interesting.
Yeah. Because you mentioned like, I know it's high limit, so it's not,
Oh, wait, sorry. Say that again. I, uh, I miss that.
Sherry, um, if you're speaking, we can't hear you.
She sounds very far, right? If you want to refresh your mic.
Oh, here's another question. The reason that I kind of feel car will become slower than before.
Any particular reason? Oh, okay. Um, like, uh, when did you notice it gets slow?
For around, uh, two weeks, or maybe one week because time on lost is much more faster.
Yeah. Probably recently one week, one or two weeks.
Okay. Um, I would guess it's, it's a relay thing. It's hard to tell. Sometimes, um, I did just
release an update yesterday that, uh, changes how feeds load. Um, and I don't know, I don't know
if it's going to be faster or slower. Uh, it should be faster though. Uh, so maybe try again.
And then if it's still slow, um, check on the quality of your relay connections because, um,
Relays, relays are really getting bombarded right now and some of them are holding up pretty well,
but, um, but things do tend to slow down during busy times. Um, so, um, I think that's, that's
what I'm saying. Um, but things do tend to slow down during busy times. Um, so yeah, it kind of
just depends. Um, but performances is something I've been struggling with for a long time. If,
if any, if any of you have used Oracle, like back in January or December, it was basically
unusable because my algorithm, uh, wasn't very good for loading feeds. Um, and so I don't want
to mess everything up by just making it impossibly slow. So yeah, let, try it again and let me know,
send me a DM or something. If it's still slow. Yeah, definitely. Yeah. Do you want to share
it and how you do the feed things now? Like your latest update? Which things? Uh, like how, how
you get all the feed? Like you mentioned, you, you just update your algorithms, right? Yeah. Yeah. So
I have this cursor abstraction and of course, you know, you've got multiple relays that you're
connecting to. So you basically create a cursor with all the relays and you say, you just give it
a, um, a default, uh, time Delta to walk back in time. Um, and the reason you need to do that is
sometimes relays will, will give you events, uh, out of order. So, you know, you'll just ask for,
give me the latest, give me 20 events with a limit and the relay will be, will be like, yeah, sure.
Well, here's something from March and, uh, that's, that's pretty much unusable for the way people
want their feeds. So you just have to drop that event. Um, so I'm using the window, um, to sort
of mitigate that. So like on the main follows feed, I just say, give me everything after six
hours ago. And then, um, the, the update to my algorithm that I did this week was I'm paginating
feeds, uh, per relay. So before I was kind of doing this complicated heuristic where I was taking
the 20th percentile of events, uh, and dropping those, and then taking the 80th percentile of
events based on created time and, uh, and kind of conservatively moving my window. And that worked
pretty well, but I was pulling a lot of duplicate events all the time. And so it was really wasteful
for bandwidth purposes. So, um, so now I'm keeping track of the, the sliding window, um, as far as
like until and since, uh, on a per relay basis. So if one relay has a ton of matches for my filter
and it gives me 20 events in the last three minutes, and then another relay is a lot less,
less dense, maybe it's like an archival node, and it gives me one, one event for the entire, uh, six
hour, um, time span, then I just won't ask that, that, uh, slower relay or, uh, not slower, less
dense relay for any more events until the really dense relay, uh, hits the same window, right? So,
um, I'll get like, uh, uh, 120 pages of events from relay A for every page from relay B. So now
I'm not asking relay B for the same event over and over, basically. Does that make sense?
Yeah, yeah, yeah, yeah, I think so. I think it should, like theoretically, it should improve the
performance. It should. If not performance, it'll improve bandwidth. And if not, then at least it's
kind of a cool algorithm that has a lot of... Yeah, yeah. Can I, can I choose, like, which relay I
want to read from and which relay I want to write to on Carlyle? Yeah, if you go to the relay settings,
there's a toggle. So every relay that you, like, sort of join is a read relay, but the orange button
lets you turn off which ones you're writing to. And then also, if you, uh, when you create a note,
uh, you can choose which relay you want to publish to for that individual note as well.
Oh, really? Oh, you added that feature now? Oh, that's super cool. Yeah.
And I spent some time figuring out what the toggle means on the relay setting page.
Yeah. I'm so dumb. I didn't know it means read and write.
It's all buried in... I designed the whole thing myself, so I'm not a UX designer. It's, uh, so
it's, it's been a long evolution of that. Um, but also if you reply, if you reply to a note,
Coracle will mix in your write relays with, um, with the relays where that note, where the,
where the notes author publishes. And so, uh, if you use Coracle, I think authors are more likely
to see replies. Um, I'm not sure how often times was that, but that was kind of the whole Nip65
gossip model thing a couple months back was, was making an effort to, uh, to, to put notes in
in different places. Yeah. I really like in Coracle, you can show, uh, which really you
found this event. This is very cool. Yeah. Uh, yeah, that was like, that was one of the most
important things I wanted to solve while I was working full-time on Coracle is cause like relays,
relays are what makes Nostra special. And, uh, you know, like Primal is a really nice client,
but I, I don't think it really, uh, hews to the spirit of Coracle. I mean, not Coracle, uh,
of Nostra, like because it abstracts over all the relays. And so it basically re-centralizes
the user experience, uh, on their servers, which is fine. Um, and it's really cool to have an
overview of the whole network. Um, but I'm, I'm trying to do basically the opposite.
Let me check. Oh, oh yeah. When I post a note, I can choose which really I want to publish to.
But when I reply to others, no, I cannot choose. Yeah. Yeah. I, I might add that. I don't want to
add too much, too much stuff to the interface, but, um, and it, it, it's, it's kind of smart.
So it automatically chooses a bunch of relays rather than, uh, letting the end user choose.
I wanted Coracle to use too. So, but yeah, do you think that would be important?
Do you think, do you think that'd be important to be able to choose which relays, uh, reply gets
published to?
If she doesn't want to answer, I'll answer. Cause, uh, yeah, I definitely do think so.
Um, yeah, hell yeah. What the fuck? Hell yeah. Especially if it's, uh, if it's one of those like,
yeah, those who also has questions, just, I really, I really use a lot of Coracle.
What, what would that look like? Like, uh, you know, you're replying to someone and that you
only want to send it to like a private relay or something like that.
Exactly. Exactly. It's, it's, let's say it's, uh, that really that this, uh, that Jason is trying
to make for not a bot. Uh, let's say we, that actually came out, you know, and I, and I only
want to reply to that. So yeah, hell yeah. Yeah. Yeah. Cool.
Um, yeah, I honestly think like there, there should be more private relays for, um, for this
specific, like for us to have, uh, you know, more like diverse, like, uh, little communities of
niches and stuff like that. I don't know.
Yeah. A hundred percent. I totally agree with that. One thing I think we need for private relays is
a better onboarding mechanism where, you know, you have a couple different options for how to get,
how to register with a private relay. Cause right now it's all done through like DMs or an
external site. And that's, that's fine, but it would be cool to be able to connect to a relay
from within a client. And then the relay issues and off challenge. And then the client is like,
attempts it. And if it's denied, it shows like a modal or pop-up and says, this relay wants you
to register in order to use it. Do you want to ignore that? Or do you want to go ahead and
register? You can register at this link or you can use this coupon code or you can enter your email
or whatever. Um, yeah. Cause, cause, uh, you know, the onboarding experience is just, it's the hardest
part of the whole thing. And so, yeah, I think that's a good point.
Cause, uh, you know, the onboarding experience is just, it's the hardest part of the whole thing.
Uh, so smoothing that out would be for private relays would make it a lot more usable.
I agree. Um, shit, uh, this, thank you so much, Hadoobad. Like you've, you've made this time go
by so quickly, uh, with your expertise. Uh, thank you for having me on. It's, it's fun to do my first
nest. You, you ha yo say last. Oh man. I had a lot of fun as well. I'm glad you had fun, man.
For real. I learned so much from you. This is great. This is fucking great. I appreciate you.
Dude, I appreciate you. I hope you guys can survive the next, uh, what do you, what do you got? Um,
how many do we have? I think it's like 10 hours left, right? 10 hours. Nice.
Nice. Man. No, no, no, not 10. Uh, we have 11. 11. 11. Yeah. Wait, wait, actually? Yeah. This is our 13th.
Oh God. Yes. Thank you so much Hadoobad for being on. Like so much of the tech stuff went over my
head, which is why I didn't ask much, much of the questions and let Sleepy speak because I'm the
last techie guy that has, but it's absolutely amazing what you do. So have you on. Cool. Thanks
guys. Appreciate you, man. Can't wait to have you on next time, man. Uh, I hope you have a great
weekend and yeah, man, take care. Much love. You too.