juraj: Welcome to this collaboration between Option Plus and Bitpunk.fm Unwound.
juraj: I'm here with Josh. Well, here, I mean, on the internet, of course.
juraj: We are separated by a very long transatlantic cable. I can't pronounce it.
juraj: So welcome, everyone. Hi, Josh. hello.
josh: Let's uh let's get this kicked off there we go.
juraj: Okay i'm tuned in that's right hope hope i won't drop out that's right right perfect yeah great to be.
josh: Here like it's great to uh been looking forward to talking to you.
juraj: Yes me too uh we should uh
juraj: do uh you know how people are making fun that's now now bitcoiners interview
juraj: each other how uh how right there were about 100k bitcoin so we should do that
juraj: at some point or maybe not but it.
josh: Hasn't hit 100k bitcoin so.
juraj: Yes yeah they're not right yes and inflation is pushing the target farther and
juraj: farther away 100k when Bitcoin started anyway we have a much more pressing matter
juraj: here because the Albycalypse is coming.
josh: Yeah this has been what I think has been interesting about this is,
josh: yeah Albi kind of like and it's really you know it's not like their fault but
josh: they really onboarded a bunch of people everyone really enabled the,
josh: you know, as far as I understand, the podcasting 2.0 kind of boom here.
josh: But for, I think, mainly custodial KYC reasons and kind of regulations,
josh: they are trying to migrate everybody. They're basically rug pulling.
josh: They're nicely rug pulling everybody, which is understandable.
josh: And now it's like the tide has come out and now everyone has,
josh: now there's that kind of like a scramble to find a solution.
josh: And so I guess what's nice is you haven't, you've been
josh: doing this for quite a long time you've got a few
josh: books that talk about the different lightning options so you know
josh: it's like very curious to talk to you about this but i think i think
josh: there's a lot of a lot of questions i still see is like why maybe this
josh: is a nice place to start is like why can't people just
josh: keep using uh the key send which is
josh: the pod the main podcasting um which is the main podcasting method that everyone's
josh: using so like what's wrong with key send and why is that not going to work anymore
josh: or or i mean this is like yeah that's that's like the for some people i think
josh: that's the question is like what's you know yes yeah.
juraj: Yes, so basically, let's maybe start what is going to happen and why people are using Albi.
juraj: So you are listening to a podcast, hopefully using podcasting 2.0 app that can stream sets and boost.
juraj: That means that there are some lightning payments involved per minute,
juraj: which are actually batched but they're accounted for per minute and if we are
juraj: exceptionally insightful or funny you can boost us and that's a payment with a message,
juraj: on both sides on podcaster side and at least I think but especially on the listener
juraj: side there has to be an integration between a podcasting app,
juraj: such as Fountain or what are the podcasts?
juraj: Podcast Guru, Podverse. Yeah, yeah.
josh: Yeah, these kind of breeze even.
juraj: Breeze, breeze, yes.
juraj: So the problem here is that if someone is making a podcasting app,
juraj: they don't necessarily want to implement
juraj: lightning wallet and some
juraj: do fountain has an integrated wallet and
juraj: breeze is actually a wallet that can also play
juraj: podcast so it's kind of the other way around um so what these other apps have
juraj: done especially those that are web-based is that they outsourced all the lightning
juraj: mess and how payments are processed to Albi, which was like an API.
juraj: You would do something like similar to whatever, Facebook Connect or something.
juraj: You would sign in, kind of pair your client to your wallet.
juraj: And the app would just basically over some API say, you know, pay this podcaster.
juraj: They're cool and funny.
juraj: And Albi would handle the payment. So they're turning off this. Oh, what is happening?
juraj: Yeah, yeah. Explain, explain.
josh: Yeah. So I just set up this. We'll have to take this detour. But I just set up.
josh: So, I just set up today my cassette answering machine, and it is an analog cassette answering machine.
josh: I have an analog telephone adapter connected to a VoIP service,
josh: and it's got two cassettes in there, one 20-second tape loop for my outgoing
josh: message, and then this incoming message that's set for 30 seconds.
josh: And then people can call and leave voicemails. But it has this feature,
josh: I guess, where so you can do 30 seconds or three minutes.
josh: But if you hang up before the time is done, it just beeps fills that time.
josh: So I either have to listen to a 30 second beep fill or a three minute beep fill.
josh: So I've set it to 30 seconds and then but people then get cut off because they
josh: don't realize how short it is. But so, yeah, people, people are.
juraj: So someone was leaving a message.
josh: Someone was leaving a message. Yes.
juraj: An old school voicemail.
josh: Yes.
juraj: I have also left you a message, so now I can hear it from the other side.
juraj: It's basically the same except for the beeping that I don't hear when you hang up.
josh: Yeah, I have to look into that, but I don't know why it doesn't detect the phone
josh: hang up signal on certain calls.
josh: But yeah, anyway, I'll try to mute it when it comes on.
juraj: All right um i i wanted it to be on i think.
josh: Uh okay yeah we can say it's fun we'll see like.
juraj: Yes yes hopefully.
josh: Okay so yeah so i'm sorry i interrupted you yeah hopefully yeah all right all
josh: right yeah so um so let me try to summarize what you had because just because
josh: i because all some of this is also um i came in this news so we had albi that was acting as this api,
josh: for, you know, this is Albie now, not Albie Hub, like the OG Albie,
josh: was acting on this, this...
josh: API for certain podcast apps to integrate with so that they,
josh: as a podcast listener, I could have this account with Albi with some sats on it.
josh: Then when I boosted a podcast such as this one, it would actually make an API
josh: call to Albi and then Albi would do the lightning payment. Is that correct summary?
juraj: So one of the features of Albi, unlike many other custodial wallets,
juraj: is that it could actually do the key send.
juraj: So what's a key send?
juraj: So normally, when you use Lightning in any contemporary setup,
juraj: except for Podcasting 2.0,
juraj: you would actually pay an invoice one way or another.
juraj: So you would get a string starting with LNBC, for example,
juraj: that would encode the note pubkey,
juraj: where to pay, how many sets, description, and some technical details, expiry,
juraj: hash of the payment, and so on.
juraj: So one feature of this invoice is that it is one-time use.
juraj: It can only be paid once. So that's different to a Bitcoin address, for example.
juraj: With Keysend, what you could actually do is you would only have notepub key.
juraj: And you would just say over the lightning protocol, send some sets to this node
juraj: and it would just go through without any invoices or anything like that.
juraj: So that's like,
juraj: it is very understandable that they have chosen this way for streaming sets
juraj: to actually work because otherwise you would need to figure out how to get the invoice.
juraj: But we will have to figure it out. So that's a problem.
josh: So why was Keysend, was there a use case? So basically, Keysend,
josh: you know, someone can just send you money, which is like an email.
josh: Like you can just send, you don't, once it is set up, you have the node pub
josh: key, you can just start pushing sats to someone's node without really their permission.
josh: So was there a use case for Keysend
josh: besides podcasting when Lightning was first created or what was the?
juraj: I don't know, but there was all this talk about streaming sets,
juraj: not only for podcasts, but for like charging electricity and so on.
juraj: One important thing about Keysend is that you can also include some tags and values,
juraj: which can kind of identify what this payment is for and include some more data about it.
juraj: So that's how some services can, for example, identify when they run only OneNote.
juraj: For many users, they can identify what the payment is for.
juraj: So if you set up your value for value podcasting, you would probably do this
juraj: key value thing with some weird strings there.
josh: So okay is that because you the
josh: there's a tool that you made that integrates with um seed lightning to look
josh: at the ln invoice i think uh to to see the message of like what the podcasting
josh: 2.0 community calls a boostagram and is this is this the inside that is the
josh: metadata you're talking about where you would put some of that information.
juraj: Uh it's in the description of the payment that's uh i think another thing uh
juraj: it's uh it's basically some JSON-formatted extra data.
juraj: I don't know actually where it comes from.
juraj: List invoices on my node just pops it up. So I saw it and parsed it.
juraj: So what you're talking about is I made this podcaster dashboard because I really don't like LND.
juraj: So I run a core Lightning node, which I...
juraj: Don't love i don't think it's
juraj: a super great idea to write a lightning
juraj: note in c which can have like buffer
juraj: overflows and and fun like that uh but i don't like lnd like it's uh they they're
juraj: they're lost maybe we'll talk about it a little bit more later but okay so i
juraj: i am running a core lightning node and all these fancy tools for podcasting 2.0.
josh: Were made for.
juraj: For lnd so.
josh: Right so.
juraj: I instructed my friendly ai model to code me a dashboard.
josh: Yeah and.
juraj: Uh it's working it's pretty pretty neat so.
josh: Nice yeah it's like the i think the lnd
josh: one is called helipad and uh it is
josh: it is uh similar but i
josh: there i know the podcasting 2.0 people are
josh: using it with like a graphical there's a whole gui and
josh: they can see it on a web page so they sit there and will read the boosts
josh: as it comes in and so this this is
josh: so the this data is then in part of the json it's
josh: part of this json packet that's coming in with the
josh: message yes in the key
josh: send payment yes so all right
josh: so so key send basically if i'm
josh: just trying to summarize here so keysend then lets you is is
josh: kind of seems to be geared to uh sending payments
josh: without an invoice without an amount so i can just
josh: freely send and it has this ability to ride data in
josh: the entire case on packet okay okay so that
josh: exactly so that's what we've had forever so
josh: now the thing i'm curious about because i i'm kind
josh: of coming in the lightning a little bit is okay so
josh: keysend existed but then there was this
josh: my then there was these other payment methods like bolt 11 and some other things
josh: that i'm probably skipping a few but then why doesn't keysend work for other
josh: like why do we make a why did the community make other lightning payment methods
josh: like what's wrong with keysend um these other ones yes.
juraj: Uh i think uh One problem is proving payments and being able to pay only once.
juraj: Um which is a nice feature uh by the way i was able somehow to uh to pay uh and.
juraj: Bolt 11 invoice i was buying something and i
juraj: paid more by paying simultaneously from
juraj: two notes and i don't know how technically possible
juraj: but actually the merchant
juraj: wrote to me that you send us more money but there was an
juraj: amount in the invoice it was not like a free
juraj: invoice and I just scanned it and hit pay but it's
juraj: timed out on one note so I paid it with another
juraj: wallet and somehow the pre-hash
juraj: got propagated and took the
juraj: payment also as part of the payment from the first note as
juraj: well so anyway so yes this
juraj: this was the idea the reason I told
juraj: you this story is that it's not perfect but basically
juraj: this idea of signed invoices
juraj: you can you can make sure that
juraj: it comes from the note if you know the note key
juraj: is signed the pre-hash
juraj: pre-hash is basically a confirmation of
juraj: the payment so if you have a pre-hash and
juraj: an invoice that was signed by the note you have
juraj: proof of payment which is useful because.
juraj: You can you can prove that you paid the merchant there
juraj: is an expiry which is also nice because when
juraj: people want to hedge the exchange rate for example on the other side they want
juraj: to make sure that you know you won't pay the invoice tomorrow when you wake
juraj: up you need to request a new invoice with a new amount so it has all these nice
juraj: features And I actually like it.
juraj: With KeySend, you can think about it as a permanent address,
juraj: like a Bitcoin address. You can send whatever amount, how many times you want.
juraj: Invoice is one time. It can include an amount.
juraj: It is signed. You can prove that you paid it.
juraj: And it contains a description, some kind of identifier and so on.
juraj: It can also include so and
juraj: another thing why invoices became popular
juraj: is that they support private
juraj: channels and you can you can include
juraj: route hints so you can say oh maybe you
juraj: don't see how you can reach me
juraj: through the lightning network here are some hints if you talk to this node they
juraj: will know how to pay me maybe they have a private channel so you can you can
juraj: actually add a little bit more into into a bolt 11 invoice which is what you
juraj: call a lightning invoice these days okay um so.
josh: Um so that sounds so bolt 11 sounds like the typical kind of like coffee shop kind of use case.
juraj: Or services use case.
josh: You, I want, you know, I go to get a coffee.
josh: I say I want the, you know, flat white, hipster flat white from hipster coffee shop.
josh: And they ring up the invoice. They present the QR code. I pay it, the lightning wallet.
josh: And there we go. Like, now we're gonna, okay.
josh: So then that's the, But the problem with Bolt 11,
josh: or not really a problem with Bolt 11, the problem with like invoices in general
josh: is that it's not a tip jar, right? So if I, once I put it up there-
josh: it has this one time i i did i did troll people on nostor pretty hard right
josh: before we talked and said uh hey definitely do not call me definitely do not.
josh: Definitely the volume is set really loud this would
josh: be this would be an inopportune time so it
josh: is it is uh i was set up all morning and
josh: no one i was sad that no one was calling and so i
josh: just had to put the proper beep and now uh okay so
josh: but yeah i'm glad i kept it to 30 seconds okay yeah so
josh: bald 11 so great for this kind of invoice i want you i
josh: somehow you know ahead of time to send this particular amount that's either
josh: arranged you know in a shop or a priori or something i it sounds like it has
josh: this but the keys the the routing thing i've seen be a problem before with key
josh: send because especially with new nodes that have very few channels uh You know,
josh: the bald 11 seems to fix this.
josh: And okay, so that's bald 11. But then the issue would be for podcasting is you,
josh: you know, you would have to either programmatically always generate a bald 11
josh: or somehow you'd have to have this back and forth where I want to send you this boost.
josh: I want to send you X amount. Then it makes me an invoice and I pay it.
josh: So it could work.
josh: There's nothing preventing it from working with podcasting. that's just like
josh: this kind of infrastructure doesn't work.
josh: You probably need some other server or something to facilitate these kind of payment flow.
juraj: Which seems awkward.
juraj: Yes, but it's what we'll end up doing. So let's go there.
josh: Yeah, true.
juraj: Because this is where it leads, actually.
juraj: Because the client apps really, like the wallets, the APIs, they don't support
juraj: and don't want to support this key sent.
juraj: For example, you can have one of the options for the,
juraj: Albicalyps for the listener side or the payer side will be Cashu Mint,
juraj: which can pay both 11 invoices.
juraj: And in order for the payment to be atomic, you need the pre-hash thing because
juraj: that's how the Mint can prove that it has paid the invoice and the token is spent.
juraj: So there is no trustless way or trust minimized way to kind of avoid these invoices.
juraj: Anyway, so I think like when you send me the podcasting 2.0.
juraj: Uh podcast episode and it seems like
juraj: they are like uh the
juraj: the people doing the the specification for
juraj: value uh for value in podcasting
juraj: they can kind of uh are at peace
juraj: now with the fact that they will have to pay invoices
juraj: or the they will have to find a way to to
juraj: pay invoices and get the way with key send
juraj: because they're not going to convince the
juraj: whole industry of lightning wallets to
juraj: start supporting key send because it's
juraj: a much smaller group of people who are
juraj: in yeah testing 2.0 so it's just not
juraj: gonna happen um one of the criticisms for
juraj: this is okay you need a little bit more
juraj: back and forth like you need okay you need to ask
juraj: someone to generate an invoice for you get it
juraj: and then pay it and key send seems like
juraj: more straightforward um that's what they were also talking about in the podcast
juraj: uh it's true it is more communication but uh even like simple payment doesn't matter how it's paid.
juraj: It's like for three hops for like if you pay through three channels,
juraj: if I count it correctly, it is still 21 messages back and forth just to settle that micro payment.
juraj: So like, okay, give me an invoice and pay it will be two messages more. So it's like...
josh: 21 messages for a key... You're saying it's 21 application layer package. Oh, I see.
juraj: For three hops because you need like...
juraj: And I probably... It's more conservative. Maybe it's even more.
juraj: Basically you need to add the htlc to every commitment transaction so that's
juraj: like four messages back and forth and then you settle when the when it's paid
juraj: you basically clear it out so,
juraj: so it's chatty like lightning itself is chatty so adding like two more packets
juraj: back and forth for like, give me an invoice and here's the payment.
juraj: I don't think it's like that much difference.
juraj: But yeah, it is a little bit more chatty, but I don't think this is such a big problem.
juraj: We are like sending messages back and forth anyway.
josh: I see. But one of the things that came up out of this is that most of the podcasters,
josh: I think, are running their node on one of the either Umbral or Start9.
josh: And I think a lot of them are using Start9, which has this current feature of
josh: basically making, you know, people are running at home, their Start9 box is
josh: at home, and they're using Tor to expose external ports.
josh: So there was, for example, I even tried to look in to some of the Lightning
josh: other options, and there were some,
josh: it wasn't clear to me if it had to be like a clear net, like it basically had
josh: to be publicly accessible or not.
josh: So on these other, okay, so yeah, so, so the fact that it's behind TOR, it doesn't matter.
juraj: No, no, it doesn't. It's a peer-to-peer network, so you can route through it even.
juraj: You can even do only on messages now within the Lightning Network protocol,
juraj: so you can ask another node to pass a message to you.
juraj: So, like, I don't know in practice, but the theory of the protocol is that this shouldn't matter.
juraj: And this, like this, well, one more thing. I don't think you are right.
juraj: I think most podcasters actually use Fountain or something custodial for the receiver side.
juraj: They just give the... Oh, okay.
juraj: Yeah, that's true. Those that run their own notes, maybe you start line.
juraj: But I think even from the podcasting 2.0, most of my guests on the podcast,
juraj: I just tell them, send me your Fountain address or I'll be. It used to be I'll be.
juraj: Uh, so yeah, I think now most of them just use a fountain as a,
juraj: as a wallet, but it's a, it's again, a custodial wallet and we'll see how long
juraj: they'll be comfortable with this.
josh: But that's, see, that's the, that's the concern, right?
josh: Is that you fountain is the, you know, you know,
josh: and, um, you know, I have nothing against fountain, but like fountain,
josh: you know, is people are going to fountain and then, I don't know they could
josh: get the knock on the door whatever i don't know what jurisdiction fountain is
josh: in but anyway they get the knock on the door and then they're gonna have to
josh: do a similar thing that albie's doing and they're like guys we can't let you i mean so.
juraj: I think that's not even that. I think there is one more problem is that when
juraj: you are running this service and suddenly you realize you have a lot of user
juraj: funds, like when it really grows,
juraj: you will just have other people's money.
juraj: And I'm not sure that I'll be actually got a knock on the door.
juraj: I'm not sure if it's a regulation thing. I think because they also had for a
juraj: long time invite-only sign-ups.
juraj: I think they were just not comfortable with holding other people's money,
juraj: which is understandable. I wouldn't want to do that.
josh: Yeah, right.
juraj: It's a note with private keys online on the internet. If someone hacks it.
juraj: So, yeah. Yeah, but anyway, so what we were talking about before my...
juraj: Oh, that it's going over Tor.
juraj: Yeah. So now let's talk about how you can get the invoice.
juraj: There are protocols for that, and this is what the conversation is about.
juraj: So easiest... Oh, wait, something happened. And I think we are good.
josh: Yeah, it looks good.
juraj: Uh, so, uh, so one, one way how to get the invoice is someone somehow sends
juraj: it to me as a string, of course, not really usable for value.
josh: We're talking about, sorry, we're talking about ball 11 invoices.
juraj: Ball 11. Okay.
josh: Ball 11. Okay. Okay. And so I'm the, I'm a, the situation you're setting up
josh: is I'm a podcaster and I want a ball and I have a ball 11 invoice and this is
josh: how, this is the picture you're painting. Okay.
juraj: Got it uh okay uh maybe one
juraj: uh intermezzo uh nostr
juraj: basically has similar problem uh they don't use key send they use lightning
juraj: address which which we'll talk about what it is uh but i think a good solution
juraj: for value for value should be uh ideally the same solution that nostr ends up with uh Because,
juraj: you know, people do podcasts.
juraj: Like this integration of podcasting 2.0 and Nostra would be nice.
juraj: I've heard that podcasting 2.0 are not very happy about Nostra or not super fans.
juraj: Like, yes, Nostra is very boring. That's why I love it.
juraj: Oh, yeah. But just saying that Nostra has the same problem. There are creators that want to be paid.
juraj: And they use some kind of service. It used to be Albi as well on the receiver
juraj: side and also on the wallet side. They're usually...
juraj: Should be a way for the nostre client at
juraj: least the twitter like clones um
juraj: for the for the event kind
juraj: one basically the the short uh message social network message um we should be
juraj: able to pay the creators and send zaps each other so it's the it's basically
juraj: the same problem um how do i get the invoice so yeah sorry just.
josh: To this to summarize the same problem meaning that the
josh: both of them are both nostr and
josh: podcasting 2.0 are unique in that
josh: the pay er is deciding how much to pay which is yes the com which is different
josh: than the coffee shop use case so in the so if we just generalize this we're
josh: talking about content creators in a value for value world the payer is deciding
josh: how much value to return,
josh: which is a different payment flow, because they can either send one sat or whatever,
josh: 33 sats, but they're deciding.
josh: And so that's why we're saying, okay.
juraj: That's one thing. And then another thing is that when you are paying in the
juraj: coffee shop, the receiver is there. It's online.
juraj: You are interacting with someone that is online.
juraj: Which for a podcaster, okay, maybe you as a podcaster are not online,
juraj: but you have a note that is online usually.
juraj: Uh something is serving the
juraj: rss feed something is serving the files so
juraj: something is online but with nostr
juraj: it can be you know my grandma and
juraj: she went to sleep and she put her phone into
juraj: airplane mode and she doesn't have a node or a server
juraj: or anything so so uh this is
juraj: a little bit trickier in the nostr side and it
juraj: would be good if we found a way how to
juraj: kind of solve this problem in the
juraj: in the same way for both nostr and uh
juraj: and value for value because right now i
juraj: was like for example my first uh
juraj: uh guest uh for for a
juraj: podcast that i wanted to stream sets to
juraj: uh in a in a 50 50 split um
juraj: i just asked her uh give me
juraj: your wallet of satoshi address because i thought you know that's what
juraj: you put on nostril so that's how zaps work so i
juraj: put it there but of course it doesn't work because wallet of
juraj: satoshi doesn't support keycent yeah right
juraj: okay so so uh yeah
juraj: you know um right so so
juraj: so so uh so the the receivers what i'm saying uh it doesn't necessarily have
juraj: to be the podcaster that that is hosting the rss feed it can be a guest it can
juraj: be uh you know So an editor, sound technician.
juraj: Music artist, and so on.
juraj: And, you know, we can't assume that they have a note online or we can assume,
juraj: but then it would be custodial.
juraj: So anyway, just a framing of what are the considerations.
juraj: So how do we get the invoice? So if we come at peace that this is going to not
juraj: use the KeySend flow, but invoices, we have several options.
juraj: There is some third party service, some API that gives us the invoice. That is an option.
juraj: There is a standardized API, which is called LNURL. that's in a form of a URL.
juraj: It's basically a service.
juraj: You send a request to it and you get a Bolt 11 invoice back.
juraj: So that's one way. Of course, invoices are not very nice, not very user-friendly.
juraj: They're quite hard to migrate if you want to, I don't know, use a different
juraj: service or something like that.
juraj: It would be nice if it would be possible to have it in a form similar to an email address.
juraj: So that's what an Allen address is. So an LN address looks like an email address.
juraj: So it's username at domain.
juraj: And there is a way to look up the LN address.
juraj: Actually, there are two ways that's starting to get complicated.
juraj: But basically what it does right now, it returns an LN URL.
juraj: So a url form and then you need to go to the ln url to get the.
josh: Invoice okay so this was the
josh: thing that i okay so i this was the thing i
josh: tried to look into and was found that it was i thought this was difficult to
josh: do with the start 9 tour situation so i looked up the ln yeah so okay okay so
josh: i looked up tried to do an ln address which is similar i think to like a nip
josh: 5 you put a well-known JSON domain.
josh: Okay, so then it's like, okay, so I can get that. So it was easy to get, you know, that set up.
josh: But then trying to get the LN address for the client application to reach the
josh: server to get the invoice, that I think is, yeah, so how, so,
josh: okay, so, okay. That's where I got stuck.
juraj: So this is a big problem and I think many more people will get stuck on this.
juraj: So the flow,
juraj: so what you just said, so basically the way it works is the wallet that wants to pay or the client,
juraj: the podcasting app goes to the domain slash dot well known slash something.
juraj: And it gets a json file and
juraj: the json file says okay i know about this user
juraj: and this is the lm url should you want to pay this user uh very similar to nip5
juraj: nip5 is nostril verified address uh the the the structure is a little bit different
juraj: i i think nip5 is one big json file for,
juraj: all the users at the domain and ln address is a well-known i don't know ln address
juraj: and then username and okay just just for one but the flow is basically the same
juraj: so you go to the web server.
juraj: This web server serves a static file it doesn't have to know anything about
juraj: lightning so you can have an LN address on a totally dump machine where you
juraj: just like put a text file.
juraj: But then there needs to be something that speaks LN URL.
juraj: It still doesn't have to be your note. So you can still have your start line
juraj: somewhere in the basement and something that can get invoices somewhere else,
juraj: but they need to be connected somehow. And this is not easy to do.
juraj: So that's why i don't like this solution and it
juraj: seems that people are kind of converging to this solution um
juraj: so that this this was one of the
juraj: reasons we started talking about this actually yeah and
juraj: right and i was like a little
juraj: bit complaining that this doesn't look right to
juraj: me uh especially for the like the nostril use case or the you know not the podcast
juraj: host but guests and sound editors and all the other people they might not run
juraj: a web server with ln url and well-known file and,
juraj: something that generates the invoices because.
josh: Basically so okay okay i'm glad you're mentioning because basically so the options
josh: if you self-host this is now you you need the web server which i think most
josh: podcasters have their own domain so that part was easy you have the start nine node They have that.
josh: The issue is this bridge software, which has this bridge gateway thing that
josh: has to be both publicly accessible and connected over toward the thing.
josh: So now you need, I don't know, this is like just some of, this is the weird
josh: component. And then for the Noster case,
josh: It's even more confusing because it's like, what do I do with this?
josh: And I think the third thing, which in some discussions I had with some people,
josh: is that this is basically what Albi does.
josh: Like Albi, I think, provides this service of converting.
juraj: So does Wallet of Satoshi. You can get an LN address.
juraj: One interesting thing that can provide you an LN address is a service like npub.cash,
juraj: which basically creates an LN address and converts it into a Cashu token and
juraj: sends it over to you over Nostra,
juraj: which is nice because you don't have to be online.
juraj: When you come online, you just receive your direct messages from the service,
juraj: collect all the tokens and claim all the sets. So it's kind of semi-custodial, but you can do that.
josh: So it's like an inbox for...
juraj: Yes, sets.
josh: A lot. So, all right. So just, okay. On that note, someone just told me right
josh: before this call that if I change this voicemail to three minutes,
josh: that they would probably start sending me Cashu tokens over audio to...
juraj: All right.
josh: Yeah. So I have to dust off that I need... I was just before I was looking into how to convert.
josh: I need to make like a Twilio webpage or something that you paste it in.
josh: It converts it into the audio format. I can decode it.
josh: Sends it or calls me and then comes back. So, yeah.
josh: So, okay. So, but I think the subtext of all, because you've mentioned it a
josh: few times, but the subtext here is I think maybe you're thinking about some Cashu based.
josh: I'm wondering if there's some Cashu because you've since mentioned it and I've
josh: experimented with it as well,
josh: But I don't want to reveal your secret, if that's what you're leading up with.
juraj: I don't know the secret yet, but yes, we can talk about Caching as well.
juraj: What is nice about it is basically it's a way to receive and send sets.
juraj: It is semi-custodial, but you can choose your custodian and you can run it.
juraj: So you can do it with nPubCache. i'm not
juraj: sure but but with these services uh there's
juraj: an open source implementation you can have an
juraj: allen address that sends you sets on your
juraj: own Cashu mint so it doesn't have to be that you
juraj: give your sets to a third party yeah but
juraj: you don't have to be online and like there
juraj: is some node that has to be online the mint or uh yeah
juraj: right and and the relays that receive the token
juraj: and so on but necessarily like
juraj: your wallet doesn't have to be online uh what
juraj: Cashu also allows you to do which is
juraj: quite nice is it is possible to lock the token into a pub key because you can
juraj: have a bitcoin script so they can like they can even be like pasted publicly
juraj: if uh if the if they're locked to your public key.
juraj: So basically, there are ways that how you can use this with Cashu and they're
juraj: like super lightweight.
juraj: So for like streaming sets, it's nice because it's a small string.
juraj: You send it once and it's even like easier than a lightning payment because
juraj: it's like just a string. You send it once and it goes through.
juraj: But it's semi-custodial. It's not as standardized, and maybe the fatty people wouldn't like that.
juraj: So, you know, we converge to Cashu and so on.
juraj: But what is interesting, I think, in this case, is this integration with Lightning address.
juraj: I think that could be used, and that's pretty cool. And on the payer side,
juraj: we will talk about that a bit later.
juraj: But it's also a way to have an API. So kind of to replace Albi with an API of
juraj: a cashmere that can also pay the invoice.
juraj: So for the creators of these apps, I think this is a very, very nice way to
juraj: do it as well. Anyway, so...
juraj: Problem with LNURL and LNADdress is you need a domain name, so you need to rely on domain name system.
juraj: With podcasting, you kind of do, but maybe the editor doesn't want to rely on
juraj: it because domains get censored, deleted,
juraj: you forget to pay, and you already have a pubkey.
juraj: So anyway, another thing is this web server that has to be online and be able
juraj: to interact interactively with some kind of lightning node.
juraj: So there's Bolt 12. Now let's talk about Bolt 12, which I like as a solution
juraj: the most, to be honest, even more than Cashu.
juraj: Uh the problem is uh we won't make it with both both 12 uh until uh albicalyps is what.
josh: Is it again in january or in march yeah they're
josh: saying january 5th is when is i
josh: i think january 5th is yeah so it's uh it
josh: used to be january 26th and then people looked it up and then
josh: it's actually and i i think there's like some nuance to what is actually collapsing
josh: but uh like it's not like uh yeah i can't remember it's slightly more nuanced
josh: but yeah it for a lot of people it uh it is going to affect something so so
josh: yeah so it's it's pretty quick it's.
juraj: It's it's like the mayan calendar you.
josh: Yeah.
juraj: Exactly. So this is...
josh: They... Yes. Thousands of years ago, they were anticipating this.
josh: And then just... The precision back then of analog calendars,
josh: you got to give them some slack.
juraj: Yes, yes, yes. They didn't foresee
juraj: Satoshi being a little bit lazy and releasing B2B a few years later.
juraj: All right.
josh: Okay, so we have, so, okay, so this is, so Bolt 12,
josh: which is like the latest, I'll let you know what I know of it,
josh: which is not much, and then you can, so, so Bolt 12,
josh: I know, because it started, I think I started it here in detail in the summer
josh: when I was at Prague, and the thing, the advertising marketing that I know about
josh: 12 is that, you know, it's like invoice based,
josh: but it has some nice privacy features that,
josh: and somehow, like this was the main thing that really
josh: bolt 12 there's two main things that these are my takeaways it has added privacy
josh: features although i can't speak in detail to what they are and it has the ability
josh: to unlike a bolt 11 invoice to be like a static qr code so you can reuse this
josh: qr code so these are the two marketing bullets that i know of bolt 12 that's basically the extent.
juraj: Yes, they are right. Both of them.
juraj: I learned about the privacy features again today because I forgot about them,
juraj: but they're basically blinded paths.
juraj: So it is adding privacy to the receiver side.
juraj: The center side was already private. So it's basically like meet in the middle
juraj: kind of payment and it's using only on messages and only on routing.
juraj: So it adds privacy for the receiver, which is nice.
juraj: The static QR code. So there are two types of Bolt 12 standard, how do you say it,
juraj: URLs or QR codes or however it's encoded.
juraj: One is called Bolt 12 offer that starts with LNO and that's basically the reusable invoice.
juraj: And that basically says hello, I am a note and if you want to pay me,
juraj: this is how you can reach me and I will give you an invoice.
juraj: So it's the same thing that Alan URL does and Alan address does but.
juraj: What is nice about this, you do all
juraj: this chatting over the Lightning Network so you use only on messages peer-to-peer
juraj: you can reach reach the note if it's uh if if it's uh you know behind tor and
juraj: you are not it is a direct way how to ask a note to give you give you an invoice,
juraj: uh so so when i realized this
juraj: a friend of mine urza has written a
juraj: nice uh software that is called pay
juraj: to uh uh it's on
juraj: ea to number two or
juraj: pay to no t-o um okay
juraj: it's a it's a command line utility for core lightning uh and you can say pay
juraj: to and paste anything so alan url ln address bolt 12 It will offer anything,
juraj: and it will figure it out.
juraj: It will get the invoice over LNURL or Bolt12 or whatever displayed to tell you
juraj: how much you can pay, what is the minimum, what is the maximum,
juraj: write a description, and then it will figure out a way how to pay it.
juraj: If this worked with the with the podcasting wallets
juraj: we would be super happy because you would just
juraj: paste anything into the valley recipient i
juraj: see back and everything could
juraj: be paid anyway so when i heard this that this
juraj: is the flow that you uh that you basically ask
juraj: the node to give you an invoice i
juraj: thought okay let's create a rest service uh
juraj: that does it for anything because this node
juraj: to get the invoice you don't need any channels you don't need anything you can
juraj: just send a message through the lightning peer-to-peer network and say hello
juraj: node i have your offer give me an invoice and then this rest service would just
juraj: give the let's say the podcasting.
juraj: Wallet the client wallet,
juraj: this invoice to pay the problem is that it's Bolt 12 invoice and they're not compatible so because,
juraj: this is a way like you don't necessarily need to support Bolt 12 offers because
juraj: you can convert them to invoices,
juraj: with a fairly small piece of software.
juraj: It doesn't have to be in the node, actually.
juraj: It can be anything that can talk the protocol.
juraj: So it can be like a public service, but then the problem is that your node needs to pay Bolt 12 invoice.
juraj: But this is more common than being able to pay Bolt 12 offers. So it still might be.
juraj: So Core Lightning supports Bolt 12, Eclair, LND, no, what is it?
juraj: The Lightning Development Kit or something.
juraj: Oh, okay. LND doesn't. So LND is the only widely used software that doesn't
juraj: directly support Bolt 12.
juraj: Even paying Bolt 12 offers. But there is a software which is called LNDK not
juraj: to be confused with Lightning Development Kit which is I think LDK.
juraj: LNDK which is this small piece of software that can talk to LND and figure out
juraj: how to pay Bolt 12 invoice.
juraj: So the payer side is,
juraj: You can like, okay, you can't pay to like,
juraj: let's say through cash or like, there are still many wallets that can't like
juraj: parse and pay both 12 offers.
juraj: But when you look at the nodes, the actual nodes that are underlying all these
juraj: programs, there is all of them have a way to pay both 12 offers.
juraj: Even like yes so
juraj: strike uses LND on
juraj: the background and they kind of pushed it and
juraj: strike now allows to pay it and they even pay both 12 offers and they even have
juraj: some kind of tooling how to test interoperability and so on and I think that
juraj: they've been somehow involved also in this but yes they are using this LNDK.
juraj: For the strike customers to be able to pay both 12 offers.
juraj: So the payer side, like, okay, like really there are wallets that can't pay.
juraj: I don't know, like cash probably cannot pay both offer, but it's not,
juraj: It's wider than people believe it is, actually. There are many,
juraj: many wallets that can actually pay these Bolt 12 offers.
juraj: Receiving them...
josh: Many wallets, but not the podcasting clients yet.
juraj: Yes, but they don't know how to pay Bolt 11 either.
juraj: They can talk Albi API.
josh: Yeah, right. so i'm just i'm just yeah so i'm just
josh: so yeah so a lightning wallet um i don't know probably like breeze but breeze
josh: is also a podcast player but like uh yes um yeah okay okay so then okay so they
josh: can all pay it's all so you're saying to summarize what you're saying not all many of like the.
juraj: Payer side is easier i would say.
josh: The payer side for bolt 12 offers is pretty well supported right now is the
josh: summary of that of what you're saying I think.
juraj: That's my impression at least the node software like for major like lightning
juraj: nodes there is a way to pay both 12 over that's what.
josh: I'm saying I'm.
juraj: Not sure about the real wallets that people use I don't know you know.
josh: Like Breeze.
juraj: Has LND in it but.
josh: Probably not LNDK.
juraj: I don't know if I can actually try. Let's see. While we're talking,
juraj: I'll try to pay some offer.
josh: This is also... I guess the other thing is that I think there are,
josh: it's uh man it's just there's there's other categories of users right where
josh: there's i think a lot of users who really aren't you know are mainly in the
josh: u.s i mean you i mean is like strike even available in like i've used strike
josh: in europe to pay things but ken without doing i don't think.
juraj: I don't think i can register for strike.
josh: That's i don't think the google play store has a strike i thought that they
josh: did something where they went in to europe and i think they got they left or something or yeah.
juraj: That's that's the only reasonable thing to do if you are offering this kind of.
josh: Service right yeah current.
juraj: Regulations i don't but then it's also kyc and.
josh: So then so then i have a right so
josh: i would say there's like categories of even bitcoin users right
josh: so you have if you take like the cypherpunk kyc
josh: free kind of people who who i think
josh: a lot of this we're talking about those kind of options but
josh: then if you in the u.s i would say there's a lot of just strike users who um
josh: are very whatever they it's kyc but they're comfortable using strike but what's
josh: the equivalent like strike wallet for europeans that is like is there something
josh: that is not or is there no middle ground I'm.
juraj: Not much into.
josh: So I don't know like.
juraj: A lot of people use wallet of Satoshi which is a custodial solution oh there
juraj: is actually there's a any coin the Czech exchange has a pretty,
juraj: widely used wallet actually which is called,
juraj: Bitlify I don't know,
juraj: Yes, Bitlify, I think.
josh: Okay, I think I've heard of that.
juraj: That's like Venmo. You can also pair it with a phone number and you can receive
juraj: Sats on your phone number.
josh: Okay, so the two biggest, I think, in the US are, at least I hear people using
josh: our Cash App and Strike, which allows a KYC option to then send in Sats.
juraj: But still, does it have an API? like somehow like you can send a boost probably
juraj: by clicking send but like you can't stream sets really.
josh: Correct. Yeah I don't know how it well it gives you a strike for example has
josh: a LN address so you can be like for receiving. For receiving yeah.
juraj: But for sending like when you want to stream sets I don't think it can stream set. I don't know.
josh: You can boost you can well you can send I mean I've used it for Nostra payments yes Nostra zaps but.
juraj: That's just a bolt 11.
josh: Yeah yes but I don't think it
josh: can do yeah I don't think it does key send so this is the this is the so.
juraj: So yeah so back to bolt 12.
josh: I personally.
juraj: Think this would be the best solution for both Nostra and value for value,
juraj: just not right now because it still needs the magical lightning 18 months to
juraj: be implemented widely. Right.
josh: Yeah. But the question I have about 12 is, okay, so say you're, how does it fix,
josh: How does it fix the Nostro grandma use case where I onboarded grandma and she
josh: wants to receive, she gets to receive.
josh: So how does BOL12 change that situation for her?
juraj: For offline receiving, it doesn't change. She would need to use some service
juraj: that would hold the sets for her and convert it to cash or send it to her.
josh: Yeah.
juraj: Or a custodial wallet. So like… Like,
juraj: it doesn't make things work, it just enables more use cases for people who don't
juraj: want their own domain or have the nodes behind Tor on like in the basement and things like this.
juraj: So, so the thing is, so in order to be able to pay over Lightning,
juraj: you already need to be able to talk the lightning protocol
juraj: like something needs to you know pay the invoice even
juraj: for key sent you need to be able to
juraj: send messages and actually most nodes allow
juraj: even over api to to uh
juraj: they allow you to send like onion messages or
juraj: normal messages over the lightning network so if you
juraj: are sending sets over lightning something already speaks this protocol and this
juraj: interactive uh so using bolt 12 for getting the invoice is like you don't add
juraj: another layer of complexity.
juraj: You don't need port 443 somewhere.
juraj: Like if you are able to receive payment, that means someone is able to somehow
juraj: reach you through the Lightning Network.
juraj: So I think this is like, it's getting the payment information close to the node.
juraj: And you already need this working in order to be able to.
juraj: So that's what I'm saying that adding like LN address with DNS and then pointing
juraj: to LN URL with the web server.
juraj: It just adds so much complexity that is like really extra.
juraj: Like you don't need it to receive payment.
juraj: So that's my problem with it.
josh: Okay. So let me try to. so with both
josh: with bald 11 which is the typical lightning invoice the
josh: the way to pay that is we need this gateway dns we
josh: need to have this ln at we need to get an ln address one way to get an ln address
josh: is through ln url or i'm sorry one way to get an url is to get an ln address
josh: which needs the domain name and needs this gateway thing to reach back to the
josh: node so it needs slightly more infrastructure.
josh: Bolt 12 simplifies this by eliminating the kind of like Web 2 technologies and
josh: does everything over the Lightning network.
juraj: Yes.
josh: To allow the... Okay. That makes sense.
juraj: Which you need to use anyway.
josh: Which you need to use anyway. Okay.
juraj: Yes.
josh: I got it. So then let's... Okay. So that's now clear to me.
josh: But let's step back even further because all of... There's...
josh: Essentially to participate in Lightning, you
josh: have to have a node right this these are the you need to have
josh: channels open you have to have a node with channels and
josh: i think so there's i this
josh: is the i think this is like uh what
josh: this albi apocalypse is doing is upgrading everybody's lightning knowledge right
josh: because all of this was just nicely solved by this third party which was one
josh: of the options you could we could just go back to some other third party right
josh: and now we're all trying to figure it out so if i we step it But then there's
josh: solutions like, for example,
josh: Breeze, which like runs a node on a phone somehow.
juraj: Yes.
josh: So, so how can we talk about that? Cause you wrote about that a lot in one of your books.
josh: And so why isn't this because, uh, so, you know, for example,
josh: a lot of the podcasters onboarding people to nodes, you know,
josh: they go through channel management, they're helping people open channels and,
josh: you know, they're trying to like get people to do the hard way.
josh: So what if I, you know, why can't I just breeze?
josh: Why can't people, what's the breeze alternative is like, Like,
josh: look, my phone's always connected to the internet.
josh: You know, is this not an option or what's the status with?
juraj: It could be an option, but yeah, is it always connected to the internet?
juraj: Like when you take a flight, you're probably, you will miss some payments.
juraj: Then it needs to wake you up with like a push notification or something when
juraj: the payment is received.
juraj: Um but i i think there are there are ways to do it uh so um.
josh: Okay so then my so my mind i'm just so it's
josh: like all right so we can you basically need something or just run you
josh: need some daemon running 24 you need a server you basically need a server and
josh: so the server hat hat the architecturally the server either has to be on a like
josh: machine that's running in a basement if you're like or a digital ocean kind
josh: of thing you have to be running this you're running it on your phone,
josh: you can do it but it has all the problems of constant battery drain how like
josh: this is just like not meant for mobile use,
josh: At the end of the day, we have a kind of like a peer-to-peer model at the lightning level layer.
josh: That's all peer-to-peer. But in order to send things, we have a client-server
josh: model where the apps are clients and they need to somehow communicate to this
josh: peer-to-peer layer to get it to, you know,
josh: to actually push the payment through.
juraj: Yes. Okay.
josh: So that's where I think friction is coming in. because at least for me,
josh: because it's like you think about it peer to peer and that's what the Bitcoin
josh: podcasters and things want to throw around decentralized peer to peer.
josh: And that is true at that layer.
josh: But for humans and AI bots, which haven't started, I guess, paying each other lightning.
josh: Why can't, has the AI not, have we asked not AI to like start making these payments?
josh: Like why are we talking about this and not having AI do these payments for us?
josh: This is this is quite i have.
juraj: I i have consulted heavily with ai on this.
josh: Yeah so what does ai what does ai say has it not is
josh: it are we is it not at the level of solving lightning
josh: problems yet no no game up okay okay so okay so i think that's that to me that
josh: is where i think the friction is because it's like you you still have this client
josh: server model and you have a phone which is the client and it has to connect
josh: to some server to send this payment.
josh: Then the question basically at the big layer is that are you running the server
josh: or is a third party running that server?
josh: And then that kind of drives a lot of these like payment options and stuff like this.
josh: Because if everybody in the world where everyone is running a node,
josh: then keysend basically works just fine.
josh: Like that's maybe another option. If everyone just runs a node,
josh: then keysend wouldn't have to actually change because then everyone,
josh: for any, it's a linear scaling, everyone has a node,
josh: everybody has a client, then it works perfectly.
juraj: So it is, I think, reasonable to ask the podcasters to run their notes.
juraj: But if we want to kick this off, I think the listeners, like,
juraj: they just install something like whatever.
josh: Fountain.
juraj: But Fountain supports KeySend. So the problem is with the other ones.
juraj: Maybe everyone just has to switch to Fountain, but still custodial, okay? I love Fountain.
josh: Yeah, no, no, but Fountain is that... So Fountain, in my mind,
josh: the way I'm thinking about this is,
josh: okay, I want to use Fountain, but what I'm doing in order to send a payment
josh: through Fountain is I'm loading up a client in the client server model and asking
josh: Fountain via Fountain's whatever API, REST service, to make this payment.
juraj: Right?
josh: Right, so this is, so Fountain is then- It's not beer to beer.
juraj: Yes.
josh: Yeah, exactly. So, you know, they could be, yeah.
josh: So, but, you know, I guess what's then frustrating to some people then is like,
josh: okay, we're in this, you know, if this was like normies, non-Bitcoin people,
josh: then, you know, you definitely just third party this and make it super easy.
josh: But then it's like, all right, people are, I think there's, I think people get
josh: frustrated is like, all right, we're already supposed to be Bitcoiners,
josh: But then it's like those Bitcoiners can't, you know, they're not running nodes,
josh: even Bitcoin core nodes.
josh: And then, you know, so then it's like, so now, so if on one sense,
josh: it feels a little bit lame if like, you know, we're here, we are trying to make
josh: Bitcoin podcasts or whatever.
josh: And then everyone's just third partying, sending the Bitcoin payment.
josh: So it's kind of like, well, what do we, like, what did we, I don't,
josh: did we win? You know, like, cause yeah.
juraj: Yeah.
juraj: Well, Nostra is like that, you know, Bitcoiners, but they use Primal wallets,
juraj: which ask for your name and whatever.
juraj: And so, yeah, people are lazy.
juraj: Like, I think we need to support both use cases.
juraj: Like, I don't like, like, even, you know, my mom is a Bitcoiner and she doesn't run her own node.
juraj: I would gladly run it for her, but she wants to interact with this ecosystem. She has Fountain.
juraj: She listens to podcasts with Value for Value, but she's not going to run her own node.
juraj: So one solution that is kind of in the middle is this Uncle Jim model that I
juraj: would run a node for my whole family, basically.
juraj: Which is the Cashu model. Then the Uncle Jims can serve very extended families as well.
josh: Yeah, so let's talk about that. Yeah, because this, you know,
josh: Albi Hub, which is, I think you can run without sending an email.
josh: You don't need an Albi account. I have not.
josh: But it now has this feature to do this friends and family model somehow built in.
josh: And what I kind of want to explore this a little bit,
josh: because i think this is perhaps the
josh: better model and it doesn't have to be with albi hub but the the uncle jim model
josh: because um what i think is also different you know so like everyone i don't
josh: know i don't know you know especially in bitcoin there's not like a random person
josh: out there who's a bitcoiner who like has doesn't.
josh: Probably talk to someone, talk someone's ear off about Bitcoin in the physical space.
josh: You know, like they're in the real world, a networked of node person they're
josh: communicating with that.
josh: And they're making, you know, we're making little anarchist,
josh: little, you know, parallel societies around.
josh: So this, I kind of like this little model of like, to me, it's almost like a
josh: bulletin board service, like an old school BBS.
josh: You know you would call you'd have your old one
josh: you check your messages and then there was like it's almost i guess
josh: it's also like a mastodon style um thing
josh: where you're having this little network of nodes
josh: i guess it's not decentralized it's distributed not decentralized i
josh: can't remember which way but yeah so this model i
josh: think is nicer because then you
josh: have yeah the only problem then you potentially could
josh: be holding you're you're back into like you're
josh: holding other people's money etc etc but like i don't
josh: know at some point um it's in
josh: someone's self-interest for them to become the
josh: node the the uncle jim for another group right we're there yes so i don't know
josh: this one feels the only problem with it is that i guess you can't you know you
josh: people just have to volunteerism it's the it's the same problem with like uh
josh: self-organizing groups it requires small you know,
josh: volunteer leaders-ish to like kind of do this for small groups, but so yeah.
juraj: Yes. And there's also a kind of middle ground such as FEDI, where you can kind
juraj: of decentralize the... So FEDI is like, like Cashu.
juraj: But you have like, let's say, three out of five multisig.
juraj: So there is no single entity that can rug pull.
josh: Oh, okay.
juraj: They need to cooperate. So that's also neat.
juraj: So there are kind of shades to this.
juraj: I think we will have also like a large group that wants to remain custodial.
juraj: There are like hardcore crypto anarchists that want to run their own node.
juraj: And there's a lot of space in between, I believe, that we should support.
juraj: For the Uncle Jim model, you have Cashu, you have Feddy, and you also have
juraj: AllenBits that also supports multiple users.
juraj: So all of these are kind of nice.
juraj: Uh so that's that's
juraj: kind of in between i think uh like you
juraj: know we are talking about small payments here yeah hopefully they will become
juraj: uh we will all become very rich very soon when uh bitcoin does uh one million
juraj: x right right um but uh so so that can happen you know,
juraj: So Uncle Jim holding, you know,
juraj: a hundred bucks for streaming sets and then it's suddenly a lot more. So we can all dream.
josh: Yeah, all the channels go down, Jim's house.
juraj: But yeah, yeah. So I think we should support all of these models.
juraj: So, okay, so one thing that,
juraj: okay, so let's look at it from also from the side of the payer or the podcasting app in this case,
juraj: or Nostra app and the receiver side, because that is also something that we
juraj: have not done systematically.
juraj: So a payer size site, I think more than anything,
juraj: podcasts, players or people who are making these players, they want just some
juraj: easy way, some library they would call and they would say, you know,
juraj: pay this podcast for a minute or for boost.
juraj: Um one important requirement i think is that it needs to work over web it needs
juraj: to work from javascript because many of these apps are either like react native
juraj: or just pure web apps that,
juraj: don't have like a they can't run a local lnd on on the machine because they run in the browser so uh.
juraj: I think this was the primary reason why they were using albi in the first place
juraj: because it was it was easy uh so that's one thing to consider and i think uh
juraj: like the the okay so so the question is.
juraj: For albicalyps uh why won't just everyone switch to fountain you know it's also
juraj: a custodial service Albi was a custodial service,
juraj: and we say okay so your
juraj: software podcast guru sorry it
juraj: doesn't work anymore and we are switching to something that works that's also
juraj: an option so my question is I don't know if you have any idea how many users
juraj: do these apps actually have is it 80% fountain, 20%.
juraj: I mean from the value for value because most people 99% don't use any value for value at all.
josh: Yeah, I'm just thinking through some of the shows where they call out because
josh: with this Helipad app, they are seeing the Keysend payments come in and it says
josh: where the app is coming from. Really?
juraj: Okay.
josh: So they look at when they read it they'll be like, you know,
josh: BitPunk FM boosted 3333 from Fountain.
josh: So they, yeah, so they're, when they, when they read this, when they read them,
josh: they are able to tell. And I would say,
josh: It's a pretty, well, I don't know. I feel like Fountain is probably 20% maybe
josh: and the rest of the 80% are other, either Podverse.
josh: I see a lot of Boost CLI, which I don't know if you know, I haven't looked at
josh: that tool, but I see that a lot.
josh: It's a command line tool to send a payment. So it's probably,
josh: it sounds similar to this pay to thing you have for L&D.
josh: I'm sure it's L&D because I think that they're all running. So Boost CLI,
josh: there's a lot of payments that come in through Boost CLI.
josh: Um i think these are mainly not and
josh: this kind of well yeah so boost cli uh podverse
josh: i think comes in quite a bit podcast there's another thing called curio caster
josh: which i feel like they say is like the og this was like i've heard this is the
josh: og um actual like zap or boost here i think it's all web-based actually curio caster um so.
juraj: How does it work yeah.
josh: This is when for a place.
juraj: Also Albi probably.
josh: Yeah, I think everything was probably Albi. But there was also an issue which I think is less...
josh: Okay, so there's another thing there we can talk about too is the idea of Nostra
josh: Wallet Connect, which I'm also uninformed about, but there is...
juraj: I will talk about it. Yes.
juraj: Okay, there is an app name in the description of the KeySend.
juraj: Okay so yeah so that's how let me see yeah let me see so grab app name i will
juraj: do uh oh you're looking for boring yeah yes and i'm not gonna parse the json i'm gonna say throw.
josh: It through jq just.
juraj: Cat it JQ okay I wouldn't know yeah yes Harry want me to chat or.
josh: AI how to do JQ JQ will parse JSON nicely.
juraj: I'm just gonna do grab it's gonna be faster so,
juraj: so app name okay uh and i have 3600 key cents and uh fountain is uh 3400,
juraj: okay i was also testing breeze myself so that's 100 so anything else than fountain
juraj: and breeze in my note yeah rounding error like no one okay like it's a fountain yeah.
josh: So fountain's really pushing so i guess yeah so found so on the podcast listener
josh: i i would have to say i don't think i really started boosting people until fountain so.
juraj: Yes fountain.
josh: I think really um.
juraj: There are 30 there are
juraj: 30 key scents that are different than fountain and breeze and let me just see
juraj: what they are uh i know you asked someone to boost my podcast because it was
juraj: not working so one of them is,
juraj: shootout to who was it?
josh: Chad F.
juraj: Yeah, shoutout to Chad F. And let's see.
juraj: Name podverse okay so
juraj: which is so so
juraj: so that's uh wait okay i'll do i'll do
juraj: grab minus v chat f because
juraj: yeah right okay so
juraj: i have 17 more and there is one other user of chatverse cipher citizen okay
juraj: and then then there's someone actually boosting bitpunk fm where i got the splits,
juraj: okay so seems that if we convince cypher citizen and chedef to switch to something
juraj: else than pod verse there's no Albycalypse there we solved it one hour 21 minutes
juraj: yeah we've well well i think I think to be fair.
josh: The, the, the, the.
juraj: The, the, I'm not a representative.
josh: No, no, no, no. But I think, I think the issue is the, the, the clips is happening
josh: on the podcaster side because all there's a lot of podcasters who are onboarded,
josh: whose key send is going to an Albie.
josh: I mean, so for users, I don't think it ever, yeah, I don't think it ever mattered really.
josh: Um like they the the
josh: hardcore the the ogs were yeah are using
josh: podiverse and some of these other ones yes um but like
josh: the the latest wave is coming yeah for sure i think fountain picked up a bunch
josh: yes and it doesn't really affect them it affects i think a lot of musicians
josh: and podcasters who have keysend addresses that are going to an albie um an albie and I'll be run node.
juraj: Yes.
josh: They're the ones that have to migrate. And then they're like,
josh: Oh, well, what do I do? What do I do now? Yeah.
juraj: All right so yeah so so that's true okay let's finish the the payer side but
juraj: uh yeah this is a good point yes so basically what would be cool uh is a way
juraj: to migrate from albi in such a way that there's an API that is easy to use.
juraj: And there are three, I think, usable APIs.
juraj: And these are Breeze SDK.
juraj: So that's something else than Breeze entirely.
juraj: It has nothing to do with the Breeze wallet. It uses Blockstream Greenlight.
juraj: So what they do is that Blockstream basically spawns a very minimal Core Lightning node in their cloud,
juraj: but they don't have the private keys.
juraj: So everything that needs to sign the commitment transaction or anything like
juraj: that goes through the API to your phone and it signs whatever needs to be signed.
juraj: So they don't hold any funds. So it's non-custodial,
juraj: but they do all the gossip chatting on the network and whatever channel graphs
juraj: and all these things that you don't want to do on your phone.
juraj: One of the reasons that Breeze, the original Breeze is so slow and often doesn't
juraj: find a route to pay is that it needs to sync the channel graph.
juraj: So if you turn it on, like if you start the app after a month of not using it,
juraj: It is really not usable for the first few minutes because it doesn't have the
juraj: current channel graph, because it does routing and everything on the phone.
juraj: With this Breeze SDK, what they do is you run a node, you do everything on the
juraj: block stream site, but you still sign the transaction, so you don't give anyone custom of your funds.
juraj: So it is quite similar to what Phoenix does. also.
juraj: The Phoenix wallet basically the same idea custody keys are in a very small
juraj: app I've actually read the source code of the Phoenix wallet the whole lightning
juraj: part and it's pretty simple,
juraj: and so Breeze SDK they have SDKs for app developers for native Android and iOS apps. Very usable.
juraj: For the listener side, it's quite okay because if you're listening to a podcast,
juraj: the app is running anyway.
juraj: So no need to stress about battery use or anything.
juraj: It's the app that is running. And if you send one payment every 10 minutes with
juraj: batching and it signs a few messages, it's not a problem. and I've checked the API.
juraj: It is very, very easy to use. So I suggest actually, like I would be very thrilled
juraj: if, for example, Fountain had this as an option.
juraj: That would be pretty cool because
juraj: they would not have custody of your keys and it's a core Lightning.
juraj: So it can do Bolt 12, it can pay Allen address, Allen URL, anything.
juraj: So that's one option on the pairs.
josh: Yeah. Mm-hmm.
juraj: I highly recommend and it's like open source of course greenlight api is not
juraj: open source it's it's running in the cloud i don't actually know if you can
juraj: run there not maybe not but,
juraj: for app developers it is quite okay and they're
juraj: like pretty nice limits
juraj: even for free use okay so
juraj: that's one thing uh then i think uh the the problem with this is of course uh
juraj: web apps cannot use this uh as far as i know it is sdk for for mobile native
juraj: apps not for for just web but maybe maybe that's yeah.
josh: But ai can make the javascript api.
juraj: Yes yes i think they have a javascript api actually but i'm not sure how um
juraj: how well it works like for receiving it would not work probably but for sending
juraj: you're still online so you're because the problem with the web web app is,
juraj: we can talk about it later people try
juraj: to use mutiny as a destination which
juraj: which is a web wallet currently deprecated
juraj: and they're shutting it down unfortunately it was
juraj: pretty nice project but that's running a whole
juraj: lightning node in JavaScript in a web page but that doesn't really work because
juraj: if your computer goes to sleep or the browser decides that this tab has been
juraj: using too much energy it gets shut down but for sending I don't think it's a
juraj: problem so maybe it could work also for,
juraj: for the client side, for the payer side. Yeah.
juraj: Then we have Cashu Means. They have a REST API, so that's quite nice.
juraj: Cashu Means, you can have basically a very simple Cashew wallet.
juraj: Cashu wallet is like all the SATs are basically a bunch of strings.
juraj: And you can even use recovery seats and so on.
juraj: So payments are very simple. And what you can do is you can call a mint and
juraj: tell it to, I think the call is melt, which means here is a bunch of tokens.
juraj: Please pay this Bolt 11 invoice.
juraj: So basically the one API call and you pay. you can also also receive.
juraj: So that's a mint call, which gives you an invoice. And if it's paid, you get a cash token.
juraj: This is pretty nice. You also outsource all the routing, all the links to some
juraj: software that has a node and everything. So you don't have to run anything.
juraj: So this is, I think, the most equivalent to, or one of the most equivalent to Albi Hub.
juraj: No, Albi, actually, the original one. But you can choose your own custodian.
juraj: This can be the Uncle Jim model.
juraj: The problem is it can't do kisent, but other than that, I think this would be the best option maybe,
juraj: or I don't know, but it seems like a very good option for this,
juraj: for Podverse and for all these web apps, because you can call it from JavaScript.
juraj: The client side is pretty simple and the additionally users can choose their
juraj: own custodian I wonder how difficult it would be to actually implement key sent in the mint probably.
josh: Yeah, so this is what I have
josh: like two questions here that I'm now mulling over one is what is it what is
josh: it about the lightning network that requires this constant connection right
josh: so what like it's running over TCP right like what like why is there a keep
josh: a lot like what's you know if I make,
josh: you know the it's it's a it's a layer above a tcp
josh: ip connection and these tcp ip connections are not constantly open yeah they're
josh: like they can come so what what is it why does the you know what's the deal
josh: like why can't it be isn't there some time where it has to just check like once
josh: a day a channel if it can reach the server once a day it's fine like what's the the the no yeah.
juraj: The mobile wallets are not.
josh: Online all the time like like breeze.
juraj: Wallet is like if you want to send if you want to receive you have to become
juraj: online and when you're sending you exchange the messages pay the invoice and
juraj: you can come offline again.
josh: So because receive okay so in order to you can be offline but then no one can
josh: send you anything this is the yes yeah okay yes.
juraj: Yes but for for for the podcast player this is not a problem so because.
josh: Yeah right playing.
juraj: Podcast and sending or or not.
josh: Yeah for.
juraj: The payer side i think this can be a really good solution and you know choose
juraj: your own custodian and it has pretty good privacy like uh like the mint doesn't
juraj: know your balances for example.
josh: Right so let's you know let's because is there not a model where um again kind
josh: of like a, I mean, maybe this is the cashing model.
josh: Like if you, if you, if there is just a intermediary node on the lightning network
josh: that can just, it like, I want to say, I want to send you, you have a podcast.
josh: I want to send it to you, but your podcast, your node is offline.
josh: There's, but there's no concept of store and forward messages where some intermediary
josh: node is going to be like, Oh, I can't reach your eye. So I'm going to hold this message until his node.
juraj: Comes up.
josh: And then forward it this this concept doesn't exist right because that.
juraj: It it does uh uh to an extent but um uh like that there were invoices that would
juraj: do this holding the problem is uh that,
juraj: um so so basically you can have a very long htlc htlc is the lock of the path
juraj: so basically what What you do is you create a path to the end node,
juraj: the funds are locked, and then when the receiver claims it,
juraj: it's claimed all the way back.
juraj: And the problem here is that unless the node claims the money.
juraj: There is no way to atomically get fees.
juraj: And the problem is that the funds are locked in all the channels.
juraj: So that's why no one wants to hold the invoice for you for 24 hours because
juraj: it might not get settled ever.
juraj: And then however many Bitcoins are locked. So it's a spam fighting problem.
juraj: That's one issue. um okay so
juraj: so people yeah we're kind of
juraj: playing with this yeah but but this is the problem but
juraj: but Cashu uh cashew would
juraj: be a little bit kind of trusted intermediary
juraj: uh that that can do this so so
juraj: yeah so basically it would be
juraj: like a like a like an email server you know yeah
juraj: it would receive the email for you okay it
juraj: can go down and rack pull you and
juraj: steal your email but when
juraj: you come online you you just download it and then it's yours so yeah i think
juraj: this is kind of a good middle ground so especially for the cases when you are
juraj: like um online very often but not like right right right super all the time so which.
josh: You know i don't know like the um what has kind
josh: of impressed me about you know lightning is like
josh: how little i haven't heard of too many like major lightning hacks or lightning
josh: you know based like you know is it this is uh i think there was more in the
josh: og bitcoin wallet days of like things all this happening but lightning is all
josh: everyone's hot walleting or the whole whole thing's.
juraj: Hot wallet.
josh: And like you know i don't know if there's been a major ode in one of these nodes
josh: that has just wiped out uh.
juraj: I mean i i don't know i.
josh: I mean we don't know of one but.
juraj: Like there were some there were some bugs there were i don't know of any like super yes uh,
juraj: Yes, I've heard about one hack, actually.
juraj: It was with the...
juraj: Yes, there was a well-publicized hack that actually ended up in the Bitliffy
juraj: wallet that I mentioned, the Czech one.
josh: Okay.
juraj: That's why I remember it. I was actually replying to the victim of this hack because they said,
juraj: oh, I know where my money ended.
juraj: It was on this node and it's Bitlify, so just give it back to me.
juraj: But it's a custodial node for many, many users, doesn't do KYC.
josh: And.
juraj: The funds were.
josh: Sent immediately.
juraj: Somewhere else so they don't.
josh: Have the funds.
juraj: Anymore so they couldn't really help him.
josh: I think there are hacks but.
juraj: You like how the wallet snow.
josh: Well this is my,
josh: everyone wants to say this is just everybody for example the hardware wallet
josh: stuff everyone goes oh you can have a mobile wallet whatever,
josh: but we're all doing this with Lightning.
josh: Yeah, maybe the amounts are smaller, but the opportunity's there,
josh: and everyone seems to be okay. Yes.
juraj: Well, watch until the first hardware wallet does a Lightning wallet,
juraj: which is possible. It's not actually...
josh: But yeah, I mean, okay, you say that perhaps trollingly, but this is my point.
josh: You know, it's like, what's a hardware wallet that does Lightning? It's a mobile phone.
josh: I mean, it's going to be like, what do you, I mean, do you want it to be connected?
josh: Do you want it to be the node? Because you could put, you could also probably
josh: take a Lightning node, which is like some PC, plug it into a Trezor and have
josh: the Trezor do the signing.
josh: I mean, if you want to do that, I mean, like, but then, you know,
josh: what's the, but then the issue is then we're back to, this is my issue with
josh: these hardware walls, you're back to like some automated,
josh: so yes, the key could stay in the Trezor, but you're not going to go run to
josh: the basement every time to press a button,
josh: to like stream sats, you know, like now it's an automated For the node.
juraj: Yes.
josh: Yeah, it's for the node, so it's protected because it's It's protected from
josh: the node having a software vulnerability of exposing the key.
josh: But now we're back to like, well, if the node is compromised,
josh: it could potentially send it because it's going to be automated. So like, you know.
juraj: What do we... Well, it wouldn't make sense if the sending was automated,
juraj: if you couldn't confirm it or if it doesn't need to confirm it.
juraj: But you can definitely set up some rules. You can say, you know, only send this amount.
juraj: And you can actually do it like this amount per day and you get the current
juraj: day by block headers. So that's possible.
juraj: But the main problem with hardware
juraj: wallets, with Lightning was that you need to sign much more often.
juraj: Because if you have, for example, a routing node, you are changing channel states
juraj: all the time. but you actually are,
juraj: All the time, you can sign the message or sign the channel state that gives
juraj: you more sets than you had.
juraj: So if you are receiving, then yeah, I'm glad to sign anything that gives me more money than I had.
josh: Why not?
juraj: You can do that in a hardware wallet. For routing, that's the same case.
juraj: You have two channels and you end up with more sets because you collect the fee.
juraj: But you need to sign two channels at the same time but you can also do that
juraj: so in principle there is like even a routing node kind of hardware wallet and
juraj: you don't need to click anything,
juraj: but yeah for listening to podcasts that
juraj: wouldn't work right alright so Cashu
juraj: should be explored maybe we can look into integrating Keysend into Cashu and
juraj: if we do that then all the web apps can just switch to Cashu from AlbiHub and so in this case you would.
josh: Have a Cashu so it would kind of be like the podcast clients would have Cashew
josh: tokens and then when they want to send.
juraj: Well podcast clients what do you mean by podcast clients your browser it could
juraj: be a browser yeah exactly it's client software it has.
josh: A Cashu token and when it wants to send it will send the token to.
juraj: The mint.
josh: Which is then also a lightning node and then yeah so this mint could.
juraj: Also there is literally API call saying you know pay this invoice here is the token yeah.
josh: So, and then the podcaster could then get key sent because there's,
josh: again, this translation.
juraj: Yes, but the key sent is not there. But maybe even like having an...
juraj: So there's this Melt API call?
josh: Yeah.
juraj: Wait, let's see if it actually can be key sent.
josh: You're saying right now. Oh, okay. Yeah, so.
juraj: Cashu Melt. Okay, Cashew Melt is not something to search for. I got organic cashew.
josh: Yeah.
juraj: Wow. I should buy this.
josh: Cashu butter.
juraj: Okay. Okay. Cashu API melt Bitcoin protocol specification.
juraj: All right. Should I contact my friendly?
juraj: Okay. My friendly AI Googling.
juraj: Yeah. Yeah. It's like the protocols are in the files numbered 12345.
juraj: There's the documentation.
juraj: So Cashu Mint API Melt Syntax. Okay.
juraj: Search online. Anyway. Okay. So search for this. Yeah.
josh: Okay so this is but the problem is um the
josh: issue is so this would let's just assume let's
josh: say they did it so i guess there's a few i guess there's a few problems
josh: one Cashu on the pod really we're
josh: talking about like five major podcasts anyway so like they they'd have to like
josh: learn about Cashu and integrate things that and cashew is kind of i think changing
josh: rapidly so i can see i can see the hesitation from a podcast client to like
josh: integrate Cashu perhaps um the second issue is um,
josh: Well, the benefit would be then the podcasters could keep their lightning notes
josh: with key send and they would just do the translation.
josh: So it's just, but that's the.
juraj: Yes.
josh: And then the other thing. All right. So that's Cashu. But then how does,
josh: because I think in that same section you have, I'm looking at your.
juraj: Yes.
josh: You have Nostra Wallet Connect, which often comes up.
juraj: Okay.
josh: Yeah.
juraj: So people don't so it's probably the most stupid name ever invented for a technology.
juraj: Nostra Wallet Connect doesn't have much to do with Nostra so it is using Nostra
juraj: relays but it's totally unrelated to Nostra so okay so.
juraj: What is it what it is it is a protocol standardized protocol,
juraj: with which an application such as
juraj: Podwares can talk to a wallet that's
juraj: it the Nostra thing there is
juraj: that it doesn't call the API of the
juraj: like the endpoint like Cashu Mint or Albi or something like that but it sends
juraj: a message through a Nostra relay and that's for solving this exact problem that
juraj: you don't have a domain or web server or open port or anything like that.
juraj: So it can actually run on your phone and you would agree on one or a set of
juraj: Nostra relays that are used just for encrypted communication.
juraj: So you could have your wallet on your phone,
juraj: which supports Nostra Wallet Connect. And then you just exchange these connect
juraj: strings, which have some key material that authorize this app.
juraj: For example, a podcast player to control your wallet and pay invoices on your
juraj: behalf. You can have rules there, like maximum amounts that can be paid or something like that.
juraj: So this is ideal because it doesn't... Like, first of all, it is usable from
juraj: web apps because Nostra is just a REST API, Nostra Relays.
juraj: So you don't need to connect to funny TCP ports or whatever.
juraj: You don't need port forwarding. It is encrypted.
juraj: The privacy is not very good of this, but okay, it's two random keys talking
juraj: to each other And you don't see in the messages, but you see all the metadata.
juraj: So that's the thing.
josh: The people see the metadata between the client and the relay.
juraj: Yes.
josh: Okay. All right. So the over normal TCP connection or HTP in this case.
juraj: HTTPS. Yes.
josh: HTTPS. Okay. Okay. So, okay. So it's no different than the internet.
juraj: No, but the relay sees which pub key writes to which pub key, I think. So that's.
josh: Oh, okay. But.
juraj: Yeah.
josh: But why would you not run your own Relay in this case?
juraj: Well, if you're running a web-based app and phone wallet, then you're probably not running a Relay.
juraj: But yeah, Podverse can run their own relay, of course.
josh: Okay, okay, okay.
juraj: Yeah.
josh: Okay, okay.
juraj: I think this is not such a big problem.
juraj: So basically, this is one of the ways how you can replace the Albi API in a standardized way.
juraj: Uh the problem is the support
juraj: of wallets so yeah not not many
juraj: wallets actually allow incoming nostril
juraj: wallets connect connections or
juraj: support the protocol um the the
juraj: weird thing is that like when you see the page with support yeah you don't know
juraj: which side so for example btc pay server which is awesome i use it it says that
juraj: it supports uh nostril wallet connect,
juraj: but from the other side so if you create a store it can use a third party nostril wallet connect.
juraj: To to generate invoices and receive so this is good if you have an e-shop and
juraj: you want to use BTCPay server, but you don't want to run the node on the server
juraj: or it's like a friend or something,
juraj: it can pay directly to someone's wallet, but that wallet needs to support Wallet Connect.
juraj: And unfortunately, the list of actual wallets that can be used for paying,
juraj: we are still on the payer side, is not that good.
juraj: Let's see Nostra Wallet Connect.
juraj: So there's Albi for one more month.
juraj: And let's see Bitcoin Wallet.
juraj: So there's Albi, Mutiny, which is also going to be discontinued.
juraj: KasaOS, Cashu.me. So that's a cash wallet.
juraj: Which is quite nice because you could support cash wallets.
juraj: There's Coinos, which is pretty awesome as well. It's a custodial wallet.
juraj: I think people have been talking about.
josh: Yeah, I've heard of this.
juraj: Coinos, LivPay, which I don't know, Micronote. I also don't know it.
juraj: Mutiny is going.
juraj: And then Umbrell and Start9.
josh: Okay.
juraj: But that's it. So no Phoenix, no Breeze, no Zeus.
juraj: But yeah, there are options. Like Cashu.me, I think is a good option.
juraj: And if you have Umbrella or Start9.
josh: So when you say Cashu.me, I can then have some app.
josh: And if it supports Nostro Wallet Connect back to Cashu.me, it will send the
josh: Cashu token or it will do the melt to send the... So basically,
josh: I'm going to say I want to...
juraj: No, this is a Lightning protocol. So it only deals with Lightning invoices.
juraj: So it will kind of abstract. So you would have like,
juraj: so Cashu.me is a wallet for cashew.
juraj: So it stores the tokens, but the Nostra wallet connecting would be used just
juraj: to pay invoices and receive and convert it to Cashu tokens.
josh: Okay, perfect. So I could have a podcast player and if I want to send a boost
josh: and if I'm using Nostra wallet connect to connect to Cashu.me and I have cashew
josh: tokens in there from the...
juraj: Any mint that you want, yes.
josh: Any mint I want. It'll basically look like I'm sending a Lightning payment,
josh: but because it'll just melt whatever Cashu tokens it has to do on the back end to satisfy that.
juraj: I think so. I hope so.
josh: I have tried. Yeah.
juraj: So two problems that I see. First is still doesn't do key sent.
juraj: Second is Cashu.me is a web wallet.
juraj: So the same thing. Oh, yeah. run always but on the client side but you would
juraj: need to have it open in some type because it's a web app so same with Mutiny yeah.
josh: Okay,
josh: I don't know all this is coming to me like,
josh: All of this is saying to me that we're, you know, basically a lot of these problems
josh: go away if you've run a daemon somewhere.
juraj: Yes.
josh: And I think like, whether that is on some sort of cloud thing or,
josh: you know, whatever, but this is, this is like the fundamental problem we're coming back to.
josh: It's like, we need these things need always on computers somewhere.
josh: And if you have that and you can either.
juraj: For the player side, it can be similar to Ember, for example.
juraj: Ember is a Nostra signer that runs on your phone, and any Nostra app running
juraj: on that phone can just use it.
josh: Sure, sure.
juraj: You can do the kind of same thing.
josh: Yeah, okay. Okay, that's good to clarify. Yeah, the sender, I guess,
josh: can be asynchronous kind of in and out.
josh: But like, I think it, but it seems like in this kind of, if we're trying to
josh: make this circular parallel society where it is like, everybody is both the
josh: sender and receiver, then it really seems like.
juraj: Oh, yeah, yeah, yes, you are right.
juraj: I would love if everyone ran their own note, but I just got an idea.
juraj: So the Cashumi wallet is open source. So basically, the Podverse can just put
juraj: it right in the app, like the JavaScript inside.
juraj: It can run in the same type.
josh: Oh, nice.
juraj: That is not a problem. So the only thing is it doesn't do key sent.
josh: Yeah, so Podverse.
juraj: But that can be like.
josh: I don't know.
juraj: No, I'm very inclined to create an API call to just do a Cashu mint that just
juraj: pays key sent and then I'll be Calyp's is over.
josh: And then, yeah, take the, you know, I don't think anyone have any issue with
josh: like the routing fee or whatever, you know, having.
juraj: No, I don't want to run the node, but.
josh: Oh but wait but yeah I mean here's the code you know you would have this client library let's say.
juraj: Client and server, and also the Cashu Mint needs to support the API call.
juraj: That's the, like the client library really is, you know, here's tokens and send
juraj: them to this node and this description.
josh: I, you know, I think Cashu really for these kind of small payments is really nice.
josh: Like the amount of, that's kind of what I was kind of like hinting at with this
josh: hot wallet thing is like, you know, just,
josh: I mean, it's the no one is sending amount where
josh: this is going to be an issue and it's like everyone's using
josh: their phones anyway so if i don't to
josh: me the Cashu and what i like about the cashew mint model is yeah it really
josh: can be pushed down to uncle jim or get some service doing it like it you know
josh: from from albie's point of view if it was running i mean albie would probably you know it could run
josh: and it would all you know yes it would no longer be i know it's then i don't know i guess it's a
josh: legalese of whether it's not it actually is custodying funds but if it's not
josh: holding the tokens you know there could be an argument it has the stats so but like let's.
juraj: Not let's let's not even even go like what is illegal like if you do it for your family or.
josh: That's the better way yeah That's completely the better way.
juraj: But then you can do this also with AlbiHub.
josh: Yeah. Okay. I'm just, yeah. So I guess, you know, out of all, yeah.
josh: So I mean, okay, let me try to summarize everything we're talking about.
josh: So like, there is, I'm going to look at your chart here. Okay.
juraj: And then we have the receiver side. So maybe we should summarize after or...
josh: Yeah, go ahead, go ahead.
juraj: So receiver side, I think Bolt 12 would be the easiest. No port forwarding, no DNS, no HTTPS.
juraj: It's not much more chatty. It is a little bit more chatty, but we are chatty anyway.
juraj: It's not super widely supported. So I think, honestly, Bolt 12 in two years
juraj: will be the choice and we would have to deprecate everything else.
juraj: But we'll see anyway,
juraj: my question is do we need to support Keysend in the future depends on what users
juraj: will switch to after Albicalyps maybe not even well.
josh: The one thing I think is I think one thing that is that people like about Keysend
josh: is this sending this message with the payment and I don't.
juraj: You can do that with Bolt12, definitely, and also with LNURL.
josh: Okay, because I feel like there was some discussion where it became difficult
josh: to send some sort of message with the payment and some other of the payment methods.
josh: But I'm… Oh, interesting. Yeah, I think this was… I remember that being talked
josh: about, but I don't know, unfortunately, the details there.
josh: Okay, but… Okay, so… Okay.
juraj: And my question is if it would be wise to do like multiple options,
juraj: like say, you know, I did this podcast,
juraj: this is Uri, this is my note, you can send me, this is my Bolt 12,
juraj: you can pay the offer and this is my LN address and whatever your client supports, you're free to do it.
juraj: I don't know there's pros and
juraj: cons for having multiple options because
juraj: in order to be able to
juraj: receive everything or all the that people can send you the best would be to
juraj: have all the options but then every podcaster would have three things which is probably not optimal,
juraj: so another way to handle this is,
juraj: to basically have services that
juraj: would convert maybe even in like semi-castle deal way so some kind of bridges
juraj: exactly so I would I would say okay here's my bolt 12 and LN address but if
juraj: you want to key send me just use a bridge or something like that.
josh: Yeah.
josh: The people in the driver's seat here, I think, are really the podcast apps, right?
josh: They're the ones that are really, because I think the podcasters are going to
josh: set up whatever they can set up, but it's the apps.
josh: Without the apps, the ecosystem doesn't really exist, which is why I think,
josh: you know, like Oscar from Fountainhead and stuff is driving,
josh: they're really driving.
josh: I mean, there's a lot of also smaller apps who are really driving the thing
josh: because they're the ones that are making it easy for the users to send the payment
josh: to the content creators.
josh: So I don't know if they care, to your question about, do you need to support Keysend?
josh: I don't know that anyone, I've never as a listener being like,
josh: oh, this is actually going, it's not really up front in my mind that this is Keysend.
josh: To me, I'm sending a lightning payment.
josh: So I don't know that it has to be that.
juraj: The question is what, like,
juraj: let's take the example you know i have a guest on my
juraj: podcast they're not lightning gurus
juraj: they yeah right they just so so basically actually
juraj: uh when i when i sell it to them you know you should
juraj: have these i i always tell them to use fountain and
juraj: i'm not saying to them you will receive
juraj: money because they will receive 3 000 sets unfortunately
juraj: we're sending micro payments waiting for
juraj: the boosts to and yeah and so on for
juraj: this podcast but uh uh but what i'm
juraj: telling them is this is a way to interact with the
juraj: audience so if they have a comment they can send a boost with
juraj: a comment and you can see it in your fountain
juraj: app and you can like you can kind of
juraj: right live with the podcast this is a commenting section
juraj: of the podcast you know yes so uh
juraj: but then you know I don't want
juraj: them to because the guest can
juraj: be whatever an Austrian economist that has a phone and they don't run their
juraj: node and this is actually a way how I want to onboard them so it needs to be
juraj: easy also on the receiver side I don't think,
juraj: but it is easy with Fountain it is easy it is custodial for the 3,000 sets that they will get.
josh: Right, right, right.
juraj: Yeah.
juraj: Another thing is, of course, like, for example, many of them have a Phoenix
juraj: wallet, so they also have a Bolt 12 already.
juraj: So they usually have Bolt 12 before they have a key sent and lightning address.
josh: Yeah, right, right. Yeah, I guess even in that case, honestly,
josh: even all the stuff we talked about, they honestly really don't even care what
josh: the thing is. It's just a matter of how does somebody onboard.
josh: I think we were talking about this earlier. it's like the
josh: medium is the message right so you you have you have the
josh: fact that you're getting some sort of bitcoin payment is the
josh: message right that is you know that is it's
josh: like oh and then here is the you know there so that
josh: is driving this thing and uh
josh: there's all this comment that is with it is riding with it
josh: that is like the combined like
josh: oh you know it's the similar to
josh: someone sending me a postcard you know it's like that if
josh: i'm forcing them to post right it's like how do you want
josh: to communicate with this and then it's you know
josh: so i yeah i i have all this
josh: i think a lot of the to bring it to a higher level the
josh: and you know the it's this is like the onboarding discussion but and and onboarding
josh: i think is always going to be difficult in a decentralized world like it's not
josh: people want to keep making onboarding easier but you only make onboarding easier
josh: when centralized players you know come into it like they're you know this is,
josh: the pros and cons.
josh: People want decentralization, but also easy onboarding. And I think,
josh: there's a... I don't think they understand.
juraj: I don't think it needs to be too easy. I don't want the normies.
juraj: Right, yeah, that's what I'm saying.
josh: It doesn't... But there is...
juraj: It shouldn't involve sinking Bitcoin blockchain in the basement node for two
juraj: days and setting up SSH keys and so there's...
josh: Well, yeah, no, but like, you know, if we can throw, so all of this is assuming
josh: that it's hard to run a Bitcoin node, right?
josh: But that's basically, we've taken the assumption it's hard to run this Bitcoin node.
josh: And because that's hard, we've been dancing around all this.
josh: The other thing is it could just become easier to do that, right?
josh: You can imagine, I mean, hardware, you know, is getting, is always getting hard.
josh: The only thing that is, you know, deflationary is computer hardware, right?
josh: It just keeps getting cheaper. It's the only other consumer product that just keeps getting cheaper.
josh: So, I mean, there is going to be, you know, a time where, like,
josh: I mean, I just recently got a, like, small mini notebook thing,
josh: a notebook or, like, a B-Link kind of computer.
josh: I think it was like 249 for like
josh: a 32 gigabyte ram 500 gigabyte
josh: uh nvme and it was like
josh: an intel i5 or something so i mean these you know i think it would probably
josh: obviously you'd want more storage but like that's pretty reasonable for like
josh: uh and it's a pretty lowish power i think it was like 50 watts or something
josh: like this but you know eventually those are going to also come down i guess
josh: that's my other point here is
josh: that the hardware we can we can just take advantage of the fact of that.
josh: I mean, we can keep trying to solve this with software.
josh: In a year, the hardware will be cheaper and faster. In another year, you know what?
juraj: And a hardware wallet is what, 79 euros for Trezor Safe 3?
josh: Yeah, exactly. Right, so that's another, you're getting a whole Intel thing
josh: with a GPU and everything.
josh: And yeah, or you can get two, you can get, you know, one and a half hardware.
juraj: I think everyone should have a note for like, like for Bitcoin,
juraj: for photos, for backups,
juraj: for home camera systems, like you shouldn't upload it to Chinese cloud.
josh: Yeah, right, right.
juraj: And soon, hopefully, some kind of AI, like local inference.
juraj: I'm very much for it.
juraj: Actually, I wrote a small book on Cypherpunk visions.
juraj: And there I was kind of hoping for it's not a book with predictions.
juraj: It's my like hopium and it didn't talk about Bitcoin price,
juraj: but there's a chapter about like home nodes and they're useful for many things
juraj: besides running whatever Bitcoin light node.
juraj: You know you can you can really do useful things
juraj: at home control whatever iot
juraj: and exactly and like everyone already has a router at home some sort of router
juraj: some sort of with access point you want your laptop backups like where do actually
juraj: uh apple stopped making these time
juraj: machines or time capsules, they had these ones.
juraj: And so where do people keep their backups now?
juraj: They run a NAS or plug in a hard drive or something?
juraj: So it's like many people actually already have some kind of node.
juraj: But it should be easier to run a Lightning node. Phoenix D is amazing, actually, for this.
josh: Yeah, I guess the, I mean, even in the, I don't know,
josh: even in the intermediary or intermediate um you
josh: know if you you could just do i mean so not quite as something
josh: as like voltage where you're like getting like lightning nodes as
josh: a service but like if you just spun off if you
josh: if there was a cloud someone someone basically gets a hetzner
josh: box and then they say okay i'm gonna proxmox or
josh: whatever vm out this thing i'm gonna spin up a bunch of virtual
josh: nodes for people uh you know
josh: from their point of you know they look like they're hosting it services and
josh: then it's like you as you use that to get
josh: thing until people like decide to bring it back i mean
josh: i don't know it's just it's like i get
josh: the part of the i think the frustration here is like we're dancing around the
josh: problem that people just can't you know you know we're trying to trying to make
josh: it easy for people like you said the guy the austrian economics guy with just
josh: a phone but it's like at what point do you bend over backwards to i mean that
josh: could also be another solution,
josh: right? It's just like, say, screw it. We're not going to do Keysend.
josh: We're going to stay on Keysend, and if you want to participate, you've got to run a node.
josh: I mean, that's also another option, and just see who sticks around.
juraj: But it can be custodial as well.
juraj: I think, yeah, like this is what I like about Bitcoin and like free software
juraj: open source is that there are many options.
juraj: There's like, you can, like, you know, with the Bitcoin thing.
juraj: You know, I don't know what wallet you run.
juraj: It just works with any other wallet.
juraj: So, and people are experimenting and some people take risks.
juraj: Some people uh you know grandmas
juraj: use etfs and like
juraj: yeah anyone can do whatever they want so that that's
juraj: what's nice and and i think this is what we should keep so
juraj: that's another thing i didn't super
juraj: like about the the podcast we
juraj: were mentioning we should put the link to it which by
juraj: the way i i really like the podcast but this this
juraj: particular part was like when they were playing with
juraj: strike i'm like okay strike yes you
juraj: have like your site is tied to
juraj: u.s and few other countries and people who can do kyc who can actually have
juraj: the papers uh passport with the correct logo but there are many people who just
juraj: can't do that yeah um so i think the message here is that,
juraj: or my wish, I don't know, message, but my wish is that we keep it as open as possible.
juraj: And like, they were not against it, of course.
josh: Yeah, right, right.
juraj: They didn't say that it's the only solution.
juraj: But like the first options I would consider would be those that are most available.
juraj: And again, like fountain here, you can even buy sats on a fountain with like
juraj: Google Pay and Apple Pay.
juraj: You don't even need to know what Bitcoin is.
josh: Oh, really? I didn't know that.
juraj: Yeah, yes. You can just top it up probably for a high fee. I don't know.
josh: I didn't even know that.
juraj: But it's like you can onboard people to this value for value thing even if they
juraj: don't know what Bitcoin is. So it's quite nice.
josh: Yeah, I mean, Fountain's definitely the main one I'm using. My only...
josh: I love Fountain. I think Oscar's doing a great job.
josh: Sadly, I think as it got, I mean, it's got to be difficult as the app developer,
josh: but I feel like it got better with Noster integration and it has some very cool
josh: features with paying and stuff, but then it got worse as a podcast player.
josh: Like I, it just does weird things for me, like when I play and then I come back
josh: to the app and then it has like the other episode or it's just like, so, yeah, so sadly.
juraj: I reported this back and Oscar said that it should be fixed,
juraj: but I think it's not as fixed as….
josh: I would hope.
juraj: For me, I have this project now that's called Loaded For Me. Loaded For.me.
josh: Yeah.
juraj: And I don't have a business model for it.
juraj: So basically what it does is you register. I don't even ask for an email.
juraj: It just make up username and password.
juraj: And you give it a link to an article. and
juraj: it turns it into a podcast episode in your
juraj: own private podcast feed so if you can't
juraj: read podcasts or don't have time yeah right you
juraj: have your own private podcast um so i
juraj: thought that i would just add value tag for
juraj: it uh because you know i run the software
juraj: it's running uh right behind me
juraj: uh so uh uh so
juraj: not uh like a server infrastructure it's running on
juraj: mac mini so i thought okay it would be neat to
juraj: have value tag there yeah uh but fountain
juraj: for some reason is not sending sets
juraj: if it's a private rss feed so if
juraj: i just edit manually as an rss feed
juraj: which is custom for you it's not a podcast index or
juraj: anywhere else yeah yeah it just doesn't stream sets at
juraj: all so oh interesting so that's another bug uh but i don't like i switched to
juraj: fountain like i use Pocket Cast before which was a really good podcast player
juraj: by the way I think still is but doesn't do doesn't do payments.
juraj: So I'm happy with Fountain it has its box custodial wallet but it's I.
josh: Think I agree Pocket Cast also,
josh: for example the one thing is that when you're in the car, Pocket Cast will actually
josh: pause the audio of the podcast, play the car navigation, and then resume.
josh: Where most other podcasts will just soften the background.
juraj: Oh, yeah, that's right. I didn't notice it, but you're right.
josh: This is amazing about Pocket, because when you're listening to something,
josh: you actually want to hear it.
josh: Just lowering the volume doesn't cut it. You actually have to pause it.
josh: And a podcast is one of the few that has this feature.
juraj: Okay.
josh: Yeah. So, unfortunately, this is what I mean by, like, you know,
josh: As a podcast player, I think Pocket Cast is probably one of the top ones.
juraj: I like the feature that it's trimming the silence.
juraj: Like when you listen to Lex Friedman and he thinks for 15 seconds.
josh: Right.
juraj: I don't really need to wait. Let him do the thinking.
josh: Yes. Yeah. So it has some of these nice. Yeah.
juraj: Yeah. Yeah.
josh: Okay. Okay. So let's try to summarize.
juraj: Yes.
josh: Let's try to do a nice. Steve. I'll try to do this here.
josh: And then uh okay so we talked about types
josh: of lightning payments of which uh
josh: you know you had basically had three things we
josh: got key send which is like the og what currently podcasting is running on now
josh: the main one and then there's invoice based ones uh which are bolt 11 and bolt
josh: 12 and then this kind of third method is a kind of Cashu kind of hybrid thing
josh: so these are like in the Lightning ecosystem, you can do these things.
josh: And then, okay, so then going, how does this work with value?
josh: The current method is keysend. So that's what everyone's doing.
josh: Invoicing with alt 11 has this kind of awkward issue of with an ln URL.
josh: You gotta get the ln URL, which needs something to communicate back to the node.
josh: And with an LN address, it is a nice way to look up the LN URL.
josh: But then there's like the Stoldest Bridge thing. And then the only thing I think
josh: we didn't talk about, but what I think those podcasts, what the podcasting 2.0
josh: thing was talking about was using an LN URL with this options JSON section,
josh: which would then possibly have a KeySend address in it as a backwards compatibility layer.
juraj: Oh, cool.
josh: So the idea would be, and I think Oscar was even trying to push this to get it in the LNURL spec,
josh: but one kind of transition thing would be everyone set, all the podcasters set
josh: up LNURLs, which still breaks all the existing podcasts.
josh: We switch over to LNURL, but then you have this options field,
josh: which then can have multiple different payment methods.
josh: Currently would have keysend vault 11 and then you know vault 12 when that comes
josh: along you would just add that to your options JSON so you why.
juraj: Not add it to the RSS specification of the value recipient that would be better I think.
josh: Okay, so then in the value tag, you want to put, well, so that's one.
juraj: Here's my keysend, here's my bold URL, here's my bold 12.
josh: Yeah, that's an interesting point. Yeah, because then it already has the keysend
josh: address, so you could just have the XML pick whatever.
josh: Yeah, why bother doing the lookup? I feel, yeah, okay, all right. That would be good.
juraj: Because then there is something you need to look up, and then there's some server that needs to do this.
josh: Yeah, you already have the RSS.
juraj: And it would also break the compatibility because the old apps that understand
juraj: the old RSS feeds would not understand this.
juraj: So I would say, you know, it's just ads.
josh: Yeah, just change the XML to have a different option.
juraj: Especially in a backward compatible way.
josh: Yeah, I don't know. Yeah, I would send that to him because i'm not sure okay
josh: so that that one i feel yeah okay i'm not sure okay okay so then uh,
josh: uh then let's see so then but yeah ball 12 the
josh: benefit so i had mentioned the two benefits the ball 12
josh: were the privacy for the sender you have
josh: the static qr code and the thing that you informed me
josh: about today was that it basically the
josh: third marketing bullet is that it communicates only through
josh: the lightning network so we eliminate all the web
josh: 2 stuff so those are the three marketing bullets of
josh: why people should care about bulk 12 um okay
josh: nostr has similar problems is
josh: you know basically if you think of nostr content creators as
josh: podcasters they're content creators they have similar issues they
josh: want to get paid uh or they can
josh: get paid in payment so
josh: it's really a similar group so i think your thesis is
josh: trying to think about them similarly so we solve it
josh: kind of like more generically for this
josh: kind of situation um uh and then yeah so then lightning wallets we have you
josh: know basically that stole the same case non-custodial custodial you know run
josh: a server don't run a server this is going to be the trade-off like forever this problem is just uh.
josh: You just have to decide whether or not it's worth it to do all this or you'd
josh: be okay with the custodial solutions, right? Way forwards.
juraj: Well, you can run a non-custodial wallet on your phone, but just not to receive.
josh: Okay, yeah. And then there was other, the other kind of interesting one there,
josh: which I'm kind of thinking about, is that green light model.
josh: Fortunately, unfortunately, kind of locked to green light.
josh: But i'm i'm kind of like the thing that when you were mentioning
josh: this i'm wondering is like if it would be nice if there was a more generic
josh: way where people could run imagine like
josh: you can run open some other lightning service provider could
josh: run a green light model where they run the nodes and
josh: then allow people to do it like that would be interesting i
josh: think um but right now currently only blockstream has
josh: this capability okay and then yeah way forward
josh: you get really this is uh there's two sides
josh: to keep thinking about the payer side and the payee side um and
josh: uh yeah kind of like i think the kind of thing
josh: that you're bringing up is like trying to make this thinking about
josh: how it works in a web kind of progressive we didn't mention we
josh: didn't talk about progressive web apps but really web kind of like client things
josh: making sure it's compatible there and then the receiver side you know all those
josh: same issues like again vault 12 is the seems to be the kind of standard where
josh: we're no longer need dns everything's lightning network.
josh: Unfortunately not going to be ready for albi clips
josh: so there's this thing in the middle
josh: maybe um but all this
josh: is to say that uh yeah so
josh: so so yeah it's all very it's it's
josh: i i hate i don't want to say it's all very new because i feel like everyone says
josh: it but like this is uh i mean this is just the the
josh: i actually don't think this is gonna really you know
josh: this this is to me is what the
josh: whole ecosystem is about like we're building all this from the
josh: ground up like so i don't even like the i don't
josh: know that they say like the word new or early or whatever but like we're all
josh: contributing to this collective idea of what we understand this is what it is
josh: we want and it's being built out in kind of like this small little anarchist
josh: groups of things so i mean this is this This is just what you,
josh: this is just how this works.
juraj: This is Bitbunk.
josh: Yeah, this is Bitbunk. Yeah, there you go. Yeah. So this is it.
josh: This is the nature of the beast.
josh: Like, you know, I don't think this is ever going to, I don't know,
josh: I don't think this is ever really going to change from this, really.
josh: Because like I said, you can get it to be easier, but then you're on Coinbase and that's super easy.
josh: And we could have that, you know. but like that's that's the alternative or
josh: you have to be work in this thing where now it's relationship based you know
josh: you have to talk you're talking to people working this out you know and I think that's,
josh: Like there is no, I guess what I'm saying is there, I think people say we're
josh: so early imagining a future where this gets easier.
josh: I'm saying this is not going to get easier.
josh: This, we're here, we're in the future. Like this is, this is it.
josh: Like this isn't going to get, this is going to be this forever.
josh: Or we adopt a Coinbase model and that's how it gets easier.
juraj: It is, it is going to be easier for the users, I think.
juraj: But imagine from the other side uh
juraj: like i was learning like
juraj: coding and things in like
juraj: early 1990s and like
juraj: i can't imagine how anyone
juraj: could learn what i
juraj: know now about the current technologies like from
juraj: the start like i wouldn't even know where to start you know
juraj: that was like zx spectrum basic
juraj: right one book that was like 30
juraj: pages long and and then
juraj: you know there's like i remember like early days of bitcoin um we had a hackerspace
juraj: in bratislava and we had amir taki amazing guy and he spent a lot of time in
juraj: bratislava and one day he.
juraj: Drew like a like a like a tree like
juraj: a mind map on a on a on like
juraj: this you know office uh board uh
juraj: papers like like these big uh papers
juraj: and he said this is
juraj: everything that you can know about bitcoin
juraj: like there is nothing more because he he has written uh
juraj: parallel implementation which was lit bitcoin which
juraj: did everything it was no it had like bitcoin script
juraj: everything so i'm going to teach
juraj: you everything about the technology not the
juraj: philosophy but everything about the current technology
juraj: of bitcoin and he spoke for i
juraj: don't know uh maybe two
juraj: days uh yeah uh but
juraj: like we knew every byte we knew you know
juraj: this is like this is these are the opcodes this is
juraj: what they do this is you know what the current
juraj: discussion is about but it was like one one big tree yeah but you could do it
juraj: over a week right right right and then you knew everything there was to know
juraj: about bitcoin yeah and uh we have been talking for two and a half hours just
juraj: about ways how to send lightning payments.
juraj: And we didn't even speak about the bytes. It's a very high level.
juraj: It's going to get more complicated for the technological side.
juraj: You're absolutely right about it.
josh: Yeah, I think that's okay. I think, you know, I think that's, yeah.
josh: I mean, no one, but that's the thing with technology. It works on abstraction layers.
josh: Like I am in the middle of like, you know, soldering things to chip pins and
josh: looking at a microscope for, you know, like JTAG pinouts.
josh: Right, but most people don't even think about this. and they can go on and do
josh: quite many things with software without realizing that there's these lower-level
josh: protocols that can change the CPU. So, yeah, I think...
juraj: There is an RFC... Where is it?
juraj: There's an RFC 1925,
juraj: the 12th Networking Truths from 1996.
juraj: And there's the number 6A, which is a corollary of six, is it is always possible
juraj: to add another level of indirection.
josh: Yes, yes, yes.
juraj: It's a very good RFC. Yeah. So this is what this podcast and our discussion has been about.
josh: Yeah, exactly.
juraj: Layers of indirection, you know, lightning and Bitcoin and LN address and LN
juraj: URL and you go look up something here and there and there's DNS.
josh: Right. Yeah, exactly.
juraj: Exactly. Yeah.
josh: Yeah.
josh: Okay, I think, yeah, this, well, I mean, I think this helped.
josh: I definitely now feel a lot more clear on all the different options.
josh: You definitely did the lion's share here with this. I don't know if you're going
josh: to make this mind map. I think people would really appreciate this.
juraj: I can share it. I didn't update it with your inputs, though, so it's just this.
juraj: We didn't talk about everything, though.
juraj: Yeah, well, I think that's fine. There's one last thing.
juraj: There's BIP353, which is a way how to publish both 12 offers in DNS that look
juraj: exactly like LN address, but use a completely different protocol.
josh: We can save that one.
josh: I think people would appreciate this because it's big enough where you,
josh: I mean, I really like MindMap.
josh: How did you make this what software did you use to make this mind map
josh: by the way x mind this one oh yeah i have the same i
josh: have x mind yeah so i thought i recognized it so yeah
josh: the um yeah so it's i personally like my maps and i think it's this something
josh: like this because you start going down a path and then you realize there's other
josh: things that connect and relate to it so it's i think yeah i think people would
josh: really like this um just make sure it has a date on it because it'll probably get stale in a month.
josh: So make it very obvious that it's, that would be my only suggestion.
juraj: For Albycalypse.
josh: Yeah, exactly. Make sure it's...
juraj: Or December 2024.
josh: Because it'll show up. Yeah, no, I, yeah, hopefully, if it, you know,
josh: if people tuned into all this, this, I think, was pretty exhaustive.
josh: I think what was nice to have your perspective is that although I like I said
josh: really like Oscar it's nice to have kind of like a perspective that someone
josh: who's not necessarily like,
josh: And I'm not saying he's biased, but he's an independent self-rationing,
josh: doing things in his self-interest kind of thing.
josh: So you just have to... And then with your background, with all the different
josh: payment stuff you've been messing with.
josh: So yeah, so you mentioned the pay, but let's just close out with some of the
josh: projects that you've been doing with regaining the podcasting because you just did.
josh: You've got the the one you just mentioned you've got a sea lightning uh dashboard,
josh: yeah and you just did a youtube two chapter thing yeah.
juraj: But that's very simple but it's also for podcasting 2.0
juraj: so basically with podcasting 2.0 you
juraj: can do uh chapters like on
juraj: youtube that's you have one podcast and it
juraj: has like several parts we we will
juraj: probably have a i will do it i use a
juraj: service called alphonic for podcasting i highly
juraj: recommend it uh um it fixes
juraj: the audio so the levels and the noise and
juraj: it will probably not erase your uh very cool background i have to check my voicemail
juraj: but it basically fixes the audio with one click and it uploads it to YouTube, converts it to MP3,
juraj: creates a summary, a transcript and chapters.
juraj: But the chapters are in YouTube format. And for podcasting 2.0, we need it in JSON.
juraj: And I don't like writing JSON by hand.
juraj: So I have a small script in Python that converts it. And you can also add images.
juraj: So that's nice that each chapter can have a different image. That's what you told me.
juraj: And I decided to do an episode. I did an episode about meditation.
juraj: Unfortunately, it's encrypted for most of you because it's in my native Slovak
juraj: language, but Josh can understand it already. He's learning Slovak.
josh: A bit, yeah.
juraj: And I decided to use all the podcasting 2.0 features that I can because there's
juraj: a track that I did under my musician name, which is D. Ohm.
juraj: I had a guest speaker who read a part of Paul Rosenberg's book,
juraj: so I wanted to send splits to her.
juraj: Then I'm mentioning I took a zero-gravity flight with my friend and I used the
juraj: video from the parabolic flight when we are in zero G.
juraj: So I sent splits to him. So it's like time-based value splits.
juraj: Then for the reading, I wanted pictures for each part of the reading,
juraj: different pictures, so it's kind of changing.
juraj: So if you're looking at your fountain or whatever podcasting app,
juraj: you get different pictures for the passage from the book.
juraj: I added the transcript there, which is also a podcasting 2.0 feature,
juraj: I believe. So I tried to kind of use all of this.
juraj: But for the JSON, I needed this.
josh: Okay, yeah, that's amazing.
juraj: That's on my GitHub.
josh: Okay, nice. I have not done... So Alphonic does the transcripts.
josh: I have not done the transcripts feature yet.
josh: And then you're hosting... What hosts are you using to have the pictures and
josh: stuff? You're using WordPress-based...
juraj: Yes, I use, yeah, yeah, PowerPress.
josh: PowerPress.
juraj: Blueberry is the company. PowerPress, but I'm hosting it myself because I don't
juraj: want any third-party service.
juraj: But that's basically generating the RSS feed. That's what it does.
juraj: But it also supports value time splits and like value for value and everything.
josh: But it's pretty easy. You can upload, because for the chapters,
josh: I had to, for the chapter artwork,
josh: I had to basically upload them to like Nginx and then I had to I did it very
josh: manually, where I put a bunch of JPEGs in a folder in Nginx and then called them out by chapters.
juraj: So it has a very nice chapter builder where you can just click and upload everything,
juraj: but the problem is that it didn't save so I spent 20 minutes clicking it and
juraj: I think the problem is that you need to kind of publish the episode first and
juraj: then edit the chapters so I lost everything so I said screw it I'm not going
juraj: to spend another 20 minutes clicking.
josh: Writing timestamps and choosing images.
juraj: So I just took the chapters from YouTube and converted it to JSON.
josh: With the script and.
juraj: It was faster to write the script than to do.
josh: It manually okay okay i see yeah yeah i
josh: think i heard they did that yeah they wanted the ability to publish the you
josh: know they wanted the ability for someone else to do the chapters basically so
josh: you can that way it's decoupled so you publish and then you can have a chapter
josh: and then you up then you update the rss to point to the chapters the chapter.json and then it allows.
juraj: Yes it allows So you can have the builder or you can just give it the URL to the JSON.
josh: Okay. Yeah. Yeah.
josh: Okay, so yeah. So you're out there.
juraj: And what are you up to? What are you up to?
josh: Yeah, so I've got the voicemail.
juraj: And it's the new BitPunk.
josh: Yeah, the fifth, 0.5 is going to be a holiday issue.
josh: I have, there's going to be a Christmas. There's a guy named Hey Citizen who
josh: makes a bunch of decentralized music. He's got a Christmas song called It's
josh: Christmas Time Again. So we're going to pull that song in.
josh: Someone did a reading of a Christmas carol. uh also on podcasting too like a
josh: full-on five actor narration like super high quality what yes super so so uh so.
juraj: So does it do a value time splits.
josh: Yeah based on when,
josh: yeah it just does the like high level value one yeah that would be pretty that
josh: would be pretty intense yeah so i'm gonna pull this in uh i did what i like
josh: about the christmas carol is that you It gets kind of pushed down as socialist propaganda,
josh: this miserly person.
josh: But I personally like the anarchist kind of interpretation of it,
josh: where you had this guy who just out of his own free will had a self-transformation event,
josh: and then realized he should be a better person without any interaction from the government.
josh: He just had this transformative experience.
josh: So this is my interpretation that I like of The Christmas Carol.
josh: So yeah so there's some I'll use some clips from that it's like a 50 minute
josh: thing so it's quite long but I'll pull it and then and then the big thing there's
josh: two things other things is I want to do a FM soldering kit,
josh: So I have 60 of these FM radios.
josh: They're quite small. They're smaller than the board is smaller than the cassette.
josh: And when you solder them up, it'll be an FM transmitter.
josh: So what I want to do on the tape is then kind of do like a solder by numbers.
josh: Like, all right, take this. So we'll go through that. And then you can take
josh: your cassette player, plug it into the thing you just soldered,
josh: and then listen on another FM receiver.
juraj: And you have a pirate station.
josh: And now you have a pirate radio station yeah so it'll be quite small in like
josh: 10 feet and it's a very like but it'll it'll get the idea across and then the
josh: last thing there's this book i don't have it oh i do have it um this guy on
josh: uh he actually one of the first people to leave me a voicemail um this guy wrote
josh: the book the phonics the radiophonics laboratory,
josh: and his name is justin patrick moore i knew i'm a sub stack but the conversation went like this,
josh: he's like oh I have this book I talk about like electronic music and like radio
josh: stuff and I was like do you know have you heard about Sig Sally you know from
josh: the I did that thing with talking about the 1948,
josh: analog encryption and he goes yeah I have a chapter on it in my book and I was
josh: like just give me the link I will I will buy the book this is all this is it
josh: so so it's quite overlaps quite nicely,
josh: so I have a book review yeah wow book review yeah so book review so then so
josh: hopefully I get the audio out you know before the end of the year and then probably
josh: the tapes in january cool.
juraj: Cool looking forward.
josh: Yeah this one should be fun should be fun yeah and then
josh: i'll try the pepper in uh try to set like a christmas mood so maybe some like
josh: fire crackling fire crackling in the background introduce it with like some
josh: uh you know lounge christmas lounge kind of music and try to try to set the
josh: the audios yeah i don't i don't know if i'll sing yet but we'll see.
juraj: Cool cool all right this has been fun.
josh: Yeah yeah.
juraj: Head over to bitpunk.fm to hear the episodes of bitpunk.fm and and option plus
juraj: podcast is at optionplus.io.