April 8, 2022

Open Source Stage Day 2 - Bitcoin 2022 in Miami

Open Source Stage Day 2 - Bitcoin 2022 in Miami
Citadel Dispatch
Open Source Stage Day 2 - Bitcoin 2022 in Miami

Video: https://youtu.be/L0Yh6VP6vxU

0:00:00 Matt Odell Introduction
0:06:54 The Bitcoin Core Development Process
0:49:09 Decentralized Bitcoin Exchanges - With Mike Brock, Wiz, Josef Tetek, Chris Stewart & D++
1:15:07 10x-ing Bitcoin Development
1:56:50 Softforks Benefits & Tradeoffs - With Jeremy Rubin, Jimmy Song, Paul Stzorc & Ben Perrin (BTC Sessions)
2:37:33 DLCs - Programmable Real World Events
3:17:45 Bitcoin & Lightning Node Roundtable - With S2L1, /Rootzoll, Jonas Nick, Keagan McClelland & Matt Odell
3:59:00 Rabbit Hole Recap - With Marty Bent & Matt Odell


twitch: https://twitch.tv/citadeldispatch

bitcointv: https://bitcointv.com/video-channels/citadeldispatch/videos

podcast: https://www.podpage.com/citadeldispatch

telegram: https://t.me/citadeldispatch

support the show: https://citadeldispatch.com/contribute

stream sats to the show: https://www.fountain.fm/

join the chat: https://matrix.to/#/#citadel:bitcoin.kyoto

00:00 - Matt Odell Introduction

06:54 - The Bitcoin Core Development Process

49:09 - Decentralized Bitcoin Exchanges With Mike Brock Wiz Josef Tetek Chris Stewart amp D

01:15:07 - 10xing Bitcoin Development

01:56:50 - Softforks Benefits amp Tradeoffs With Jeremy Rubin Jimmy Song Paul Stzorc amp Ben Perrin

02:37:33 - DLCs Programmable Real World Events

03:17:45 - Bitcoin amp Lightning Node Roundtable With S2L1 Rootzoll Jonas Nick Keagan McClelland amp

03:59:00 - Rabbit Hole Recap With Marty Bent amp Matt Odell twitch httpstwitch.tvcitadeldispatch

WEBVTT

NOTE
Transcription provided by Podhome.fm
Created: 3/17/2024 8:12:50 PM
Duration: 16816.98
Channels: 1

1
00:00:00.240 --> 00:00:01.939
Good morning, Miami. Good

2
00:00:02.480 --> 00:00:02.980
morning.

3
00:00:04.240 --> 00:00:07.379
We got a great house here today. Let's fucking go.

4
00:00:11.745 --> 00:00:12.245
So,

5
00:00:12.545 --> 00:00:16.244
I mean, I know a lot of you think I'm a natural at this, but I've never actually

6
00:00:17.480 --> 00:00:22.700
been on stage by myself in person in front of a great crowd until yesterday.

7
00:00:23.640 --> 00:00:25.180
So this is my second attempt.

8
00:00:25.745 --> 00:00:28.805
I took some notes because I missed a bunch of things yesterday.

9
00:00:30.065 --> 00:00:40.210
First off, I wanna thank the production crew. They did a fantastic job yesterday. They're filming with very high quality cameras. They're uploading everything after the fact,

10
00:00:40.990 --> 00:00:46.385
and we have a great crew backstage that nobody sees that makes this all happen, so huge shout out to them. Woo.

11
00:00:50.605 --> 00:00:54.030
You might notice I'm wearing sunglasses just because these lights are very bright.

12
00:00:55.070 --> 00:00:57.809
Can I get a show of hands who was here last year?

13
00:00:59.629 --> 00:01:01.410
Okay. Awesome. A lot of new faces.

14
00:01:01.925 --> 00:01:04.425
As you can see, we did it a lot bigger this year.

15
00:01:05.205 --> 00:01:07.145
We got a nice dedicated space,

16
00:01:07.765 --> 00:01:09.225
larger than most conferences,

17
00:01:09.920 --> 00:01:11.220
dedicated to open source,

18
00:01:12.320 --> 00:01:13.460
contributors and projects.

19
00:01:14.480 --> 00:01:19.515
Extremely excited for it. We've been you know, it's been 6 months in the making, and I'm glad you're all here.

20
00:01:20.315 --> 00:01:23.455
Part of that program was we gave away a 120

21
00:01:23.835 --> 00:01:27.775
free tickets to open source contributors of 32 Bitcoin projects.

22
00:01:28.640 --> 00:01:36.980
A lot of them are here today. It's great to see those faces. We do appreciate you. You guys are are what makes this movement possible and what makes Bitcoin robust.

23
00:01:39.655 --> 00:01:46.075
We have So let's let's go through what what's going on here. We have First of all, we have workshop tables in the back.

24
00:01:46.850 --> 00:01:53.590
If you are over there, try and keep your voices to a minimum while the talks are going on. The talks will end at 3,

25
00:01:54.535 --> 00:01:57.195
with the live rabbit hole recap is gonna end the day.

26
00:01:57.655 --> 00:01:58.795
And then at 3,

27
00:01:59.335 --> 00:02:00.235
everyone can

28
00:02:00.535 --> 00:02:09.819
use the workshop tables to their full effect. We can network. We can talk about open source. You can see all the great projects that are that are being displayed out there.

29
00:02:11.045 --> 00:02:14.345
We have teams from around the world who are participating in that.

30
00:02:15.845 --> 00:02:17.225
We structured the panels

31
00:02:17.685 --> 00:02:18.585
to be longer.

32
00:02:18.900 --> 00:02:21.960
They're 40 minutes each so we can have proper discussion,

33
00:02:22.980 --> 00:02:27.240
rather than just intros and outros and then get off the stage which I'm pretty excited about.

34
00:02:27.775 --> 00:02:33.875
We had fantastic panels yesterday so if you weren't here for it, make sure you go check out the video after the fact.

35
00:02:34.415 --> 00:02:35.875
They were really really great.

36
00:02:36.830 --> 00:02:40.450
Today, we are gonna have a absolutely awesome lineup.

37
00:02:41.390 --> 00:02:44.610
We're gonna have a Bitcoin core panel that I'm really excited about,

38
00:02:45.025 --> 00:02:46.965
Bitcoin Development Panel, decentralized

39
00:02:47.265 --> 00:02:48.485
exchanges, DLCs,

40
00:02:48.945 --> 00:02:49.445
nodes.

41
00:02:51.025 --> 00:02:53.605
It should be a very, very great day

42
00:02:54.209 --> 00:02:56.870
and I'm really excited to share with all of you.

43
00:02:58.690 --> 00:03:00.709
What else do we have here on my notes?

44
00:03:04.275 --> 00:03:04.775
So

45
00:03:05.474 --> 00:03:11.415
open source. I'm sure most I hope that most of you, I mean, you're here today know what open source is.

46
00:03:13.120 --> 00:03:13.860
You know, the

47
00:03:14.320 --> 00:03:16.420
the power of open source is that the code

48
00:03:16.880 --> 00:03:17.860
can be verified

49
00:03:18.800 --> 00:03:21.860
and so you don't have to trust any corporation,

50
00:03:23.345 --> 00:03:24.405
with what is running,

51
00:03:26.385 --> 00:03:30.565
and that you can build off that code, you can improve it, you can distribute it,

52
00:03:31.110 --> 00:03:37.450
and that that code is viral in nature. It lives forever. It'll live way past all of us just like Bitcoin will,

53
00:03:38.045 --> 00:03:41.585
And, that is extremely powerful and that is why it is imperative

54
00:03:42.045 --> 00:03:42.945
for all of us

55
00:03:43.245 --> 00:03:46.065
to support these projects, support these contributors,

56
00:03:46.790 --> 00:03:47.530
use the tools,

57
00:03:47.830 --> 00:03:48.730
build the tools,

58
00:03:49.510 --> 00:03:50.490
test the tools.

59
00:03:50.950 --> 00:03:54.570
You don't have to be a developer to contribute to the open source ecosystem.

60
00:03:55.275 --> 00:03:56.735
They love getting feedback

61
00:03:57.915 --> 00:04:00.175
through testing. They love design help.

62
00:04:00.475 --> 00:04:01.775
Design help is huge,

63
00:04:03.030 --> 00:04:04.569
And of course donations.

64
00:04:05.430 --> 00:04:08.810
So most of our open source contributors have chosen not to work

65
00:04:10.775 --> 00:04:11.515
at very

66
00:04:11.975 --> 00:04:18.155
lucrative paying jobs and instead have dedicated their time to working on these open source projects that are often,

67
00:04:18.729 --> 00:04:19.789
you know, their their

68
00:04:21.449 --> 00:04:22.830
compensation isn't great.

69
00:04:24.490 --> 00:04:24.990
So

70
00:04:25.574 --> 00:04:29.514
if you want to support them it is really great to send them some stats.

71
00:04:31.335 --> 00:04:38.450
I have 2 projects that I've been working on and to make that easier, you have bitcoindev list.com where you can donate sats directly

72
00:04:38.990 --> 00:04:42.050
to open source contributors who choose to get listed on the site.

73
00:04:42.735 --> 00:04:44.514
That's powered by VTC Payserver,

74
00:04:45.055 --> 00:04:48.755
so no middleman, goes straight to them, it's basically directory.

75
00:04:49.935 --> 00:04:52.115
And then we also started OpenSats,

76
00:04:52.960 --> 00:04:53.940
which is a 501c3

77
00:04:54.560 --> 00:04:56.020
tax deductible foundation.

78
00:04:58.240 --> 00:05:01.620
You can donate to that with credit card or through Bitcoin.

79
00:05:02.495 --> 00:05:03.955
Very excited that

80
00:05:04.495 --> 00:05:08.995
after a year and a half, we publicly launched 2 days ago. So if you go to opensats.org,

81
00:05:09.455 --> 00:05:10.595
you can donate today.

82
00:05:12.840 --> 00:05:14.139
Let's fucking go.

83
00:05:16.039 --> 00:05:22.905
OpenSads, part of the reason it took us so long is we take 0 cut. So most five zero one c threes will take 5% or 10%

84
00:05:23.604 --> 00:05:24.264
or 2%.

85
00:05:24.565 --> 00:05:25.544
We take 0%.

86
00:05:27.044 --> 00:05:29.145
We also we have a great board.

87
00:05:29.590 --> 00:05:34.490
So the way the Open Stats works is, you know, you you donate to this general fund and our board basically

88
00:05:34.950 --> 00:05:41.634
there's 2 things. There's a general fund where we choose which projects go, where where where the donations go for you,

89
00:05:42.014 --> 00:05:50.400
and then there's also the ability to donate directly to projects that have applied and on the website. I don't think we have that part built out yet, but you can donate directly,

90
00:05:51.260 --> 00:05:52.080
to the projects.

91
00:05:52.380 --> 00:05:54.480
If you donate with credit card, by the way,

92
00:05:54.865 --> 00:05:58.245
we automatically convert that into Bitcoin and hold Bitcoin only.

93
00:05:58.945 --> 00:06:04.570
And the credit card fees the credit card fees, we don't even that doesn't even come out of your donation because,

94
00:06:04.950 --> 00:06:07.930
we got Ledger to sponsor the credit card fees, so just

95
00:06:09.350 --> 00:06:15.175
no credit card fees either. So it's just a 100% to devs, and you can get a tax deductible donation on it.

96
00:06:18.090 --> 00:06:23.789
Yeah. And just a just a huge thanks to there's there was a massive team that worked with me to make this happen

97
00:06:24.090 --> 00:06:25.150
at Bitcoin Magazine.

98
00:06:27.125 --> 00:06:30.185
I really could not have done it without them. I couldn't have done it without

99
00:06:30.885 --> 00:06:32.585
a lot of people in this room today.

100
00:06:33.925 --> 00:06:37.930
It just inspires me, gives me a lot of hope for the future.

101
00:06:38.950 --> 00:06:40.970
You all you all are my people,

102
00:06:41.750 --> 00:06:45.130
and I'm proud to be here today. I'm excited to be here today,

103
00:06:45.444 --> 00:06:50.745
and, you know, we're gonna win together. We're gonna fucking do it. So let's fucking go. Have a great time. Enjoy yourself.

104
00:06:54.820 --> 00:06:57.160
Oh, this is so Good to see you. Oh.

105
00:06:58.020 --> 00:06:58.760
I see you.

106
00:06:59.780 --> 00:07:03.940
I didn't realize the Jackson 5 was the official music of core development, but,

107
00:07:04.695 --> 00:07:05.995
okay with that, I guess.

108
00:07:07.015 --> 00:07:14.560
Thanks for, getting up early and coming out. We're gonna be talking about the core development process. My name is James O'Byrne,

109
00:07:15.740 --> 00:07:20.800
and we've got what is probably the biggest panel of the, open source stage,

110
00:07:21.265 --> 00:07:25.445
at least so far. Maybe that bodes well for, increased developer participation.

111
00:07:26.625 --> 00:07:30.005
We'll see. But, yeah, I'm really excited about the panelists that we have here.

112
00:07:30.920 --> 00:07:33.900
So maybe we can get going. We've got a lot to cover.

113
00:07:35.080 --> 00:07:37.500
And, Yeah. Let's start off with some intros.

114
00:07:37.835 --> 00:07:39.055
Is that Andrew?

115
00:07:39.514 --> 00:07:40.634
So I'm Andrew Chow.

116
00:07:41.035 --> 00:07:43.775
I work on the Bitcoin Core Wallet. I'm the wallet maintainer,

117
00:07:44.315 --> 00:07:45.615
and I'm at Blockstream.

118
00:07:46.360 --> 00:07:49.660
Hey. I'm, Jeremy Rubin. I am a Bitcoin contributor.

119
00:07:50.040 --> 00:07:51.240
I work on,

120
00:07:51.640 --> 00:07:54.220
Sapio smart contract framework for Bitcoin.

121
00:07:55.185 --> 00:07:57.125
Hi. I'm Gloria Zhao or Glozao.

122
00:07:57.505 --> 00:07:59.925
I work mostly on mempool and p2p,

123
00:08:00.545 --> 00:08:01.205
at Brink.

124
00:08:01.790 --> 00:08:02.290
I'm,

125
00:08:04.350 --> 00:08:05.010
I'm mainly

126
00:08:05.390 --> 00:08:09.345
trying to focus on, making phone notes easier for people to use.

127
00:08:11.985 --> 00:08:12.485
K.

128
00:08:12.865 --> 00:08:18.780
I'm Carl Dong. I work for Chaincode Labs, and I used work on reproducible builds, but now modularizing

129
00:08:19.159 --> 00:08:20.300
the consensus engine.

130
00:08:21.879 --> 00:08:22.680
Very cool. So,

131
00:08:24.115 --> 00:08:26.135
let's start off by talking about,

132
00:08:26.755 --> 00:08:31.655
some repository mechanics. So as you all know, right now, Bitcoin Core is hosted on GitHub.com.

133
00:08:32.035 --> 00:08:33.255
It's a Git repository,

134
00:08:34.200 --> 00:08:34.520
and,

135
00:08:35.960 --> 00:08:40.300
there are a number of contributors, obviously, who work on Bitcoin Core in this venue.

136
00:08:41.205 --> 00:08:43.865
But there's a kind of special class of contributor,

137
00:08:44.405 --> 00:08:46.565
or maybe not so special as we'll find out,

138
00:08:47.045 --> 00:08:48.585
called maintainers. And

139
00:08:48.930 --> 00:08:57.590
Andrew is actually one of these maintainers, and we hear a lot about them. There's kind of a mystique surrounding them. So, Andrew, maybe you can talk a little bit about who the maintainers are, what they do,

140
00:08:58.675 --> 00:09:00.615
and their roles. So so the maintainers

141
00:09:00.995 --> 00:09:07.140
are the the people who have the ability to merge code into the Bitcoin Core code base, and

142
00:09:07.600 --> 00:09:09.620
it's actually largely a janitorial

143
00:09:09.920 --> 00:09:10.420
role.

144
00:09:10.880 --> 00:09:12.180
Maintainers look for

145
00:09:13.040 --> 00:09:18.115
other contributors to review code and and agree with the changes before they merge them.

146
00:09:18.975 --> 00:09:20.915
They're not, like, unilaterally

147
00:09:21.295 --> 00:09:22.195
adding things.

148
00:09:22.815 --> 00:09:24.510
It's it's mostly just, like,

149
00:09:24.910 --> 00:09:29.410
you know, seeing seeing that things that got reviewed make it in.

150
00:09:30.670 --> 00:09:31.170
Yeah.

151
00:09:31.470 --> 00:09:32.770
Yep. That makes sense.

152
00:09:33.805 --> 00:09:37.325
So, Jeremy, what has your interaction been like with,

153
00:09:38.045 --> 00:09:39.405
maintainers? How do you, you know

154
00:09:40.765 --> 00:09:42.305
I think that what's difficult,

155
00:09:43.230 --> 00:10:02.959
with maintainers is there's a lot of good, but I think what's difficult is that, what the community sometimes expects from the maintainers is different from, like, what contributors expect. Mhmm. And then you have to tell maintainers sometimes, like, hey. The community is, you know, wanting you to do this. What do you think? And they're like, oh, I don't wanna be doing that. That's not what a maintainer does. And you're like,

156
00:10:03.339 --> 00:10:05.519
you should probably, like, you know, like, there's some sort of miscommunication

157
00:10:15.160 --> 00:10:17.900
Can you give us an example of when those expectations

158
00:10:18.440 --> 00:10:18.940
differ?

159
00:10:20.200 --> 00:10:23.900
So in particular, like, I work on some consensus changes and,

160
00:10:25.615 --> 00:10:36.389
people wanna know, like, oh, like, what are what are the maintainers going to merge it? And I can communicate to maintainers. Like, people would like to know, like, you know, like this. Like, you should communicate that, you know, formally that this is not something that you're doing.

161
00:10:36.769 --> 00:10:52.400
But I think it's hard to sometimes get these, you know, like, people don't really want to communicate some of those things sometimes. And and I I think there's, like, a difference between how Bitcoin Core treats maintainers versus other projects. Like, in a lot of other projects, you have kind of like the the benevolent dictator for life,

162
00:10:53.100 --> 00:11:03.894
and they get to decide everything that's going on, what gets merged, and where the road map is going, whatever. But Bitcoin Core doesn't have that and we don't really want to. So it does lead to sometimes

163
00:11:04.595 --> 00:11:06.970
maintainers are are just doing

164
00:11:07.670 --> 00:11:10.470
the the work of clicking the button versus deciding,

165
00:11:12.230 --> 00:11:13.690
the direction of the project,

166
00:11:14.435 --> 00:11:18.214
which which we really wanna leave up to the contributors and community

167
00:11:18.595 --> 00:11:21.014
for for where Bitcoin is going to go.

168
00:11:21.860 --> 00:11:28.360
Yep. Yeah. So, I think maybe when a lot of people hear Bitcoin core, they're thinking about the rules of Bitcoin,

169
00:11:30.085 --> 00:11:32.345
how it functions, the consensus mechanism.

170
00:11:33.365 --> 00:11:33.865
Gloria,

171
00:11:34.645 --> 00:11:45.380
we know that there's a lot that happens in Bitcoin Core that isn't necessarily related to consensus, and a lot of the the job of the repository is to manage details that aren't related to that. So how are the 2 different?

172
00:11:46.465 --> 00:11:49.685
Yeah. I think when people think about protocol, they often think about

173
00:11:50.145 --> 00:11:51.205
consensus rules,

174
00:11:51.825 --> 00:11:53.765
so, like, scripting rules, for example.

175
00:11:54.650 --> 00:12:01.870
And then the next and most obvious thing would be the p to p protocol, like what messages are sent and understood by the all Bitcoin nodes.

176
00:12:02.955 --> 00:12:03.455
But

177
00:12:03.835 --> 00:12:06.895
there's so much that's only, like, a small fraction

178
00:12:07.675 --> 00:12:16.040
of what Bitcoin d is, which is also a small portion of or a major, but not the full portion of what Bitcoin Core is.

179
00:12:16.820 --> 00:12:20.520
And people often say, like, oh, Bitcoin development is so slow,

180
00:12:21.485 --> 00:12:21.985
But

181
00:12:22.845 --> 00:12:36.550
there's, like, dozens of PRs merged every day. There's bugs fixed every day. And I don't I just don't think it's true. I find it very hard to keep up with all the pull requests and issues that are open to the Bitcoin Core repo.

182
00:12:37.755 --> 00:12:39.855
So, yeah, there's there's a lot

183
00:12:40.555 --> 00:12:42.735
a lot more than consensus. And

184
00:12:43.195 --> 00:12:44.175
a lot of the

185
00:12:44.980 --> 00:12:51.000
biggest impacts that we can have at a protocol development level are not actually in consensus.

186
00:12:51.380 --> 00:12:51.880
Right?

187
00:12:52.945 --> 00:13:00.805
Peter Wille is known for many consensus changes, but I would even say that his biggest contribution is Ultra Prune,

188
00:13:02.529 --> 00:13:14.245
aka turning the state from let's look at what outputs are available in the blockchain and instead just keep a small UTXO set. And that, I think, did more for scalability than

189
00:13:14.945 --> 00:13:16.245
almost any

190
00:13:16.945 --> 00:13:19.925
or more than any consensus change that we've had.

191
00:13:20.560 --> 00:13:21.060
Likewise,

192
00:13:21.920 --> 00:13:28.500
I guess I'm going to show my own bags, package relay is not consensus change. It does require a lot of community,

193
00:13:29.360 --> 00:13:29.860
like,

194
00:13:30.505 --> 00:13:31.005
consensus.

195
00:13:32.105 --> 00:13:35.245
Not consensus consensus, but, like, you know, agreement.

196
00:13:36.985 --> 00:13:41.140
But it is it is it would also be a very impactful change. So

197
00:13:43.200 --> 00:13:45.220
hopefully, my message is consensus

198
00:13:45.600 --> 00:13:46.339
is overrated,

199
00:13:47.445 --> 00:13:50.825
and there's a lot we can do without requiring a soft work.

200
00:13:51.445 --> 00:13:54.585
There's also a lot of things within Bitcoin Core that, like,

201
00:13:55.630 --> 00:14:00.770
so since I work mostly in the wallet, these are gonna be some wallet examples. But, like, we do things in the wallet,

202
00:14:01.390 --> 00:14:12.515
some new innovation, and then other wallet software will, you know, pick them up, see that they're good ideas, and use them. And that's not that's also not a consensus change. And in fact, it doesn't even really require

203
00:14:13.149 --> 00:14:15.810
agreements between different software. But,

204
00:14:16.430 --> 00:14:17.009
you know,

205
00:14:17.310 --> 00:14:29.215
there are there are there's a large component of Bitcoin Core where we make changes that are basically local and then other people also pick them up because they seem like good ideas and, you know, vice versa.

206
00:14:29.680 --> 00:14:31.940
We've taken some ideas from other people as well.

207
00:14:32.720 --> 00:14:35.780
So, Jeremy, I know you've spent a lot of time on OPCTV

208
00:14:36.320 --> 00:14:39.245
among many other things, but specifically OP CTV

209
00:14:39.704 --> 00:14:43.404
in terms of consensus development. Can you just walk us through

210
00:14:43.945 --> 00:14:45.165
the process of,

211
00:14:46.060 --> 00:14:48.399
how changes to consensus are are proposed?

212
00:14:50.060 --> 00:14:50.560
Yeah.

213
00:14:51.019 --> 00:14:56.785
I I would if I, like, knew what it was. I think that there it's kinda funny because we have, like, this whole, like, you know,

214
00:14:57.405 --> 00:15:02.945
BIP process, and that's something that, you know, Luke knows a lot about because he's the BIP editor.

215
00:15:03.270 --> 00:15:04.550
But there's really no,

216
00:15:05.110 --> 00:15:09.750
fixed set of things that you have to do, say, or talk about. It's sort of this,

217
00:15:10.755 --> 00:15:11.535
you know, maybe

218
00:15:12.154 --> 00:15:15.675
rough process where you just decide you you're kinda like you're the,

219
00:15:16.635 --> 00:15:32.725
the who's the gopher who comes out and looks at his shadow and is like, you know, is winter gonna keep on going? You just poke your head out and see if people shout at you and what they shout at you about. And then you're like, okay. Like, it's gonna be in another 6 weeks or you're like, actually, maybe it's gonna be another 6 years or something like that. That make you Bill Murray?

220
00:15:34.785 --> 00:15:42.089
I definitely sometimes identify with the notion of doing the same thing every day and the same thing happens. So I would say maybe. Yeah. I'll take it.

221
00:15:43.350 --> 00:15:44.170
That's funny.

222
00:15:45.475 --> 00:15:52.615
So, you know, as Gloria was talking about earlier, Bitcoin d is composed of a lot of different components. It does a lot of different things.

223
00:15:53.770 --> 00:16:03.225
It's the one piece of software that people participating in in Bitcoin have to run. So I think it might be useful to go through and enumerate the different parts of Bitcoin d. So,

224
00:16:04.005 --> 00:16:11.545
just in quick succession here, let's start with Carl and kinda go down the list and and have each of you talk briefly about one component of Bitcoin.

225
00:16:12.630 --> 00:16:13.110
Well,

226
00:16:13.910 --> 00:16:15.029
yeah. So like,

227
00:16:15.670 --> 00:16:20.725
yeah, I can I can talk about the consensus engine, I guess, or or what people would call validation?

228
00:16:22.545 --> 00:16:25.605
So you guys know how like Bitcoin has a blockchain.

229
00:16:27.185 --> 00:16:28.085
And so,

230
00:16:29.089 --> 00:16:31.750
the blockchain has to be kept somewhere, and basically,

231
00:16:32.450 --> 00:16:37.510
it's kept in what we call validation code or what I like to call sort of the consensus engine.

232
00:16:38.305 --> 00:16:43.764
It keeps track of, all of the blocks. It keeps track of all the, you know, UTXOs,

233
00:16:44.065 --> 00:16:45.845
which are basically, you know, the coins.

234
00:16:47.140 --> 00:16:50.360
And what it also does is it defines

235
00:16:51.060 --> 00:16:52.839
what it means to be Bitcoin,

236
00:16:53.300 --> 00:16:56.665
basically. It define it's the arbiter of truth of whether, you know,

237
00:16:57.125 --> 00:17:00.585
a transaction or a block or or something is valid,

238
00:17:01.045 --> 00:17:03.705
which makes it a critical part of Bitcoin.

239
00:17:04.725 --> 00:17:05.225
And

240
00:17:05.850 --> 00:17:06.350
all

241
00:17:07.130 --> 00:17:07.630
of

242
00:17:08.410 --> 00:17:13.165
the consensus engines across all of the nodes on the network basically have

243
00:17:13.645 --> 00:17:21.425
to agree for, you know, consensus to be formed. And if they disagree, then, you know, that's what we call it. Sort of an unintentional fork and

244
00:17:21.780 --> 00:17:22.600
that's bad.

245
00:17:23.140 --> 00:17:26.520
So yeah. That that's what the consensus engine or validation is.

246
00:17:30.145 --> 00:17:31.765
Random, the mining module

247
00:17:32.145 --> 00:17:33.125
essentially decides

248
00:17:33.585 --> 00:17:34.405
which transactions

249
00:17:35.105 --> 00:17:38.645
the miners don't put into a box they might potentially buy.

250
00:17:39.020 --> 00:17:41.120
So when a miner finds a box, they had

251
00:17:43.020 --> 00:17:43.770
a certain

252
00:17:53.195 --> 00:17:57.889
Cool. I'll talk about p2p, I guess, which is where I think a lot of the ideological

253
00:17:58.190 --> 00:18:01.649
values of Bitcoin kind of come to life in code form,

254
00:18:01.950 --> 00:18:03.570
which makes it very interesting.

255
00:18:04.315 --> 00:18:07.294
So this idea of, like, oh, it should be permissionless,

256
00:18:07.595 --> 00:18:09.855
but not just that. It should be censorship resistant.

257
00:18:10.475 --> 00:18:14.789
Anyone should be able to join the p to p network and broadcast their transactions,

258
00:18:15.409 --> 00:18:18.470
but that also makes p to p security model,

259
00:18:18.850 --> 00:18:25.904
like, extra hard mode because we want anyone to be able to join, and we don't want to be able to tell who's who.

260
00:18:26.205 --> 00:18:26.945
But, also,

261
00:18:27.404 --> 00:18:29.664
there are going to be bad guys. We have to,

262
00:18:30.524 --> 00:18:32.549
expect that, and that allows

263
00:18:33.090 --> 00:18:34.149
for very interesting,

264
00:18:35.570 --> 00:18:37.110
very anxiety driven

265
00:18:37.490 --> 00:18:38.549
development sometimes.

266
00:18:40.295 --> 00:18:41.275
It makes review

267
00:18:42.455 --> 00:18:43.595
kind of spicier.

268
00:18:44.055 --> 00:18:44.555
And,

269
00:18:44.855 --> 00:18:49.115
yeah, we're always thinking about privacy and security andDoS attacks.

270
00:18:49.799 --> 00:18:50.299
So

271
00:18:50.600 --> 00:18:51.100
that's

272
00:18:51.559 --> 00:18:52.940
that's my pitch for p2p.

273
00:18:53.799 --> 00:18:56.700
I guess I'll I'll go into the mempool, which is the,

274
00:18:57.125 --> 00:19:01.065
you know, list of transactions there to be confirmed into a block.

275
00:19:02.164 --> 00:19:08.080
It sort of serves as the glue between the last three modules you heard about of consensus, the thing that gets finalized,

276
00:19:08.620 --> 00:19:14.880
mining, how we pick the things to finalize from the mempool, and then also p to p, like, how we get things into the mempool

277
00:19:15.315 --> 00:19:21.575
to give to those other 2 modules and then use the mempool to also figure out what to put into the p2p network ourselves.

278
00:19:22.274 --> 00:19:23.394
And so the mempool is,

279
00:19:24.370 --> 00:19:27.190
at least I view it as sort of like this central plane

280
00:19:27.490 --> 00:19:31.190
for all of Bitcoin where it sort of touches all the different parts

281
00:19:31.490 --> 00:19:31.970
and,

282
00:19:32.835 --> 00:19:46.740
it, you know, stores all the transactions that you might ever do in Bitcoin. And each node has their own mempool. There's no one global mempool, but there's also a, you know, philosophical mempool of all the transactions that somebody in the world somewhere knows about.

283
00:19:47.360 --> 00:19:55.205
And, of course, I'll talk about my favorite thing, the wallet. Of course, everything else we've just talked about wouldn't matter if you didn't have a wallet to make transactions.

284
00:19:55.665 --> 00:19:57.125
So Store value.

285
00:19:58.145 --> 00:20:01.670
Well, you still need a wallet. So, the Bitcoin Core Wallet,

286
00:20:02.050 --> 00:20:05.670
you know, it does things like manage your UTXOs, manage keys,

287
00:20:06.290 --> 00:20:09.190
figure out what addresses, what scripts to be watching for.

288
00:20:11.054 --> 00:20:15.315
And I find it to be actually very senior to be working on the wallet because,

289
00:20:15.615 --> 00:20:17.475
it's like the the one thing that users

290
00:20:17.775 --> 00:20:19.794
interact with a lot and then

291
00:20:20.159 --> 00:20:26.820
if you do it wrong, you might actually end up losing people's money. And, of course, you never wanna lose someone's money, which is so so the wall is is,

292
00:20:27.360 --> 00:20:31.695
a pretty big component and and there's a lot of work going into making sure that things are secure,

293
00:20:32.794 --> 00:20:37.660
that funds are still available, and that we don't, like, do anything weird with it.

294
00:20:38.760 --> 00:20:41.400
And there are many other components that are are,

295
00:20:42.360 --> 00:20:49.225
fairly crucial to running Bitcoin, like the RPC interface, the the graphic user interface that maybe are sort of nonessential, but,

296
00:20:50.345 --> 00:20:52.845
but niceties that, that help everything run.

297
00:20:56.060 --> 00:20:56.560
So,

298
00:20:57.260 --> 00:20:59.200
let's turn now to,

299
00:21:00.060 --> 00:21:02.000
the development process itself.

300
00:21:02.860 --> 00:21:05.315
Working on Bitcoin is, you know, notoriously,

301
00:21:07.375 --> 00:21:10.575
I don't wanna say difficult, but it it definitely has,

302
00:21:11.135 --> 00:21:13.875
unique attributes that make it time consumptive

303
00:21:14.519 --> 00:21:15.419
to work on.

304
00:21:15.880 --> 00:21:16.200
So,

305
00:21:17.639 --> 00:21:18.139
Carl,

306
00:21:18.600 --> 00:21:20.220
how how have you found

307
00:21:20.919 --> 00:21:23.740
doing large projects on Bitcoin Core, and

308
00:21:24.585 --> 00:21:28.445
why do you think the review process is is so, intense?

309
00:21:29.545 --> 00:21:30.525
Yeah. I mean,

310
00:21:31.625 --> 00:21:32.285
I think,

311
00:21:33.659 --> 00:21:41.679
you know, this is logic that I've heard from other people, and I I I think I agree with sort of on the surface. It's it's sort of, you know, if we

312
00:21:42.105 --> 00:21:46.045
just sort of walk away from Bitcoin, you know, it still

313
00:21:46.345 --> 00:21:47.325
kind of works.

314
00:21:47.945 --> 00:21:52.929
You know, maybe default compilers would change and and all that, but it still kind of works

315
00:21:53.230 --> 00:21:56.850
and which is why I think that, you know, Bitcoin has such a

316
00:21:57.575 --> 00:21:58.075
conservative,

317
00:21:58.935 --> 00:22:09.590
you know, model of reviewing PRs and and getting getting them through. Not not to say that I've I've I've fully agree with that or agree with the lien or anything. So I think that's what it is.

318
00:22:10.530 --> 00:22:11.190
I think

319
00:22:11.730 --> 00:22:14.710
personally when I'm trying to get across large changes,

320
00:22:16.835 --> 00:22:20.615
what has been really important is just, like, getting the rationale

321
00:22:20.915 --> 00:22:21.415
up,

322
00:22:21.875 --> 00:22:22.435
you know,

323
00:22:22.860 --> 00:22:26.559
you know, writing a big document about the rationales, the FAQs,

324
00:22:26.940 --> 00:22:28.880
sort of socialize the change,

325
00:22:29.980 --> 00:22:33.795
breaking up into little reviewable pieces, which has been sort of like,

326
00:22:34.355 --> 00:22:39.235
a culture that has developed over the years as review has become more and more,

327
00:22:39.795 --> 00:22:40.295
stringent.

328
00:22:41.370 --> 00:22:41.870
And,

329
00:22:42.570 --> 00:22:45.390
well, one thing that I found to be really helpful is sort

330
00:22:46.330 --> 00:22:48.190
of dealing with and

331
00:22:48.554 --> 00:22:49.054
talking

332
00:22:49.355 --> 00:22:50.735
with people about,

333
00:22:51.115 --> 00:22:57.100
you know, potential flaws or or or potential downsides or potential alternative strategies sort of

334
00:22:57.580 --> 00:23:03.919
upfront. I find that that that really helps get people across the line after they've had a lot of context.

335
00:23:05.914 --> 00:23:06.414
Yeah.

336
00:23:07.115 --> 00:23:08.255
That's great. Gloria,

337
00:23:08.955 --> 00:23:10.735
a lot of your projects require

338
00:23:12.840 --> 00:23:17.020
coordination, deep thinking, you know, trying to sort of emulate how,

339
00:23:17.480 --> 00:23:21.020
mempool policy changes and peer to peer policy changes will kind of,

340
00:23:21.615 --> 00:23:23.955
ripple out through the network. You know,

341
00:23:24.415 --> 00:23:27.555
how do you feel that developing for that part of the system

342
00:23:28.175 --> 00:23:31.460
differs from, you know, other other tasks in Bitcoin.

343
00:23:31.920 --> 00:23:37.380
Right. Yeah. I think a lot of people underestimate the amount of advocacy work that you have to do, even just

344
00:23:37.815 --> 00:23:40.235
to change something that doesn't require anyone

345
00:23:40.615 --> 00:23:41.115
to

346
00:23:41.575 --> 00:23:42.315
to coordinate.

347
00:23:42.695 --> 00:23:43.514
Right? Like,

348
00:23:44.135 --> 00:23:51.020
I I think it's kind of understated how bad it would be if we, you know, merge to change that had an assertion

349
00:23:51.800 --> 00:23:58.255
that is not supposed to be hit, but could potentially be hit if, you know, a peer sends us something in particular.

350
00:23:58.635 --> 00:24:11.200
Because then you have a crash bug where someone can attack the network and just shut down all of the nodes running that version with that bug in it. You know? And sometimes we change something here and something breaks over there. Right? Like, it's

351
00:24:11.675 --> 00:24:16.335
pretty it's I think we should we should be careful about changing things.

352
00:24:17.115 --> 00:24:20.330
So I'm on the I guess I'm more on the conservative side of

353
00:24:20.890 --> 00:24:21.390
development.

354
00:24:22.970 --> 00:24:27.309
But, yeah, like, with policy and p to p, with, yeah, with policy changes,

355
00:24:28.695 --> 00:24:29.195
the

356
00:24:29.735 --> 00:24:35.915
I guess policy exists in this gray area, and we can we can both speak to this, where, like, there are no

357
00:24:36.530 --> 00:24:38.710
there are no What what is policy?

358
00:24:39.250 --> 00:24:45.270
Okay. Sure. So policy is the set of validation rules that we apply to unconfirmed transactions.

359
00:24:45.945 --> 00:24:49.885
So not transactions and blocks, but ones that we receive on p to p

360
00:24:50.505 --> 00:24:52.525
or through the wallet, for example.

361
00:24:52.960 --> 00:24:58.100
And they're local to a node. Usually, the user is able to configure them and we do hope that people

362
00:24:58.800 --> 00:25:06.815
stick to the defaults because it's more safe. But, you know, if you're a miner, for example, and you have more resources, you can afford to, like, make your mempool,

363
00:25:07.514 --> 00:25:11.470
have a higher maximum dynamic memory, like, limit. Right?

364
00:25:12.970 --> 00:25:17.870
Yeah. The that's why there's this kind of gray area you cannot really expect people

365
00:25:18.215 --> 00:25:21.835
to adhere to a certain policy. And for example, in Lightning,

366
00:25:22.215 --> 00:25:24.795
they might take some liberties in, like, using,

367
00:25:25.310 --> 00:25:27.650
you know, a few bits of the in sequence field

368
00:25:28.110 --> 00:25:28.610
to,

369
00:25:29.390 --> 00:25:30.130
to communicate

370
00:25:30.510 --> 00:25:34.290
the ordering of transactions in their channel, for example. Right?

371
00:25:35.524 --> 00:25:45.809
Or I I think, you know, we've we've tried to say, like, oh, maybe we should make this nonstandard, but, actually, you know, colored coins is using this to, like, flag certain transactions

372
00:25:46.110 --> 00:25:47.169
in a certain way.

373
00:25:47.549 --> 00:25:50.690
So that this is kind of this, like, no man's land where

374
00:25:52.434 --> 00:25:54.695
people can use it for their purposes.

375
00:25:55.795 --> 00:26:02.110
And that's why it requires so much coordination when we try to change policy because if we accidentally make something nonstandard

376
00:26:02.890 --> 00:26:12.815
and, like, 99% of nodes on the network are Bitcoin Core, and then 99% of those nodes are running default policy, Well, you cannot really expect your transactions to propagate

377
00:26:13.355 --> 00:26:17.375
if you're relying on something that, you know, the Bitcoin Core developers unilaterally

378
00:26:17.675 --> 00:26:18.735
decided to

379
00:26:19.340 --> 00:26:20.399
to make nonstandard.

380
00:26:20.700 --> 00:26:21.200
Right?

381
00:26:21.580 --> 00:26:24.159
Which is why we don't unilaterally decide that.

382
00:26:24.700 --> 00:26:26.139
But it, you know, it

383
00:26:26.784 --> 00:26:29.205
I think it's it's good to

384
00:26:29.745 --> 00:26:30.725
to have this,

385
00:26:31.184 --> 00:26:34.950
you know, usable space for people to develop applications, of course.

386
00:26:35.909 --> 00:26:39.529
And that's why it's so important to have a nice communication

387
00:26:40.870 --> 00:26:41.370
between,

388
00:26:41.830 --> 00:26:42.409
you know,

389
00:26:43.304 --> 00:26:46.605
protocol or l one and l two because

390
00:26:46.985 --> 00:26:49.085
this is an interface that

391
00:26:50.025 --> 00:26:51.165
we rely on

392
00:26:52.389 --> 00:26:59.210
to to make the ecosystem work. Like, obviously, we cannot scale to millions of transactions per block,

393
00:26:59.644 --> 00:27:01.745
So we rely on these applications,

394
00:27:02.684 --> 00:27:03.184
such

395
00:27:03.485 --> 00:27:04.065
as Lightning,

396
00:27:04.845 --> 00:27:07.424
to scale. But, also, you know, if

397
00:27:08.050 --> 00:27:08.950
if the

398
00:27:09.410 --> 00:27:13.350
the first layer is broken or if transaction propagation doesn't work

399
00:27:14.050 --> 00:27:15.430
the way it's supposed to,

400
00:27:15.890 --> 00:27:16.390
then

401
00:27:16.745 --> 00:27:18.205
maybe Lightning is vulnerable

402
00:27:18.505 --> 00:27:19.005
to

403
00:27:19.465 --> 00:27:21.165
paying a tax, for example.

404
00:27:22.265 --> 00:27:22.765
Yeah.

405
00:27:23.385 --> 00:27:27.770
So as time has gone on, I've seen for myself that it feels

406
00:27:28.070 --> 00:27:29.130
sometimes as though,

407
00:27:29.830 --> 00:27:31.690
development in Bitcoin Core has

408
00:27:32.804 --> 00:27:34.184
become more arduous,

409
00:27:34.885 --> 00:27:41.065
and and that sort of makes sense that the process would get a little bit more heavyweight as the value of the network grows, say.

410
00:27:41.830 --> 00:27:44.090
But I know there are a lot of early developers who,

411
00:27:45.270 --> 00:27:51.695
feel that it's very difficult to work on the code now, and it and it continues to grow in difficulty.

412
00:27:52.875 --> 00:27:54.895
Jeremy, can you talk a little bit about,

413
00:27:55.595 --> 00:28:00.654
you know, whether that's whether there's good reason for that and how we might be able to keep the development process

414
00:28:01.179 --> 00:28:03.600
safe, but also kind of nimble and approachable.

415
00:28:04.380 --> 00:28:07.679
Yeah. I I think that I have a pretty specific take.

416
00:28:09.875 --> 00:28:11.815
Currently, a a lot of Bitcoin

417
00:28:12.195 --> 00:28:12.934
core development,

418
00:28:13.875 --> 00:28:17.495
happens more as an artisan process than an engineering process.

419
00:28:18.170 --> 00:28:25.345
And I would delineate the 2 if you wanna think about building a bridge, where an artisan process, you might be more concerned with, like, the,

420
00:28:25.825 --> 00:28:30.965
aesthetic detail of, like, what is the color of the bridge? What's the molding on the bridge look like?

421
00:28:31.505 --> 00:28:32.885
Are we using, you know,

422
00:28:33.730 --> 00:28:46.565
peak wood or something like that? And the engineering concerns would be asking questions of, like, how many cars need to be going? What's the load? What's the peak load? How many lanes do we need? And and those would be things that would be more concrete engineering constraints.

423
00:28:46.945 --> 00:28:57.540
And I think the reason why there there's a difference why Bitcoin ends up being a little bit more artisan and we could benefit by being more engineering driven. Is it an engineering driven process? You can define some sort of,

424
00:28:58.865 --> 00:29:00.725
objective acceptance criteria

425
00:29:01.025 --> 00:29:02.325
for is this bridge

426
00:29:02.705 --> 00:29:05.285
a satisfying bridge for our our need.

427
00:29:06.145 --> 00:29:08.325
And, you know, if it is, you can proceed.

428
00:29:08.770 --> 00:29:12.309
I think Bitcoin as a community, we've been very resistant to having,

429
00:29:12.690 --> 00:29:14.470
standard processes required,

430
00:29:15.330 --> 00:29:30.500
because people view a standard bar for something as something that an adversary might be able to say. I've met the bar, and the bar that I met was for introducing a bug. And everybody can see that it's a bug, but now there's a standard thing that was satisfied by it. And now we're screwed because we said we would accept anything that met that bar.

431
00:29:30.880 --> 00:29:35.840
I don't think we have to commit ourselves so strongly to that, but I do think that by having,

432
00:29:36.485 --> 00:29:44.410
better standards, that means that you have things like a preflight checklist of, like, one one example of something I think is is maybe a new idea would be, like,

433
00:29:45.050 --> 00:29:48.990
any peer to peer or, like, policy change that we implement,

434
00:29:49.370 --> 00:29:57.225
we should back test against every previous block that we would be able to relay all the transactions that come in the next block into the mempool.

435
00:29:57.605 --> 00:30:14.855
And they're obviously non standard blocks that get mined, but what that would give us would be to say, okay. If we're introducing a new thing, anytime we introduce any policy we should always have a backtest that tells us if there are new transactions that previously would have been okay. Right? And that's the sort of thing where in your if you're in an engineering process, you can define more of these criteria.

436
00:30:15.235 --> 00:30:24.650
And the more criteria that you have, it's actually, even though it's more arduous because you're saying, well, you better do this, you better do that. It's actually easier because you know exactly what you have to demonstrate,

437
00:30:25.245 --> 00:30:48.895
and you can work towards a concrete goal. And I think as long as developers aren't trying to adversarially be like, I'm going to come up with a rule that's not going to trigger this test, and then I'm going, I think you can actually get more confidence in the review process. And so I think that's something where the solution to make it less arduous is to get more strenuous, if that makes sense. I don't think it's very safe to just have, like, a checklist. I I know that's not exactly what you're saying, but, like,

438
00:30:49.275 --> 00:30:52.650
security is not a, oh, if we meet all these checkboxes,

439
00:30:53.190 --> 00:30:53.930
it's secure.

440
00:30:54.950 --> 00:31:00.175
There's always, like I I think it's more about developing this kind of, like, adversarial thinking

441
00:31:00.875 --> 00:31:10.110
when reviewing code, and that's not something you can really just I teach. Yeah. I I absolutely agree with you that you can't just purely rely on your checklist. I think that,

442
00:31:10.590 --> 00:31:11.470
we just have,

443
00:31:11.790 --> 00:31:20.265
kind of, like, empirical evidence that, like, things like checklists and actually, like, you know, redundant checklists for, like, mission critical things in, like, aerospace

444
00:31:20.885 --> 00:31:22.665
do reduce critical failures.

445
00:31:23.205 --> 00:31:39.804
And they make sure that when you're doing something, you never let yourself rest on an assumption of, like, oh, this is a small change. We don't need to audit it in this way. You always are saying, well, it might be a small change, but we still have to go through all of these steps no matter how big or small we think it is. And so it doesn't let you skip

446
00:31:40.260 --> 00:31:45.720
any of the things in between. And and in terms of code review, one thing that I've heard recently is that, like,

447
00:31:46.020 --> 00:31:49.885
apparently, a large number of developers maybe, like, mostly review the tests

448
00:31:50.445 --> 00:32:02.650
when they're looking at a code change rather than, like, reviewing line by line every piece of the code. And that was, like, really surprising to me because I usually almost never look at the tests, and I always go line by line through the code. I think that that's something where at least understanding,

449
00:32:03.030 --> 00:32:19.690
like, well, if you're acting, you actually should have gone through line by line of the code and at least read every single line before you act. It's something that, like, maybe is like a a checklist type thing that would be, you know, an improvement. That that seems pretty obvious. Yeah. But I guess people don't do it. So I don't know. So, like,

450
00:32:20.550 --> 00:32:36.580
necessary but not sufficient checklist is? Yeah. I think I think that's something where, like, yeah, it's more annoying if anytime you wanna approve a pull request and you're saying it's an act Yeah. That you that you have, like, you know, like, 10 tick boxes that you have to do and it's, like, did you review every line of the code?

451
00:32:37.440 --> 00:32:43.845
You know, and if you didn't, it's fine. You you know, but, you know, it's like it would just mean it would get more information of, like, have we actually satisfied,

452
00:32:44.465 --> 00:32:49.640
you know, the the preflight checklist. Yeah. Because there there's a there's a big space between,

453
00:32:50.900 --> 00:32:53.480
what we can do with static analysis.

454
00:32:54.179 --> 00:32:59.445
So for example, like, you know, for the CI system, that's basically a checklist. Right? It's an automated checklist,

455
00:33:00.145 --> 00:33:02.965
versus sort of there's a big spectrum between that

456
00:33:03.425 --> 00:33:19.304
and what you have to, you know, think about on, like, a design level when it comes to p p to p and stuff. Right? So, you know, you you could have, you know, things in the middle which are not yet automatable, but is somewhat, you know, just, you know, you can describe it, let's say, fully,

457
00:33:19.764 --> 00:33:23.065
and you can have a checklist without god, I I would love to have that for

458
00:33:23.605 --> 00:33:26.050
bash scripts and things that shell tech can't,

459
00:33:26.530 --> 00:33:27.990
can't can't catch and

460
00:33:28.530 --> 00:33:35.365
and modular dependencies and stuff, which are not, you know, enforceable. Yeah. For example, you know, when Jeremy was talking about the idea of backtesting,

461
00:33:36.645 --> 00:33:51.760
transaction broadcast based on historical blocks, I think that's a great check, and and you could probably write a functional test. Well, that's difficult because the, you know It's it's gonna take a few hours. Gonna take a few hours. So it's almost this this zone between, you know, functional test and, something that someone would do manually

462
00:33:52.165 --> 00:34:02.029
where, you know, you might have a simulation framework or something to to to check some of those things. So I think that's that could be a really valuable project for somebody looking to get involved with Bitcoin is to kind

463
00:34:02.570 --> 00:34:05.630
of focus on the testing regime between those 2. Sorry.

464
00:34:06.490 --> 00:34:11.435
So talking about the development process and maybe some of the the difficulties associated with it,

465
00:34:13.035 --> 00:34:22.960
it, one of the ways that, you know, this this could be resolved, and, Luke, you know, I think the route that you've taken is that you have your own implementation of Bitcoin, a fork of Bitcoin called Bitcoin knots.

466
00:34:23.579 --> 00:34:24.079
And,

467
00:34:24.940 --> 00:34:28.319
you know, obviously, you can make the argument against that that,

468
00:34:29.285 --> 00:34:33.845
having, an implementation that's unilaterally controlled by a single person is risky,

469
00:34:34.325 --> 00:34:43.070
that, you know, having multiple implementations in the first place comes with some non obvious risks. But how would you make the case that that's actually sort of a good thing to be doing?

470
00:34:44.570 --> 00:34:46.090
So basically, get all the

471
00:34:46.925 --> 00:34:49.265
everything that would be a good idea to merge,

472
00:34:50.125 --> 00:34:54.145
probably safe as merging the Bitcoin nuts, whereas Bitcoin core believes

473
00:34:54.525 --> 00:34:56.305
it takes the more careful and

474
00:34:56.960 --> 00:34:58.820
extra careful review approach.

475
00:34:59.760 --> 00:35:02.180
And so the users have the option between

476
00:35:02.560 --> 00:35:04.420
do they want to have something that

477
00:35:04.925 --> 00:35:08.225
takes this extra careful approach, or do they just wanna have something that has

478
00:35:08.525 --> 00:35:10.545
all the latest and greatest and, hopefully,

479
00:35:11.405 --> 00:35:12.225
safe enough?

480
00:35:13.510 --> 00:35:21.049
Right. So it could function, I guess, as a good test bed maybe. Right. It can be used in a lot of ways. Potentially, it's testing and other.

481
00:35:22.905 --> 00:35:23.405
Great.

482
00:35:25.705 --> 00:35:28.525
Yeah. I would I would like to add on to that. So,

483
00:35:29.470 --> 00:35:37.890
the the project that I've been working on is called Lit Bitcoin Kernel, and it's, it's it's a project to extract sort of the consensus engine

484
00:35:38.385 --> 00:35:40.245
out of, Bitcoin Core.

485
00:35:40.625 --> 00:35:45.845
And one of the rationales or one of the problems that we're sort of trying to solve is that

486
00:35:46.210 --> 00:35:46.710
people

487
00:35:47.490 --> 00:35:51.910
have different and and as they as Gloria has mentioned, like, people have different expectations

488
00:35:52.530 --> 00:35:54.070
for how they want,

489
00:35:54.635 --> 00:36:03.130
you know, their mempool or their validation or or or or or or or or sorry. Mempool and sort of the the the rest of the code, like wallet or GUI,

490
00:36:04.390 --> 00:36:06.010
RPC and all of that to act.

491
00:36:06.310 --> 00:36:12.935
And as Luke has said, perhaps they want to be more you know, experimental or have, you know, features that perhaps,

492
00:36:13.475 --> 00:36:15.975
can't get into Bitcoin Core. Right? So

493
00:36:17.290 --> 00:36:19.869
the options right now for experimenters

494
00:36:20.170 --> 00:36:24.030
like that are, you know, you either go through as

495
00:36:24.635 --> 00:36:27.195
I hope we painted a picture of,

496
00:36:27.595 --> 00:36:45.385
PR review being very stringent, let's say. You either go through with PR review and try to get it into Bitcoin Core, which is hard, but also is a, you know, a burden on maintainers. Right? This is not a piece of code that you write, and then that's that's it. We have to maintain it throughout time.

497
00:36:46.325 --> 00:36:47.865
So you either do that,

498
00:36:48.805 --> 00:36:49.625
you either

499
00:36:50.040 --> 00:37:06.505
fork Bitcoin Core, which is what LUKE does, and and and every release, you have to rebase. And perhaps, you know, Bitcoin Core structures it in a way that now makes it really hard for this critical feature that that you have. And I think Luke has run into that problem before.

500
00:37:07.799 --> 00:37:19.425
And and and then the third way is just to sort of reimplement Bitcoin Core. Right? And and if you reimplement Bitcoin, then you are sure to get almost certain to get sort of,

501
00:37:19.965 --> 00:37:21.185
consensus incompatibilities,

502
00:37:21.645 --> 00:37:26.570
which, you know, as I just described before, consensus incompatibilities is what leads to,

503
00:37:27.510 --> 00:37:34.315
you know, unforeseen or unexpected bugs, which is, you know, sort of what keeps all of us up at night, I would I would say.

504
00:37:35.255 --> 00:37:35.915
And so

505
00:37:37.175 --> 00:37:38.935
having this sort of,

506
00:37:39.495 --> 00:37:42.109
extracting out sort of the part that defines

507
00:37:42.809 --> 00:37:43.309
consensus

508
00:37:44.009 --> 00:37:44.509
allows

509
00:37:44.809 --> 00:37:54.655
experimenters. And, you know, I I I think it speaks to the strength of our community that we have people who want to experiment, have people who want to implement features, have people who want to tweak parameters.

510
00:37:55.355 --> 00:37:58.175
It sort of allows people to experiment with that

511
00:37:59.359 --> 00:38:09.025
and not have to worry about the, you know, consensus compatibility part, not have to sort of try to cram it into Bitcoin Core and make it a burden on everybody else,

512
00:38:10.125 --> 00:38:14.464
not have to, you know, do do do the forklift. So I I,

513
00:38:14.809 --> 00:38:25.005
you know, I I on a personal note, I'm I'm very, very happy that, you know, there are experimenters out there, and I think we should encourage them. So I think your project, the Bitcoin Kernel, is one of the most exciting,

514
00:38:25.485 --> 00:38:28.785
initiatives ongoing in Bitcoin Core now because you could really see

515
00:38:29.165 --> 00:38:32.225
the inner workings of consensus packaged up very nicely

516
00:38:32.540 --> 00:38:44.095
in a format that allows people to build a lot of the policy components or optional components of Bitcoin kind of in in the way that they like to without risking some some kind of major consensus fault. So

517
00:38:44.634 --> 00:38:45.674
with with that,

518
00:38:46.075 --> 00:38:46.894
under consideration,

519
00:38:47.194 --> 00:38:48.974
Carl, how do you see

520
00:38:49.275 --> 00:38:50.575
Bitcoin Core's scope

521
00:38:51.059 --> 00:38:58.440
kind of expanding or contracting over, say, the next 5 years? What do you think will ultimately be a part of the Bitcoin Core process?

522
00:39:00.285 --> 00:39:00.785
I

523
00:39:01.484 --> 00:39:08.610
and and this is just me speaking personally is is I I would hope that sort of the

524
00:39:10.110 --> 00:39:11.490
there is a

525
00:39:12.750 --> 00:39:23.145
the project is to basically delineate a clear boundary between what is consensus and what what is not. Right? And, you know, the the the big problem right now is that when we make a change,

526
00:39:23.580 --> 00:39:27.600
because everything is all tangled up into this, like, spaghetti monster mess,

527
00:39:28.140 --> 00:39:32.320
when we make a change, we don't know if it'll, you know, affect consensus. And and

528
00:39:32.635 --> 00:39:33.375
and sometimes,

529
00:39:33.675 --> 00:39:41.900
you know, to Jeremy's point, we probably need a checklist for this. Sometimes we introduce, like, a a block filter, and then it pick up as part of consensus. And you're like, okay. What?

530
00:39:42.859 --> 00:39:44.960
So I think be you know, delineating

531
00:39:45.900 --> 00:39:46.400
that

532
00:39:46.700 --> 00:39:47.200
boundary

533
00:39:47.579 --> 00:39:48.380
means that,

534
00:39:48.700 --> 00:39:52.435
it's a technical change, I think, to sort of a social problem

535
00:39:52.895 --> 00:39:54.755
where now we can have

536
00:39:55.375 --> 00:39:57.635
more eyes on the consensus

537
00:39:57.935 --> 00:39:58.915
critical part

538
00:39:59.569 --> 00:40:00.069
and,

539
00:40:00.530 --> 00:40:24.075
you know, and and the sort of outside realm can be swapped out, and and, you know, we we won't have to have, like I I mean, we we just have too many flags right now. I mean, we don't have to have, like, you know, a 100 flags just for, you know, all the all the all the use cases that people have. And that, I think, will be able to that will make the review process easier because people now know what is consensus critical and what is not. Right? And and it'll make,

540
00:40:24.555 --> 00:40:33.410
things a lot smoother in a social sense, I think. So, Andrew, you work a lot on the wallet. You're the wallet maintainer. You know, the wallet is one of those parts of Bitcoin that,

541
00:40:34.369 --> 00:40:35.829
is not consensus critical,

542
00:40:36.609 --> 00:40:39.030
but is still very crucial to

543
00:40:39.410 --> 00:40:45.655
using Bitcoin. And it's something where the design space is very open. So you obviously have a number of different wallet implementations.

544
00:40:46.435 --> 00:40:54.510
How do you see the repo evolving over, say, the next 5 years? What components do you think will be in there? What what won't be, maybe? So I think,

545
00:40:54.830 --> 00:40:58.770
eventually, what we want to have is to have the wallet be a separate

546
00:40:59.070 --> 00:41:04.095
repository, and it uses the interface exposed by lib Bitcoin kernel or whatever

547
00:41:04.714 --> 00:41:05.775
the the node

548
00:41:06.075 --> 00:41:21.404
part stuff remains. And we've we've actually observed this with the GUI kind of, where the where all the work on the GUI is actually occurring in a different repository where, you know, it has its own issues, has its own pull requests. And that just that also makes it easier to keep track of,

549
00:41:21.704 --> 00:41:23.085
what's going on and,

550
00:41:23.464 --> 00:41:25.940
makes it easier for people who care about the GUI to,

551
00:41:26.900 --> 00:41:27.880
work on it.

552
00:41:28.579 --> 00:41:45.430
Same thing I expect to happen to the wallet and maybe some other components of Bitcoin Core as well. So as we we break it up a little bit so that, you know, people can focus on the things that they care about without, you know, having things get lost in a 100 PRs of of something completely different.

553
00:41:46.930 --> 00:41:49.110
And yeah. So I I expect that there will be,

554
00:41:49.650 --> 00:41:54.505
a a wallet repo in the future once we get, you know, a lib Bitcoin kernel or multiprocess,

555
00:41:55.685 --> 00:41:56.185
implemented.

556
00:41:57.045 --> 00:42:01.420
Do you mind if I try something? Absolutely. Yeah. How many people here run a Bitcoin node?

557
00:42:02.599 --> 00:42:05.980
Great. How many people here, use the Bitcoin GUI?

558
00:42:07.175 --> 00:42:10.155
K. How many people here use the Bitcoin Wallet?

559
00:42:10.694 --> 00:42:15.515
Bitcoin Core Wallet? K. Good number. How many people here run a transaction index?

560
00:42:16.760 --> 00:42:17.260
K.

561
00:42:17.720 --> 00:42:22.460
How what's another good optional thing? Block filter index? Yeah. Who runs a block filter index?

562
00:42:22.895 --> 00:42:28.194
Okay. Few people. Right? So all these Sorry. Does anyone configure their mempool differently from defaults?

563
00:42:29.454 --> 00:42:30.435
One one thing. You

564
00:42:31.135 --> 00:42:33.620
you you you all have to come talk to Gloria afterwards.

565
00:42:33.920 --> 00:42:41.525
We do not know anybody who does this, and it'd be really good to know what you're putting in. And we'll talk about, like, maybe why you really have introduced a vulnerability for yourself by doing so. So yeah.

566
00:42:42.484 --> 00:42:58.760
I'd like to repurpose the remainder of this panel to just call the audience about what features they actually Yeah. No. Well, so to bring it back to what what these guys are talking about and I think this too, is that we are shipping a lot of code onto your computers that you're not running, and we would like to give you the minimal possible thing that's going to do what you're actually using.

567
00:42:59.285 --> 00:43:02.185
Like, probably most of you said you're running a node which is, like, tremendous,

568
00:43:02.485 --> 00:43:09.720
but then all the other things were really a little bit more specialized and what would be really good is if we could have this thing that's just a node that you can run

569
00:43:10.020 --> 00:43:12.840
and then these other things you actually can get maybe a,

570
00:43:13.460 --> 00:43:19.474
more competition among service providers for that functionality which if we're all capitalists who here's a capitalist?

571
00:43:20.415 --> 00:43:33.660
Okay. That that's good. Most of us. So if we're you know, we think maybe that will get us a better end result, you know, eventually. So I think that that's sort of maybe the motivation for some of this. Yeah. And I also think then you can ship more versions of the GUI and wallet,

572
00:43:34.765 --> 00:43:39.425
and not have to rely on Bitcoin core releases. Who here likes dark mode?

573
00:43:40.045 --> 00:43:42.145
Yeah. Maybe Yeah. Dark mode faster.

574
00:43:43.000 --> 00:43:48.200
Luke, you look like you wanted to jump in there and say something. Yeah. I just want to point out that I disagree with,

575
00:43:49.560 --> 00:43:50.460
Gloria and

576
00:43:51.125 --> 00:43:54.025
Jeremy in that that I think it would be ideal if

577
00:43:54.325 --> 00:43:56.985
every user decided their own policies for themselves.

578
00:43:57.685 --> 00:43:59.945
We have defaults, but they really

579
00:44:00.299 --> 00:44:04.079
shouldn't be used as some kind of consensus rules. Relying on them to be

580
00:44:04.380 --> 00:44:06.240
identical across the network is

581
00:44:06.859 --> 00:44:10.675
insecure and really should be considered a security risk in general.

582
00:44:11.775 --> 00:44:17.215
So I I think that there is, like, you know, the the difference, of what we're saying would be, like, imagine you have your,

583
00:44:18.440 --> 00:44:23.580
your wallet dot dot file and the setting that you choose is to make it readable by anybody on the network,

584
00:44:23.960 --> 00:44:25.000
you know, and and, like,

585
00:44:25.415 --> 00:44:42.600
like, that would be if you're, like, putting if you're selecting the folder for your wallet that that is like a shared open public file, like, that would be an insecure setting. Right? And then and then for consensus, there are things that are similar where if you, like, pick the really bad parameter, like, you know, or even for policy that our implementations just can't handle those parameters.

586
00:44:43.275 --> 00:44:46.415
To a large extent, do you avoid policy settings like that?

587
00:44:46.795 --> 00:44:53.440
Oh, I that's why it's configurable. Right? We have, like, startup options for you to change it. But, like, you know yeah. You're

588
00:44:53.980 --> 00:44:56.560
right. Feel free to use your config options,

589
00:44:57.020 --> 00:44:59.599
but we try to make the default as safe as possible.

590
00:45:00.305 --> 00:45:02.805
Like, right now, though, it's it's kinda hard to

591
00:45:03.985 --> 00:45:09.130
change your own options. You have to, you know, make the bitcoin.com file and know what,

592
00:45:09.609 --> 00:45:12.990
how to format the lines and put all the right options there.

593
00:45:14.490 --> 00:45:16.670
At least, you know, if you're using the GUI,

594
00:45:17.375 --> 00:45:24.035
there's almost no way to change any of, like, your relay options from within the GUI itself. So it's

595
00:45:24.540 --> 00:45:30.480
Like, why not? It does have several GUI options for that. Hopefully, it'll eventually get in the core. There's a few people

596
00:45:31.100 --> 00:45:32.960
There's some work there that

597
00:45:33.305 --> 00:45:36.125
no one has reviewed. None of them are using the GUI now.

598
00:45:37.865 --> 00:45:38.365
True.

599
00:45:38.905 --> 00:45:40.525
So with the remaining 3 minutes,

600
00:45:40.825 --> 00:45:43.005
I thought that maybe we could turn to

601
00:45:44.990 --> 00:45:56.525
ways that you guys think we might be able to grow the developer ecosystem at Bitcoin Core and just increase the health of of the project. So I'll just open it up to the group if there's anything in particular you think we could do.

602
00:45:58.190 --> 00:46:02.610
Yeah. I have a few ideas. If there's anyone in the audience that's interested

603
00:46:03.070 --> 00:46:03.570
in

604
00:46:03.870 --> 00:46:07.570
contributing to Bitcoin Core and maybe doing it full time in the future.

605
00:46:08.654 --> 00:46:11.474
There's this great thing called PR Review Club.

606
00:46:11.775 --> 00:46:12.515
It's bitcoincore.reviews.

607
00:46:13.454 --> 00:46:17.395
We do a weekly meeting where we pick a Bitcoin Core PR,

608
00:46:17.930 --> 00:46:18.590
and there's

609
00:46:19.130 --> 00:46:19.870
a host.

610
00:46:20.330 --> 00:46:22.030
It's not always me.

611
00:46:22.810 --> 00:46:26.670
There's a host that will come up with a list of notes as well as questions.

612
00:46:27.225 --> 00:46:31.085
So you kind of get an opinionated tour through this area of the code base

613
00:46:31.465 --> 00:46:40.310
and hopefully walk through some questions that start to build up your mental model of what adversarial thinking looks like when you're reviewing a PR in Bitcoin Core.

614
00:46:40.930 --> 00:46:43.510
And, you know, hopefully, as you've

615
00:46:43.955 --> 00:46:51.415
done you know, maybe you could do, like, 5 to 10 of these review clubs, you've gotten a good breadth of different areas of the code base,

616
00:46:52.290 --> 00:46:54.550
and you find one that you want to dig into

617
00:46:55.010 --> 00:47:00.390
very deep, and maybe you write a functional test that tests something that,

618
00:47:01.545 --> 00:47:06.285
very specific that we we don't have coverage for yet or a unit test or whatever it is.

619
00:47:06.825 --> 00:47:16.910
And then you and then you look through the issues and you find there are many features and bugs in that particular area of the code base that we don't have enough people to to work on.

620
00:47:17.450 --> 00:47:17.950
Anyway,

621
00:47:18.265 --> 00:47:20.285
all I wanted to do was show prreviewclub,

622
00:47:21.145 --> 00:47:22.444
Bitcoin Core dot reviews.

623
00:47:23.625 --> 00:47:29.060
I guess I'll be annoying again and just say, who here, if there were not an obstacle to it, would like to be a Bitcoin core developer?

624
00:47:30.320 --> 00:47:30.820
Okay.

625
00:47:31.280 --> 00:47:37.635
You know, come find us and, like, tell us what the obstacle is that might be stopping you from doing that, and, like, we'll try and find a pathway to, like,

626
00:47:38.175 --> 00:47:40.035
making you, you know, do that thing.

627
00:47:41.299 --> 00:47:49.160
And for what it's worth, I think there's a lot of funding out there at this point. There's probably more funding out there than you think, and and it's it's just been so fantastic to see companies

628
00:47:49.475 --> 00:47:55.895
in Bitcoin step up and and provide those resources. So if you're kind of on the margin, if you wanna get involved,

629
00:47:56.835 --> 00:48:02.680
really do consider it getting into touch with any of us, and we can try and point you in the right directions.

630
00:48:02.980 --> 00:48:03.220
But,

631
00:48:03.780 --> 00:48:13.855
it's a really great time to be a Bitcoin developer. So, so so please consider it. And, I would just say you don't have to be smart. You just have to keep on trying. Absolutely. Persistence is totally underrated.

632
00:48:14.715 --> 00:48:16.175
We can always use more reviewers.

633
00:48:16.660 --> 00:48:23.880
Always use more You don't necessarily need to be able to code, but if you can read code reading code is very different from writing code. So

634
00:48:24.180 --> 00:48:36.550
more reviewers is great. I think, you know, it's worth mentioning. People don't often acknowledge that the the main bottleneck in Bitcoin Core is is getting suitable review because nobody wants to merge code that, hasn't been scrutinized, hasn't hasn't, you know,

635
00:48:37.090 --> 00:48:40.930
been analyzed by a lot of people working on the project. So get involved,

636
00:48:41.825 --> 00:48:51.570
and and there are a number of ways you can review. You can just download the code and run it and build it. You don't, you know, even necessarily have to, to try and understand the code if you're doing something to add to the process.

637
00:48:52.670 --> 00:48:59.585
So great. We're out of time. Well, we've got oh, yeah. We're okay. Now we're going up on the time. We're out of time. Number go up. Time go

638
00:49:00.765 --> 00:49:07.105
up. I wanna thank all of our wonderful panelists. I wanna thank you guys for for coming to this. I hope it was, enjoyable.

639
00:49:08.710 --> 00:49:09.210
Thank

640
00:49:12.710 --> 00:49:14.329
you. Right. The glider? Yep.

641
00:49:35.395 --> 00:49:37.255
Alright. Let's go ahead and get started.

642
00:49:42.800 --> 00:49:44.660
So my name's d plus plus

643
00:49:45.040 --> 00:49:48.100
and the topic for today's panel is decentralized

644
00:49:48.640 --> 00:49:49.140
exchanges

645
00:49:49.600 --> 00:49:50.875
or DEX

646
00:49:51.275 --> 00:49:51.855
for short.

647
00:49:53.355 --> 00:49:55.375
Now I'm thrilled to be here on stage

648
00:49:55.675 --> 00:49:57.055
at Bitcoin Miami

649
00:49:57.595 --> 00:49:58.095
2022.

650
00:49:59.039 --> 00:50:02.260
Specifically, I'm thrilled to be on the best stage,

651
00:50:02.720 --> 00:50:04.500
the open source stage.

652
00:50:05.839 --> 00:50:06.339
Yeah.

653
00:50:09.224 --> 00:50:11.404
This is the real Bitcoin stage.

654
00:50:14.265 --> 00:50:17.164
Just very quickly about me, I'm a Bitcoin educator.

655
00:50:17.860 --> 00:50:21.960
My aim is to bring simple education to the next 1,000,000,000 folks.

656
00:50:22.580 --> 00:50:31.375
I have I have a background in computer engineering. I've worked as an entrepreneur and a coding professor before I devoted my life to Bitcoin maximalism

657
00:50:31.835 --> 00:50:33.055
and Bitcoin education.

658
00:50:33.900 --> 00:50:35.920
Now before we dive into the questions

659
00:50:36.220 --> 00:50:37.359
on today's topic,

660
00:50:37.900 --> 00:50:41.680
I'd love it if our lovely panelists could quickly introduce themselves.

661
00:50:42.645 --> 00:50:46.905
Hi. I'm Chris Stewart. I'm the founder of a company called Shirdbits, and I'm here for spicy takes.

662
00:50:47.445 --> 00:50:52.810
Hey. I'm Joseph Tietex, zerozef on Twitter, and I'm a analyst and economist at Trezor.

663
00:50:53.830 --> 00:50:55.850
Hey. I'm Liz. I work on mempoolspace,

664
00:50:56.310 --> 00:51:04.325
Bisq, Bitcoin TV, and a bunch of other projects. It's great to be here. Hey there. Daniel Buckner. I work at TBD at Block, on decentralized identity protocols.

665
00:51:06.625 --> 00:51:07.685
Awesome. So

666
00:51:08.660 --> 00:51:11.000
speaking of block and TV decks,

667
00:51:11.460 --> 00:51:13.400
Daniel, this question is for you.

668
00:51:14.740 --> 00:51:16.200
I've gone through the white paper.

669
00:51:16.515 --> 00:51:23.015
I I really think Satoshi was onto something with this whole 6 page white paper thing. Can we make that a standard,

670
00:51:23.475 --> 00:51:24.295
just generally?

671
00:51:25.040 --> 00:51:28.740
That'd be great. But that said, can you explain like I'm 5?

672
00:51:29.119 --> 00:51:31.280
Distill it into something that,

673
00:51:31.840 --> 00:51:39.865
maybe explain like I'm 4. What is tbdex? Can you walk me through it? Yeah. Absolutely. So it's a decentralized value exchange protocol, a generalized protocol,

674
00:51:40.485 --> 00:51:48.660
where you can really exchange any things of value between participants who can locate each other using, a protocol based on distributed systems and decentralized identity.

675
00:51:49.194 --> 00:51:58.734
The first type of value exchange we're focused on is fiat on and off ramps and being able to get, you know, people to exchange Bitcoin, you know, for dollars or whatever the local currency is.

676
00:51:59.800 --> 00:52:01.340
The interesting thing about

677
00:52:01.640 --> 00:52:10.585
the exchange itself is that it it gives the ability to transfer reputation and trust. So in in a way that's standards based. So we use centralized identifiers, verifiable credentials.

678
00:52:11.285 --> 00:52:18.640
Doesn't mean that participants have to require reputation and trust if they don't want to. It's completely optional. But if they do require something,

679
00:52:19.260 --> 00:52:24.224
they they can totally do so. So, you know, if it's a bank, they probably will require some sort of credential.

680
00:52:24.925 --> 00:52:29.585
If it's not, if it's like a peers, they they might not. They might just require peer reputation.

681
00:52:30.925 --> 00:52:34.070
An interesting thing about the protocol is that it's actually useful even beyond

682
00:52:34.530 --> 00:52:42.474
the stage of fiat. So imagine we're in a hyper Bitcoinized world, and you wanna buy a car with Bitcoin. Well, it turns out that this value exchange protocol,

683
00:52:42.934 --> 00:53:13.455
can cover that use case in the sense that you might be able to locate and find, know, all the cars available out there. And then you wanna know that the car, you know, that you're buying is backed by you know, it's it's via pink slip. Right? It's valid, and the person has money in their account. Right? So these are things that you can exchange as reputational proofs, in the process. And the last thing I'll note is that the protocol is built on a generalized decentralized app platform. So this is kind of the first app we're building on top of it, and we'll have more news about that platform,

684
00:53:13.835 --> 00:53:14.655
in the coming

685
00:53:15.115 --> 00:53:16.235
months. Okay.

686
00:53:16.555 --> 00:53:22.980
Let me say it back to you. Yeah. So TV decks is a messaging protocol Mhmm. That I can use to discover

687
00:53:23.359 --> 00:53:23.859
people,

688
00:53:25.040 --> 00:53:26.500
or financial institutions.

689
00:53:27.280 --> 00:53:27.780
So

690
00:53:28.640 --> 00:53:34.345
if I'm using it to discover other people, could it be used in a peer to peer sort of local Bitcoin

691
00:53:34.805 --> 00:53:40.619
type of way? Absolutely. Yeah. So the the protocol the use of decentralized identifiers in the protocol enables you to find

692
00:53:41.000 --> 00:53:44.859
any participants in whatever type of value exchange you wanna do,

693
00:53:45.400 --> 00:53:48.300
whether it's currency or just any other type of good,

694
00:53:48.785 --> 00:53:51.925
and then be able to communicate with them privately, securely, and encrypted,

695
00:53:52.464 --> 00:53:55.605
exchange reputational proofs, and sort of come to agreement about,

696
00:53:55.930 --> 00:53:58.670
you know, selling and buying of of any type of goods.

697
00:53:59.290 --> 00:54:00.750
Okay. So I can discover

698
00:54:01.210 --> 00:54:02.910
other people. So let's say,

699
00:54:03.210 --> 00:54:08.925
Alice and Bob Mhmm. Our friends, Alice and Bob meet by way of the TB DEX protocol,

700
00:54:09.305 --> 00:54:11.805
so they can transact Bitcoin, of course.

701
00:54:12.809 --> 00:54:15.869
What other types of things can Alice and Bob do

702
00:54:16.329 --> 00:54:17.230
now that they've

703
00:54:17.609 --> 00:54:19.309
found each other? It's so romantic.

704
00:54:21.365 --> 00:54:22.665
This question is for Chris.

705
00:54:23.204 --> 00:54:24.665
What else could they do now?

706
00:54:26.645 --> 00:54:36.000
Yeah. And once they've they've found each other, they they can build things like discrete log contracts. But what I what I'd have to say to the audience is, what I think Bitcoiners get right

707
00:54:36.300 --> 00:54:39.200
is, they're really focused on censorship resistant money.

708
00:54:39.695 --> 00:54:48.650
And I think we all in this room agree that that's kind of one of the core principles of Bitcoin. You can spend your Bitcoin how you want to. What I think Bitcoiners get wrong is,

709
00:54:49.049 --> 00:54:54.109
they stop at censorship resistant money and don't advocate for censorship resistant financial markets.

710
00:54:54.525 --> 00:55:01.505
What my understanding of TBD is and Bisc, which Wiz works on, is that's what they're providing is censorship resistant

711
00:55:01.970 --> 00:55:04.530
financial markets where people can trade different things.

712
00:55:04.930 --> 00:55:07.030
Bitcoiners sometimes get up in arms

713
00:55:07.410 --> 00:55:13.165
about what's being traded on these censorship resistant financial markets because it's a token they don't like

714
00:55:13.465 --> 00:55:20.105
or it's economic activity that they aren't fans of. But, you know, if something's censorship resistant, you can't pick and choose,

715
00:55:20.670 --> 00:55:31.134
what you like and what you don't like. It's a platform either everybody can use for everything or nobody can use because it's gonna get coerced and co opted by a government or a large corporation.

716
00:55:32.954 --> 00:55:39.990
Okay. So then on that topic of censorship resistance, I feel like we're all gonna have something to say on this and it's important to everyone here.

717
00:55:40.450 --> 00:55:43.990
But, Wiz, how does censorship resistance play into

718
00:55:44.450 --> 00:55:44.950
BISC?

719
00:55:46.315 --> 00:55:47.435
Yeah. That's a good question.

720
00:55:48.075 --> 00:55:49.055
Bisc is basically

721
00:55:49.355 --> 00:55:49.855
a

722
00:55:50.155 --> 00:56:01.440
decentralized exchange platform, which means that it's a peer to peer network running over Tor where everyone running the disk node software on their computer connects to each other and exchanges the order books.

723
00:56:01.980 --> 00:56:08.045
And this allows users to make offers or take offers and, connect to each other. And because there is no,

724
00:56:08.825 --> 00:56:09.325
centralized

725
00:56:09.705 --> 00:56:10.845
servers anywhere,

726
00:56:11.465 --> 00:56:16.600
it just, you know, achieves censorship resistance by being decentralized in nature.

727
00:56:16.980 --> 00:56:21.320
There's no, Bisc Office or Bisc Company to shut down. It's more of a trade protocol.

728
00:56:25.385 --> 00:56:28.204
Okay. So can it be stopped? Can it be shut down?

729
00:56:29.944 --> 00:56:30.765
I guess if

730
00:56:31.590 --> 00:56:32.810
Tor had some issues,

731
00:56:33.190 --> 00:56:36.230
which has happened in the past, sure. I mean, Bisc is,

732
00:56:37.030 --> 00:56:39.450
also governed by a a DAO to

733
00:56:40.355 --> 00:56:44.455
manage the parameters of the network like, what the trading fees are and like this

734
00:56:45.475 --> 00:56:46.135
and, other,

735
00:56:46.595 --> 00:56:48.215
limits or payment methods.

736
00:56:48.630 --> 00:56:50.630
These are all controlled by the DAO, which has a,

737
00:56:51.990 --> 00:56:54.410
kind of like a, unique governance structure.

738
00:56:55.349 --> 00:56:58.665
Basically, they have their own, shitcoin token where they do the voting.

739
00:56:59.365 --> 00:57:03.545
And, they DAO stakeholders can vote to change certain parameters,

740
00:57:04.380 --> 00:57:08.800
but the DAO stakeholders are not known. And so because of their,

741
00:57:09.500 --> 00:57:13.765
relative anonymity and the decentralized nature, it's not easily

742
00:57:15.825 --> 00:57:16.785
censorable. Okay.

743
00:57:17.664 --> 00:57:19.845
Do you think the shitcoin token is really necessary?

744
00:57:21.510 --> 00:57:22.870
No. Personally, I don't.

745
00:57:23.350 --> 00:57:26.490
I don't I don't use it. I I'm a Bitcoiner, you know,

746
00:57:26.790 --> 00:57:37.265
and and you don't need to use their shit coin to use this. You could just pay the trade fees in in good old sats and works great. It's only if you really wanna participate in the governance of the network,

747
00:57:37.660 --> 00:57:40.640
which is mostly just the contributors anyway at the end of the day.

748
00:57:41.580 --> 00:57:49.965
So I'm curious for the audience. How many of you are customers of Bisk? How many of you are passionate about peer to peer Bitcoin exchange generally?

749
00:57:51.065 --> 00:57:53.805
How many of you find local Bitcoiners in your area

750
00:57:54.520 --> 00:57:55.740
and exchange cash

751
00:57:56.040 --> 00:57:57.740
for Bitcoin? And how many of you

752
00:57:58.360 --> 00:58:03.500
earn Bitcoin, get paid in Bitcoin, which is one of the best ways of getting KYC free Bitcoin?

753
00:58:05.685 --> 00:58:06.185
So

754
00:58:06.645 --> 00:58:10.825
p speaking of KYC, Wiz, I'm sure you're gonna have a hot take on this as well.

755
00:58:12.510 --> 00:58:15.490
You know, there is illicit activity happening on bitcoin

756
00:58:16.030 --> 00:58:18.530
and the illicit activity is KYC.

757
00:58:19.515 --> 00:58:20.335
Know your customer.

758
00:58:22.395 --> 00:58:25.695
Is KYC gonna be necessary on decentralized exchanges?

759
00:58:26.830 --> 00:58:34.610
No. If it's, peer to peer exchange, then, the only two people who need to know about each other are the the two counterparties of the transaction,

760
00:58:35.645 --> 00:58:39.425
because it's it's purely decentralized in nature and there is no regulator,

761
00:58:40.765 --> 00:58:50.190
enforcing any rules. It's purely peer to peer. So, it's kinda like Craigslist if you post an ad to sell your sofa and someone buys it. The only 2 people who know about the details of that transaction

762
00:58:50.665 --> 00:58:55.785
are the buyer and the seller, and that's exactly how it works on DISC. The only person you send your,

763
00:58:56.105 --> 00:59:03.190
bank details, for example, would be to the other guy, and it's not in either of those parties' interest to snitch on each other.

764
00:59:03.650 --> 00:59:08.975
So, it achieves a very nice level of privacy and, also censorship resistance this way.

765
00:59:10.075 --> 00:59:17.619
Can Yeah. I just wanna chime in here because I think it's, like, a really important point, what Wiz is bringing up here is, like, you can start with something that's,

766
00:59:18.160 --> 00:59:19.220
censorship resistant

767
00:59:19.520 --> 00:59:46.685
and doesn't have AML KYC at the base layer, and you can always add it on top if that's a feature that is required. And I think that's an acceptable trade off. But if you bake in, like, all these, like, regulations at the base layer, you can never have something that's no AML KYC on top of that. So getting these, like, levels of the stack engineered correctly are really important, and that's, like, kind of one of the core innovations of Bitcoin, in my opinion, is we have this censorship resistant money, this strictly a proto computer protocol,

768
00:59:46.985 --> 00:59:58.870
and we can build, you know, financial institutions on top of it. You know, many financial institutions have been super successful built on top of Bitcoin, but we can't go, the opposite way. So when thinking about designing these things, it's super important

769
00:59:59.315 --> 01:00:08.775
to get the base level right without, you know, these these things baked in. And if you wanna add them on top, go for it. That's my 2 stats on that.

770
01:00:10.579 --> 01:00:13.400
Alright. Why don't we back up? We've talked about tbdex,

771
01:00:14.260 --> 01:00:18.035
but why don't we start with why? Why decentralized

772
01:00:18.655 --> 01:00:19.155
exchanges?

773
01:00:19.615 --> 01:00:20.755
Why does this matter?

774
01:00:21.055 --> 01:00:22.275
And why should we care?

775
01:00:22.734 --> 01:00:24.355
Yosef, I'd love to hear from you.

776
01:00:24.720 --> 01:00:25.319
Yeah. So,

777
01:00:25.760 --> 01:00:30.160
decentralized exchanges for me are important for three reasons. First is,

778
01:00:30.880 --> 01:00:35.675
you are actually forced to self custody our Bitcoin from the start because,

779
01:00:36.135 --> 01:00:36.795
these exchanges

780
01:00:37.175 --> 01:00:38.875
never hold your keys for you.

781
01:00:39.430 --> 01:00:39.930
And

782
01:00:40.790 --> 01:00:44.890
unfortunately, the default setting for centralized exchanges is they are the custodians,

783
01:00:45.350 --> 01:00:48.490
and people tend to not withdraw their points.

784
01:00:48.984 --> 01:00:54.444
So that's the first one, self custody. The second one is you actually get to use Bitcoin as a protocol

785
01:00:54.984 --> 01:01:01.070
because on centralized exchanges, you usually just buy some kind of weird financial derivative

786
01:01:01.530 --> 01:01:02.030
that's

787
01:01:02.490 --> 01:01:02.990
maybe,

788
01:01:03.850 --> 01:01:09.745
settable in, like, physical Bitcoin if you withdraw, but most people don't withdraw from these exchanges.

789
01:01:10.205 --> 01:01:12.705
So they don't actually get to use Bitcoin, whereas

790
01:01:13.005 --> 01:01:13.665
at this,

791
01:01:13.965 --> 01:01:14.765
you use,

792
01:01:15.165 --> 01:01:17.700
multisig. You are confronted with,

793
01:01:18.260 --> 01:01:21.960
like handling your private keys and with minor fees and stuff.

794
01:01:22.420 --> 01:01:25.720
And the third one is the privacy aspect. There is no KYC.

795
01:01:26.285 --> 01:01:31.424
Only the party knows some of your details, but there is no reason to snitch us with that.

796
01:01:31.805 --> 01:01:34.305
And, yeah, KYC is this whole,

797
01:01:34.605 --> 01:01:40.970
like like we said, that's the early security. That's the thing because it stays with you. And once you KIC yourself,

798
01:01:41.430 --> 01:01:43.609
it's hard to get rid of because

799
01:01:44.305 --> 01:01:45.204
these exchanges

800
01:01:45.905 --> 01:01:46.405
employ,

801
01:01:47.265 --> 01:01:49.125
like the chain analytic companies

802
01:01:49.744 --> 01:01:54.930
and privacy in Bitcoin is hard. And if you, like, dox yourself at the start,

803
01:01:55.549 --> 01:01:56.930
it's very hard to,

804
01:01:57.789 --> 01:01:58.690
correct that.

805
01:02:00.645 --> 01:02:13.410
Yeah. That's a great topic actually of privacy in general. I'm I'm curious for Wiz. What kind of privacy information would I be concerned about, say, leaking to my counterparty if I'm exchanging peer to peer on this?

806
01:02:14.110 --> 01:02:16.770
Yeah. That's a good question. Really depends on the payment method.

807
01:02:17.230 --> 01:02:18.210
The most private

808
01:02:18.605 --> 01:02:19.345
might be,

809
01:02:20.285 --> 01:02:23.425
meeting in person at the Starbucks and just handing cash to someone.

810
01:02:24.685 --> 01:02:25.485
There's also,

811
01:02:25.885 --> 01:02:31.089
US Postal money order. You can like physically mail a money order to someone for like $1,000,

812
01:02:31.869 --> 01:02:39.335
and, the post office website allows you to verify that the money order serial number and the amount everything was cashed or not cashed. So you can,

813
01:02:40.455 --> 01:02:41.515
you know, verify

814
01:02:42.720 --> 01:02:51.540
without going through the banking system, but also be able to send the money. Of course, if you use a payment method like a bank transfer, then you'll need to send your bank account details to the counterparty,

815
01:02:52.455 --> 01:02:52.955
but

816
01:02:53.735 --> 01:02:57.195
it's not really in the other guys interest to

817
01:02:58.775 --> 01:03:03.569
save those or docs you for any reason. So, there's different trade offs with different payment methods.

818
01:03:03.950 --> 01:03:09.650
Some of them are faster or slower, some of them are more expensive or cheaper, some of them are more private or less private.

819
01:03:10.664 --> 01:03:13.005
And it also depends on the country. If you're,

820
01:03:13.625 --> 01:03:16.845
you know, in Japan, for example, you can actually do anonymous bank transfers.

821
01:03:17.870 --> 01:03:20.530
If you're in the US, the postal money order is excellent,

822
01:03:20.990 --> 01:03:27.525
but every country has their own localized payment method, so it really depends on your threat model, I guess.

823
01:03:31.505 --> 01:03:33.605
So cash in the mail, cash in person.

824
01:03:35.025 --> 01:03:37.390
I mean, I don't own any Bitcoin, but if I did,

825
01:03:37.869 --> 01:03:45.915
a lot of people in the crowd do, though. It's, you know, if I did, I would use the, the US postal money order system on disk. It's, it's pretty cool because

826
01:03:46.455 --> 01:03:50.075
it's basically how people sent money to each other before banks were,

827
01:03:50.455 --> 01:03:51.515
what they are today

828
01:03:52.030 --> 01:03:56.130
And, because the post office has this really cool website where you can verify everything,

829
01:03:57.310 --> 01:04:03.684
you know, no one can claim that you didn't send them the money or everything. Like, it just shows what post office it was cashed at and everything. So it's really,

830
01:04:04.944 --> 01:04:05.825
well built for,

831
01:04:06.385 --> 01:04:08.085
Bisc users in the United States.

832
01:04:09.570 --> 01:04:17.750
I noticed that strike is one option. What kind of privacy would I be expected to leak, say, if I were to use strike to pay on Bisk?

833
01:04:19.805 --> 01:04:21.585
I guess strike is is

834
01:04:23.725 --> 01:04:31.869
a newer payment option. I haven't I don't have a strike account, so I've never used it. But if, if that's true then I would assume it works like any other,

835
01:04:32.510 --> 01:04:33.410
payment method.

836
01:04:35.345 --> 01:04:40.805
I mean, obviously, Stripe, you need to connect your bank account, but the counterparty counterparty wouldn't be able to see that.

837
01:04:41.424 --> 01:04:48.760
Right. I I believe they receive fiat on the other side of that trade. So that's a great, I think, payment method that now exists on bisque.

838
01:04:49.860 --> 01:04:56.415
I've got, like, a 1000 questions for Daniel, and I think we're probably not gonna have enough time. We'll probably have to talk later.

839
01:04:56.795 --> 01:04:57.295
But

840
01:04:57.835 --> 01:05:00.735
I'm curious to hear more about TB decks.

841
01:05:01.500 --> 01:05:03.120
My understanding is that

842
01:05:03.500 --> 01:05:06.720
TB DEX cannot exist without some kind

843
01:05:07.100 --> 01:05:08.320
of verifiable credential,

844
01:05:08.780 --> 01:05:14.845
some kind of system of trust. Right? And the reason for that is because Bitcoin, of course, is trustless,

845
01:05:15.545 --> 01:05:17.485
but the fiat system is not.

846
01:05:17.940 --> 01:05:22.760
And, when you're exchanging with another person, there is some level of trust that's going to be required.

847
01:05:23.060 --> 01:05:24.040
Now, my understanding

848
01:05:24.500 --> 01:05:25.480
is that tbdex

849
01:05:25.780 --> 01:05:27.080
is predicated upon

850
01:05:27.565 --> 01:05:28.705
decentralized identity

851
01:05:29.085 --> 01:05:31.025
or DID for short.

852
01:05:31.805 --> 01:05:35.905
And again, if you could explain like I'm 5 or preferably explain like I'm 4,

853
01:05:36.280 --> 01:05:39.100
what is DID, and how is it used by DEX?

854
01:05:39.720 --> 01:05:41.160
Yeah. So DID is,

855
01:05:41.560 --> 01:05:44.615
the standard that has, you know, gone through international standardization

856
01:05:44.995 --> 01:05:45.655
at W3C.

857
01:05:46.675 --> 01:05:48.695
We're using it. A lot of other companies are.

858
01:05:49.155 --> 01:05:57.110
It allows you to create identifiers that are wholly yours that you can rotate keys under and you can prove. So unlike an email address, you actually own your identifier,

859
01:05:58.370 --> 01:06:10.125
and can have the full route ability to, like, be to send messages to someone. You can have multiple identifiers so and we encourage that. It's not like one identifier and you keep using it everywhere to correlate yourself. Like, you wanna

860
01:06:10.690 --> 01:06:11.509
retain privacy.

861
01:06:11.970 --> 01:06:40.734
And then the other big component is verifiable credentials, which is sort of like a data signing standard, basically, for proofs. And it could be proofs of anything. Right? You can prove a diploma or whatever. In this case, you might prove KYC details or reputational proofs if it's like peer to peer and you don't need like a KYC component. It's just modeling it with a standard. So whatever your form of reputation or proof is, we're trying to use these these standardized forms for it. That's really interesting because in Bisc there is no identity system. There is no reputation system.

862
01:06:41.434 --> 01:06:42.974
The Bisc DAO basically

863
01:06:44.700 --> 01:06:50.000
guarantees the trades if you were to get scammed or something, which, because the security deposit system

864
01:06:50.300 --> 01:06:51.520
is financially disincentivized.

865
01:06:52.105 --> 01:06:54.845
So, in Bisc, there is no identity system because we want

866
01:06:55.145 --> 01:06:56.605
privacy, we want anonymity.

867
01:06:57.545 --> 01:07:03.250
You know, you could create, you know, create a new Bisc account for every trade and or you you could use the same one. There is no,

868
01:07:04.530 --> 01:07:05.030
identity.

869
01:07:05.730 --> 01:07:23.150
Yeah. I think there's a misnomer, right, with identity. People you you hear the word identity people get really scared. Right? Identity just means an identifier you use. It could be a single use identifier, like a burner. Right? You can make a DID in a second. Has no reputation, you're just using it to do the messaging exchange, and that's kinda how how we work it.

870
01:07:23.850 --> 01:07:32.065
And so identity, you have an identity, but you may have many facets of your identity. You may have millions of identifiers, right? Every website you use a new one.

871
01:07:32.444 --> 01:07:37.010
So so we believe in exactly the same thing. It's just a standardized means of doing of locating,

872
01:07:37.470 --> 01:07:41.730
people if you needed to in a recurring fashion. The other thing is we wanna make

873
01:07:42.030 --> 01:07:56.540
on and off ramping to existing financial institutions easier only because it's the world we live in today. Like, I'm I'm a big you know, I've been in Bitcoin for 10 years. Like, I, you know, want that as much as anyone. But the reality on the ground is that we need to get more people into Bitcoins. We have to bring

874
01:07:56.920 --> 01:08:03.695
the world with us and that's part of the reason why we added these features that are totally optional so that those institutions

875
01:08:03.995 --> 01:08:04.735
can start

876
01:08:05.355 --> 01:08:07.855
helping by participating in the system,

877
01:08:08.315 --> 01:08:10.815
and increasing the number of people who have Bitcoin.

878
01:08:11.550 --> 01:08:13.070
Yeah. So so my question is,

879
01:08:13.950 --> 01:08:14.450
would,

880
01:08:14.910 --> 01:08:15.410
DBD,

881
01:08:16.750 --> 01:08:18.690
be compatible with stuff like FIDO2?

882
01:08:18.990 --> 01:08:19.490
Like,

883
01:08:20.005 --> 01:08:21.945
there's this open standard for

884
01:08:22.565 --> 01:08:25.145
online identification. It's very fast

885
01:08:25.685 --> 01:08:30.050
identification online. Yeah. And Tresor is, like, supports that.

886
01:08:30.510 --> 01:08:31.170
So I could

887
01:08:31.630 --> 01:08:41.485
prove my identity, like, like, credentials, not my real identity, but I'm the same person like the last time they've signed in some kind of cryptographic message.

888
01:08:41.864 --> 01:08:55.395
Yeah. So I actually I worked on some FIDO stuff while I was at Microsoft. You know, I was on the identity security team. FIDO is is great standard. We're we were looking at towards the end of my tenure there doing extensions so that your DIDs are backed by keys you own,

889
01:08:55.775 --> 01:08:57.795
can go through that same existing standard.

890
01:08:58.175 --> 01:09:15.655
FIDO, right now, the way it's designed, it sort of assumes that you're using a single key, just a non robable key, and the PKI source is like a centralized entity. So you have, like, a key with a website and you have to go register it with them. So it's kind of not designed to be decentralized. You can extend it though.

891
01:09:15.955 --> 01:09:28.770
I also we did extend OpenID Connect so that it uses DIDs instead of centralized accounts. So there's there's ways that we can uplift these things into more decentralized forms. Yeah. Yeah. And I wanted to ask if I may, like,

892
01:09:29.515 --> 01:09:39.810
BISK sort of uses reputation because there's the account age. Is that right? And number of trades, I believe, and do you tend to choose, like, these accounts first? It depends on the payment method. Right? So,

893
01:09:40.130 --> 01:09:41.350
I think in the US,

894
01:09:41.730 --> 01:09:49.575
there's a payment method called Zelle, which is, I guess the common way to quickly send money between banks in the US. And

895
01:09:50.195 --> 01:09:54.775
because there is a very, small amount of chargeback risk, it's not 0,

896
01:09:55.460 --> 01:09:57.079
they implemented a

897
01:09:57.619 --> 01:09:59.239
small limit for new accounts

898
01:09:59.619 --> 01:10:12.840
and once you trade a few times, that with other counterparties who were signed, then they'll sign your account to build this, kind of like decentralized level of trust. They're not signing your identity so much as they are your the hash of your payment accounts.

899
01:10:13.460 --> 01:10:13.960
So,

900
01:10:14.340 --> 01:10:17.880
I guess, yeah, you could consider that payment accounts and identity.

901
01:10:18.895 --> 01:10:32.440
Mhmm. But, yeah, I would call that a pseudo anonymous identity. Right? Sure. Yeah. You're gonna have any identifier you have in the world. It's if it's a point of reference, really. When we talk about identifiers like email or even, you know, your at name on Twitter, it's a point of reference. So someone is able to accrue reputation

902
01:10:32.820 --> 01:10:51.930
or or use it in any way, it forms an identity. Now, let's not confuse, like, personal identity, like, you as a person with that identity. Identity just means, like, I could be a dog on the Internet, but I'm this hash of this dog. Right? So, yeah, I I think it's a scary word, but it's kind of it's a little overblown. And Yeah. Like, piggybacking off that, like, I think maybe,

903
01:10:53.050 --> 01:11:06.909
one of the ways you can think about identity is simply a public key. Right? A public key is an identity. And on a Lightning Network, for instance, you know, our identity is our public key with an IP address, and that's how how you connect. And the question I have for you is,

904
01:11:07.769 --> 01:11:12.385
how, you know, to make this a little bit more concrete, would you say that, you know, if DIDs

905
01:11:13.165 --> 01:11:15.905
should be included in the lightning spec to

906
01:11:16.364 --> 01:11:18.605
be that form of identity? Or how would,

907
01:11:19.324 --> 01:11:25.230
DIDs compare and contrast to the current form of identity on the Lightning Network which is the public key and IP address?

908
01:11:25.530 --> 01:11:39.750
Yeah. So I I do I think it would be great if if Lightning did embrace the DID spec. This spec is not actually prescriptive in terms of how you would implement a decentralized identity network. Like, when I was at Microsoft in Outblock working with Ion, which is like a layer 2 on Bitcoin to do DIDs,

909
01:11:40.369 --> 01:11:53.665
it's mostly a data model. So it's like Okay. Every type of DID method, right, you could create one for Ion, spits out the same PKI document so that everyone can like, you know, in a standard way can find the keys and routing endpoints. Like how much data?

910
01:11:54.159 --> 01:12:03.380
Not much. It's not personal identity. Like, the DIDs themselves don't have any It's like a pervy 3 byte public key is what we have on Lightning today. I'm guessing it's more than that. We're talking kilobytes, megabytes.

911
01:12:03.735 --> 01:12:13.590
Oh, oh, less, you know, maybe 2 kilobytes at max. It's just public keys and routing references. It could be decentralized your eyes to, like, how I message you. Right? You look up an ID or just, like, need that. It's like,

912
01:12:14.390 --> 01:12:39.090
the equivalent would be like DNS. Right? You look up a zone file? Sure. Right? It's that. You don't put your website in zone file. Right? So, it's really important because I think it gives efficient lookups and and locational finding that could be even better potentially than some of the construction lightning that are required because they're doing path finding Yeah. Like, liquidity and stuff. Okay. It kinda feels like, the more modern way to do, decentralized web of trust. Like, back in the day, we would have,

913
01:12:39.795 --> 01:12:42.534
key signing parties where we would meet in person

914
01:12:42.994 --> 01:12:46.614
and sign each other's PGP key. But now, it seems like maybe

915
01:12:47.560 --> 01:12:49.659
there's also gonna be the entry of

916
01:12:50.040 --> 01:12:50.540
corporations

917
01:12:51.000 --> 01:12:57.340
that will basically KYC people and sign their key for them. So, you'll have at wiz at

918
01:12:58.344 --> 01:13:00.445
Twitter for example or maybe some

919
01:13:00.824 --> 01:13:03.485
block or square. You could be wizsquare

920
01:13:04.184 --> 01:13:09.660
and that's kyseed. But if you're at wiz at bisque or something you know maybe it's not kyc,

921
01:13:11.160 --> 01:13:22.114
and depending on who signed what keys you might wanna trade with this person based on those things. Right? Yeah. That's exactly what verifiable credentials are. So, like, let's say in one context of your life use a given identifier

922
01:13:22.550 --> 01:13:32.614
and you accrue reputational trust. Like, I get a degree from an institution or something like that. Those are all verifiable credentials. Right? Like LinkedIn may soon accept these and say, oh, I can verify

923
01:13:32.995 --> 01:13:33.895
that this institution

924
01:13:34.275 --> 01:13:35.175
that has a DID

925
01:13:35.795 --> 01:13:45.610
signed this proof, and it is you who's in with zero knowledge proving that you actually are the the holder of the keys that back it. So absolutely. Yeah. So my understanding is that we're doing

926
01:13:45.990 --> 01:13:49.370
a 0 knowledge proof without the need for ZKP cryptography.

927
01:13:50.054 --> 01:13:54.955
Oh, no. I mean, so some of the controls definitely will use ZKP stuff like, I worked on a smart construction

928
01:13:55.335 --> 01:14:03.070
with, MSR colleagues, when I was at Microsoft that we are looking to implement in the community that's, yes, it's, you know, it's motor snark. Right?

929
01:14:03.530 --> 01:14:05.310
And it is a zero knowledge

930
01:14:05.715 --> 01:14:19.970
credential that you could say, like, let's say a credential of, like, 10 things you can prove in it. You could do selective disclosure where you only want to disclose a few of them. You could do predicates where you say, I'm just over this age, like, you know, range proof stuff like that. And those can be more advanced constructions of credentials.

931
01:14:20.670 --> 01:14:31.545
Well, like I said, Daniel, I'm gonna have a thousand more questions for you after. So I hope you have some time later this week. And I wanna say thank you so much to all of the panelists. Unfortunately, that's all the time we have for today.

932
01:14:32.010 --> 01:14:34.910
I'm very excited for the future of the redecentralization

933
01:14:36.090 --> 01:14:44.475
of the web, which will hopefully be using some of these exciting technologies that we discussed today and which definitely will not be some kind of

934
01:14:44.935 --> 01:14:45.435
web

935
01:14:45.975 --> 01:14:47.275
3, VC backed,

936
01:14:47.815 --> 01:14:49.115
shitcoin, dino,

937
01:14:49.575 --> 01:14:51.560
decentralized in name only block

938
01:14:52.040 --> 01:14:59.340
chain. It's going to be the real decentralized web and it's going to use Bitcoin and Bitcoin only. Yeah. Absolutely.

939
01:15:09.980 --> 01:15:11.840
They weren't joking. They really are.

940
01:15:14.620 --> 01:15:16.860
Should've brought this on. Okay. How's it going, guys?

941
01:15:17.425 --> 01:15:20.085
So just a quick shout out to the guys doing the,

942
01:15:20.545 --> 01:15:25.685
workshops at the back. It it is a little bit noisy. So if you wanna, have conversations,

943
01:15:26.460 --> 01:15:28.780
please, go on the outside because, you are

944
01:15:29.500 --> 01:15:30.880
you you really are gonna wanna

945
01:15:32.140 --> 01:15:36.705
you you really are gonna wanna hear what these these incredible people have to say today.

946
01:15:37.405 --> 01:15:44.110
I think you can come back in at 3 o'clock and use the tables to to do your your workshops and your and your hacky stuff after. So,

947
01:15:45.230 --> 01:15:54.605
just a just a note on that. So, yeah, welcome, everyone. Thank you for for joining us today. So we're gonna be talking about improving and 10xing the the Bitcoin

948
01:15:55.065 --> 01:15:58.844
development experience. I've got some amazing panelists with me today.

949
01:15:59.224 --> 01:16:01.724
So my name's Connor. I work at Spiral.

950
01:16:02.250 --> 01:16:04.110
We're focused on improving,

951
01:16:04.810 --> 01:16:05.470
the Bitcoin

952
01:16:06.010 --> 01:16:07.230
open source ecosystem,

953
01:16:08.330 --> 01:16:12.645
via a number of different initiatives, some of which we'll kinda go into detail today.

954
01:16:13.105 --> 01:16:21.020
So we'll start by just, getting to know our our panelists a little bit today. So, Steve, if you wanna start. Sure. Yeah. So I'm Steve Myers, and I'm a contributor

955
01:16:21.320 --> 01:16:25.135
contributor on the Bitcoin DevKit project. And my work is sponsored by Spiral,

956
01:16:26.094 --> 01:16:31.635
as are a bunch of other developers on our project. So, and, yeah, we'll talk about what BDK is in a bit.

957
01:16:32.320 --> 01:16:33.700
Hey. I'm, Steven Delorme.

958
01:16:34.080 --> 01:16:36.580
I hang out in the Bitcoin design community.

959
01:16:37.120 --> 01:16:41.780
I've I guess, I spend a lot of my time contributing to the Bitcoin design guide,

960
01:16:42.375 --> 01:16:45.915
and other open source design related projects in Bitcoin.

961
01:16:47.255 --> 01:16:48.795
Hey. I'm Matt Corallo.

962
01:16:49.310 --> 01:16:51.890
I work on the lightning dev kit project,

963
01:16:52.590 --> 01:16:54.610
sponsored by Spiral as well,

964
01:16:54.990 --> 01:16:56.530
or I guess work for Spiral.

965
01:16:57.125 --> 01:16:58.905
So our goal being to,

966
01:16:59.365 --> 01:17:02.505
allow people to build custom lightning nodes and lightning integrations,

967
01:17:03.445 --> 01:17:06.210
super easy, and we take all the hard work out of that.

968
01:17:07.010 --> 01:17:26.410
Okay. Okay. Awesome. Just an just another note. Again, if you if you wanna have a conversation, please please leave the room, and, you can come back in around 3 o'clock to to use to do the workshop and stuff. But so we're, again so we're gonna talk about, like, improving the the Bitcoin development experience. But before we talk about some of the projects that are aimed at doing that, let's talk about,

969
01:17:26.890 --> 01:17:31.469
what the experience has been like over the past couple of years in trying to build

970
01:17:31.845 --> 01:17:50.615
Bitcoin wallets and other types of applications. Maybe, Steve, if you wanna if you wanna start. Sure. So the the way I came to the BDK project was that I wanted I had a solo project I was working on. I wanted to do something on mobile with a Bitcoin on chain, multisig, and there's just not a lot of great options. You know, like, there were some stuff in Java, but it doesn't work on iOS.

971
01:17:51.655 --> 01:17:57.515
And then, of course, a lot of them didn't have the latest modern features that you would want in a in a Bitcoin wallet.

972
01:17:58.190 --> 01:18:02.449
Teamed up with Avakos Fellini, and he's got you know, there's this great library that

973
01:18:02.830 --> 01:18:06.370
uses another library set of projects called Rust Bitcoin, which provide,

974
01:18:06.885 --> 01:18:08.665
you know, all the primitives you need,

975
01:18:09.205 --> 01:18:15.225
and then, you know, put put together with another Rust Bitcoin project for mini scripts so you get descriptor support

976
01:18:15.739 --> 01:18:18.880
and, you know, of course SegWid and all, you know, talking to different,

977
01:18:19.420 --> 01:18:20.559
Bitcoin back ends.

978
01:18:21.260 --> 01:18:26.965
It just, you know, basically gives you all the features. So then one of the things I focus on is making that available on mobile.

979
01:18:27.505 --> 01:18:33.739
So, you know, with Kotlin and Swift, so you can just, you know, as a developer, you just can pick up this library now and,

980
01:18:34.199 --> 01:18:36.380
and build a Bitcoin wallet for desktop

981
01:18:36.840 --> 01:18:43.405
or mobile. Okay. Awesome. And so some of some of these libraries that existed over the last cup couple of years, I'm

982
01:18:43.945 --> 01:18:45.965
assuming they haven't been as well maintained,

983
01:18:46.905 --> 01:19:23.815
and it Yes. Requires, like, developers to operate at a very, like, low level when they're trying to, integrate Bitcoin and Lightning. Is that is that true? Yeah. I mean, it's kind of a the other thing about having a library like BDK and LDK is that it it it's got sort of the best the best practices built in, implemented in a way that a lot of people have looked at. And, you know, you can you know, you don't have to necessarily be a a bits and bytes Bitcoin developer. Okay. You can understand the API and, you know, and just use it with a whole community kind of supporting you behind it. Okay. Awesome. And, Matt, you've been around in Bitcoin development for some time. Like, how how do you kind of see,

984
01:19:24.195 --> 01:19:24.695
how

985
01:19:25.074 --> 01:19:26.935
Bitcoin development has kind of

986
01:19:27.380 --> 01:19:28.040
us Yeah. Historically.

987
01:19:28.420 --> 01:19:32.840
Yeah. So, I mean, I I came at this from from I worked on Bitcoin Core for many, many years,

988
01:19:33.380 --> 01:19:35.880
and and have now kind of moved over to the lightning space.

989
01:19:36.905 --> 01:19:40.744
You know, historically, when I when I started working on Bitcoin many

990
01:19:41.304 --> 01:19:42.764
11 years ago or something,

991
01:19:43.304 --> 01:19:43.965
there weren't

992
01:19:44.510 --> 01:19:48.610
any funding for Bitcoin Core developers. There weren't even any full time Bitcoin Core developers.

993
01:19:49.070 --> 01:19:51.170
Now that, you know, obviously,

994
01:19:51.685 --> 01:19:55.625
can always use more resources probably. But that's kind of a solved problem.

995
01:19:56.485 --> 01:20:03.820
There's a ton of people working on Bitcoin Core. Bitcoin Core has a lot of really smart people working on it. There's room to grow. But

996
01:20:05.080 --> 01:20:09.500
everything further up the stack doesn't. Right? And so BDK has been really awesome.

997
01:20:10.225 --> 01:20:18.565
Steve talked about all these, like, libraries that have been kind of one offs that people have thrown out in various languages, and they're not well maintained, and they're not really all that usable.

998
01:20:19.040 --> 01:20:21.219
And so having a common base

999
01:20:21.520 --> 01:20:23.219
for on chain stuff is awesome.

1000
01:20:24.159 --> 01:20:26.900
But we looked at it as the spiral team, and we

1001
01:20:27.360 --> 01:20:28.020
also concluded

1002
01:20:28.685 --> 01:20:32.065
there needs to be something like this for lightning, too, right? Is

1003
01:20:33.485 --> 01:20:39.060
that lightning is even more complicated than the on chain stuff. There's even more to get right. There's even more to do.

1004
01:20:39.840 --> 01:20:40.340
And

1005
01:20:40.880 --> 01:20:47.860
we've seen several kind of mobile lightning wallets. We've seen several lightning wallets come around. And it's a full time job for a team of 3 or 4 people

1006
01:20:48.824 --> 01:20:55.324
to not only build a lightning implementation, but actually keep up with all of the changes happening in lightning and everything going on in lightning.

1007
01:20:56.344 --> 01:20:59.469
And so our goal is to abstract that out, right?

1008
01:21:00.090 --> 01:21:06.829
And make it so that you don't need a team of 4 full time engineers to build a great Bitcoin wallet,

1009
01:21:08.475 --> 01:21:08.975
where

1010
01:21:10.875 --> 01:21:13.135
there's frankly some work to be done. There's

1011
01:21:13.915 --> 01:21:19.889
some good wallets out there that need to grow, need to add lightning support, need a little better UX here or there,

1012
01:21:20.349 --> 01:21:23.165
need a little better design help for the design community folks.

1013
01:21:25.085 --> 01:21:32.385
And we want to see a lot more, especially things like Bitcoin Beach Wallet, things like where there's a localized community

1014
01:21:33.030 --> 01:21:43.805
that has some local features they might need, or or where, you know, integration with some local services makes more sense, and really enable people to build good user experiences around bitcoin that, you

1015
01:21:44.185 --> 01:21:51.600
know, it's just currently you have to be a great low level engineer to do that. And finding a great low level engineer who is also good at building

1016
01:21:51.980 --> 01:21:56.320
UX and good design is not I mean, basically it doesn't exist, right?

1017
01:21:56.864 --> 01:22:04.085
And so trying to abstract away that low level stuff so that we can do all that work for you, and then you can focus on how do you build a great user experience.

1018
01:22:04.440 --> 01:22:07.180
Okay. Okay. Amazing. Amazing. And so it's

1019
01:22:07.640 --> 01:22:09.320
yeah. Random floor. It's like,

1020
01:22:10.680 --> 01:22:30.550
it's this idea of, like, allowing people who operate at different levels in a in a stack to really specialize in specific areas. So, like, you say, if you're a protocol engineer, you can operate and build the tools that make it easy for application developers to build front ends and and who work with more UI and UX focused people, it can really hone in in those areas. So,

1021
01:22:31.915 --> 01:22:36.014
we've kind of identified that the developer experience is something that is is pivotal

1022
01:22:36.554 --> 01:22:38.735
to 10x in the the Bitcoin development,

1023
01:22:39.435 --> 01:22:39.935
experience.

1024
01:22:42.280 --> 01:22:56.614
Steve Myers and and Matt Crowder, you're working on some projects to to do that one being the BDK and the LDK. So do you wanna explain to the people what what the BDK actually is? Right. So, BDK stands for Bitcoin DevKit, the name inspired by LDK, which had,

1025
01:22:57.255 --> 01:22:57.995
the similar

1026
01:22:58.360 --> 01:23:01.020
name. And the idea that we're focused is on

1027
01:23:01.720 --> 01:23:10.905
building descriptor based wallets. So these are on chain wallets and you basically get all the modern features. You know you have, like I said, so descriptors are a way of defining the,

1028
01:23:11.625 --> 01:23:19.310
the spending conditions for wallet, but it's, you know, it it provides you a way to create those scripts in a way that's portable between different wallet implementations,

1029
01:23:20.090 --> 01:23:26.750
as well as well reviewed and audited. Like, you can easily look at a descriptor and figure out what it does for some more complicated spending conditions.

1030
01:23:27.835 --> 01:23:30.335
As Matt was saying, you know, people might wanna build applications

1031
01:23:30.715 --> 01:23:31.535
for specific,

1032
01:23:31.915 --> 01:23:32.575
you know,

1033
01:23:33.035 --> 01:23:48.864
specific communities, but it could also be like you're a company and you wanna build something in house that uses Bitcoin. You can now you know, you don't need to have a bunch of bitcoin protocol engineers in house. You can take this library. It's gonna be reviewed by, you know, the Bitcoin community. You can contribute back to it if you have no features.

1034
01:23:49.244 --> 01:23:52.625
We had one one person that was contributing back to our project,

1035
01:23:53.179 --> 01:24:00.559
and, he had a use where he wanted to do proof of reserves. So he could easily, within his company, create a proof of reserve library using BDK

1036
01:24:00.975 --> 01:24:17.050
and then, you know, release it both open source. And now any company that has that need can can use these 2 libraries together. This is, like, an example of somebody that, you know, didn't have to start from scratch. And, it's it's a really important thing too that a lot of things are changing on LDK, but things are still changing on BDK too. You know, Taproot is coming out.

1037
01:24:17.945 --> 01:24:21.245
You know, it's gonna be it's gonna be difficult for somebody to,

1038
01:24:21.625 --> 01:24:34.290
you know, implement a Taproot wallet from scratch. But you start with BDK, and BDK is gonna be supporting Taproot. Now you can just immediately get that feature in whatever application you're building. So that's part of the power. Fantastic. And on on the LDK side?

1039
01:24:34.750 --> 01:24:35.570
Yeah. I mean,

1040
01:24:36.665 --> 01:24:50.030
so basically the same thing. Right? But but on the lightning side, right? So the lightning protocol, like I mentioned, is it's complicated. And it's really hard to get right. And it's really important to get right. You get it wrong, you're you or your customers lose money, and that's

1041
01:24:50.410 --> 01:24:51.950
not a great user experience.

1042
01:24:53.155 --> 01:25:05.869
So so we try to, you know, do something similar where we we do all of the lightning state machine. We do all of the the logic around how you how you route payments and how you, how you even forward payments if you're running a non kind of mobile node,

1043
01:25:06.250 --> 01:25:08.510
and and do all of that stuff.

1044
01:25:08.889 --> 01:25:09.630
And then

1045
01:25:09.995 --> 01:25:19.989
we expose it as kind of the individual building blocks, and they all work well together, and it's easy to hook them up together. Or you can separate them out, and you can say I'm gonna run the routing part on a server, and I'm gonna,

1046
01:25:20.690 --> 01:25:38.320
query that from the client, and then I'm gonna do my backups by doing live updates against, you know, Icloud or or whatever you wanna do. You know, we give just neat little interfaces for all of the different pieces that aren't kind of corded lightning, but, like, how do you store your data? How do you, where do you get your private keys from?

1047
01:25:39.260 --> 01:25:40.960
How do you sync the chain?

1048
01:25:41.420 --> 01:25:43.360
All these kinds of things that

1049
01:25:44.095 --> 01:25:55.790
you could have many different ways you wanna do it. We provide just interfaces for that, and you have to go kinda hook it up to the right places, but you don't have to do all of the kind of hard work of building a lightning state machine.

1050
01:25:56.810 --> 01:26:05.565
And so we we do that in Rust as well, and then have, like BDK language bindings in a number of different languages and more continuing to come so the developers

1051
01:26:06.105 --> 01:26:11.880
can focus on how they wanna build a Bitcoin application and how they wanna have the UX work.

1052
01:26:12.420 --> 01:26:15.719
And we can just kind of make it easy to to

1053
01:26:16.495 --> 01:26:18.915
hook it up and then have lightning suddenly running.

1054
01:26:19.375 --> 01:26:20.755
Okay. Amazing. And

1055
01:26:21.375 --> 01:26:22.675
you have developers

1056
01:26:23.520 --> 01:26:30.500
working across various different stacks whether it be on desktop or mobile on embedded devices whatever it might be

1057
01:26:31.025 --> 01:26:35.605
also working in different programming languages as well. So how do you approach

1058
01:26:35.905 --> 01:26:39.365
trying to accommodate for all of those different types of users?

1059
01:26:39.825 --> 01:26:43.710
Yeah. I mean, that's a good point that it's one thing to have a nice, well reviewed,

1060
01:26:44.010 --> 01:26:45.390
you know, feature rich

1061
01:26:45.770 --> 01:26:54.755
Bitcoin and lightning stack, but then it's a whole another thing to support that ecosystem around it for mobile. So you have to have, you know, you have to support Android. You have to support iOS. And in those

1062
01:26:55.170 --> 01:27:09.785
environments, you wanna support those languages. So you need to support Kotlin or Java on Android and you wanna support Swift. You know that's sort of like just you know the you know that's sort of the, you know the price of admission is you just need to support that. And to do that

1063
01:27:10.130 --> 01:27:18.455
as well as supporting the core library gives you that just kind of, you know, easy pick it up off the shelf and you can start building your app, whatever environment you want.

1064
01:27:19.975 --> 01:27:21.755
Which is hard for, you know, hard

1065
01:27:22.055 --> 01:27:34.360
it's it's it's it's a just sort of building that ecosystem just opens it up for everybody. Cool. And I think like the technical term it kind of uses like language bindings and like Matt what would be some of the challenges around

1066
01:27:34.994 --> 01:27:43.094
language environments and supporting, like, these various environments? Yeah. I would say, you know, supporting different environments and thinking hard about different deployment scenarios is, like,

1067
01:27:43.970 --> 01:27:48.070
60% of the work we do. The other 40 is actually doing lightning stuff.

1068
01:27:48.850 --> 01:27:52.070
Yeah. I mean, we built a language bindings framework from scratch.

1069
01:27:52.474 --> 01:27:59.775
We sat down and said, like, all of these existing lang you know, we have a rich object oriented interface with different classes and different

1070
01:28:00.239 --> 01:28:09.275
interfaces that you have to plug into and and use and we want to support that in different languages. Turns out there are no language bindings frameworks to support this. It just doesn't exist.

1071
01:28:10.055 --> 01:28:27.715
You know, all the all the existing language bindings frameworks are are for people who are saying, like, well, I've got my my app and it's written in in Java or Swift or whatever, and then this this one function is too slow, and I have an implementation in c I wanna call, and it's like one function and it's a pure function and it doesn't doesn't have all of these interdependencies

1072
01:28:28.094 --> 01:28:28.835
or whatever.

1073
01:28:29.614 --> 01:28:36.340
And there's a ton of frameworks for that and they're really great. And then you want to have, well, I have these classes. And I

1074
01:28:37.200 --> 01:28:45.205
want it to feel like a native interface where you're instantiating these classes that are secretly written in Rust, but they're actually, you know, exposed to you in Java or Swift.

1075
01:28:46.145 --> 01:28:52.710
And then you have interfaces that you want to write an implementation of in Java that the Rust code is actually calling all the way into.

1076
01:28:53.730 --> 01:28:56.390
Yeah, it turns out that didn't exist. So we had to we spent

1077
01:28:56.784 --> 01:28:57.685
about 2 years

1078
01:28:58.545 --> 01:29:02.244
of engineering time a little more, actually building that from scratch.

1079
01:29:04.304 --> 01:29:04.745
And,

1080
01:29:05.185 --> 01:29:07.910
yeah. It was an insane amount of work,

1081
01:29:08.290 --> 01:29:14.150
but it ended up working really well. And so, you know, Cash App shipped with with LDK powering their lightning node,

1082
01:29:14.965 --> 01:29:18.585
And they didn't write a single line of Rust. They didn't look at a single line of Rust.

1083
01:29:19.045 --> 01:29:21.625
They wrote it all in Java, or I guess they wrote it all in Kotlin.

1084
01:29:22.405 --> 01:29:23.145
But so that

1085
01:29:23.710 --> 01:29:27.810
turned out to be a good investment. It worked incredibly well at the end of the day.

1086
01:29:28.350 --> 01:29:32.530
But but that ends up being almost all of our work is is a combination of that

1087
01:29:32.835 --> 01:29:43.220
And also just thinking about how do we design an interface that is hard to misuse? How do we design an interface that's either gonna, like, immediately spontaneously combust and the application won't even run,

1088
01:29:43.600 --> 01:29:44.100
or

1089
01:29:44.720 --> 01:29:45.780
it works right

1090
01:29:46.080 --> 01:29:47.700
and you can't lose money,

1091
01:29:50.435 --> 01:29:52.215
and the payments go through reliably,

1092
01:29:52.835 --> 01:29:53.335
and

1093
01:29:53.795 --> 01:29:55.255
it all works. Right? So

1094
01:29:56.370 --> 01:29:57.590
trying to design interfaces

1095
01:29:58.610 --> 01:30:00.070
is hard, hard form, right?

1096
01:30:00.449 --> 01:30:05.725
And so that ends up being the other half of our work is just how do we make sure that this interface is gonna be robust and users

1097
01:30:06.025 --> 01:30:07.565
are gonna know how to use this correctly

1098
01:30:08.025 --> 01:30:09.325
just by looking at it,

1099
01:30:10.185 --> 01:30:34.370
and and it they they can't screw it up. Right? Yeah. Actually, LDK also provides great documentation, you know, API documentation as well as examples. That's the other thing BDK also tries to provide is examples, documentation, which is another big piece of work. It's not you know, you can't take it for granted that every library would have that. Yeah. Awesome. Okay. So Steven, we've not heard from you just yet, but you come from a slightly different perspective,

1100
01:30:35.950 --> 01:30:37.090
being a designer.

1101
01:30:38.555 --> 01:30:40.815
So do you wanna talk to us a little bit about,

1102
01:30:41.275 --> 01:30:42.975
the Bitcoin design community?

1103
01:30:43.835 --> 01:30:50.600
What that is, what that f is, what type of things are involved on on that side of things, and then we'll we'll dive into a bit of how

1104
01:30:51.220 --> 01:30:51.960
we tie

1105
01:30:52.260 --> 01:30:54.440
the fact that we have these awesome SDKs

1106
01:30:55.215 --> 01:31:02.675
and with the the UI expertise that come from that community as well. Yeah. So the Bitcoin design community is, just kind of a

1107
01:31:03.179 --> 01:31:03.679
decentralized

1108
01:31:03.980 --> 01:31:05.119
community of designers

1109
01:31:05.420 --> 01:31:06.320
and creatives,

1110
01:31:06.860 --> 01:31:10.159
who are interested in, working on open source, Bitcoin.

1111
01:31:10.765 --> 01:31:19.105
You know, I guess the the kind of central thesis of would be thesis of it would be that, you know, Bitcoin is the best money, so it should have the best user experience.

1112
01:31:20.179 --> 01:31:27.719
And, you know, I think a lot of people would agree that it's, you know, it's currently lacking. A lot of people find Bitcoin difficult to use. There's a lot of uncertainty

1113
01:31:29.315 --> 01:31:30.695
for people about how to

1114
01:31:31.075 --> 01:31:32.855
self cut to do their own Bitcoin.

1115
01:31:34.114 --> 01:31:34.595
So,

1116
01:31:34.995 --> 01:31:41.170
kind of the flagship product of the design community is this project called the Bitcoin design guide. And

1117
01:31:41.790 --> 01:31:45.650
the Bitcoin design guide is you can think of it kind of as, like, human interface guidelines

1118
01:31:46.165 --> 01:31:49.945
for bitcoin products. If you're building a non custodial

1119
01:31:50.804 --> 01:31:52.025
bitcoin product,

1120
01:31:53.000 --> 01:31:53.500
You

1121
01:31:53.960 --> 01:31:57.180
can turn to this guy to look for principles and techniques

1122
01:31:57.640 --> 01:32:01.740
that you can employ to build a better experience for your users. And

1123
01:32:02.415 --> 01:32:20.835
it might be good to differentiate a little bit. Like, you you said the word UI. Like, you know, it's also, I think, important to differentiate between, like, UI, like, just the the thing that the user sees on screen, like, the the the specific color of the button or the font choice. Right? That that I consider to be more UI. But, like, UX,

1124
01:32:21.135 --> 01:32:26.735
I consider to be a little bit broader than that. Like, we're we're trying to think about, like, the whole experience the user has to go through.

1125
01:32:27.360 --> 01:32:29.219
You know, is the

1126
01:32:29.600 --> 01:32:36.580
application you're building, let's just say it's a wallet, for example. Do when they turn it on for the first time, do they know what they're supposed to do

1127
01:32:37.485 --> 01:32:39.185
when they receive their first Bitcoin?

1128
01:32:41.245 --> 01:32:43.185
Is there a backup facilitated?

1129
01:32:44.909 --> 01:32:50.289
How is the user still using it a year down the road? Are they still using it a 5 years down the road? And

1130
01:32:50.590 --> 01:33:02.285
is the way that they're using it changing? So these are kind of, like, all, you know, things that I would consider kind of under the umbrella of user experience. And I guess kind of, like, similar to LDK or, like, BDK and LDK is that,

1131
01:33:03.200 --> 01:33:15.635
if you think about, like, why should every single developer have to repeat the same work over and over again? Like, let's find what works. Like, let's, you know, build our our good, you know, lightning state machine and just put that into a toolkit, and everybody can use that.

1132
01:33:15.935 --> 01:33:18.435
You know, similar with design, like,

1133
01:33:18.975 --> 01:33:19.775
we don't need,

1134
01:33:20.175 --> 01:33:20.675
everybody

1135
01:33:20.975 --> 01:33:31.139
to come up with a new design solution every time. Like, if some other wallet or Bitcoin service has come up with a good design solution that makes it really easy to use for people,

1136
01:33:31.625 --> 01:33:37.485
why don't we document that in an open source way? And then other projects can take, you know, take advantage of that.

1137
01:33:38.185 --> 01:33:38.685
Amazing.

1138
01:33:39.140 --> 01:33:44.040
And, just to to touch on a few things around, like, the design guide and,

1139
01:33:45.060 --> 01:33:46.280
kind of documenting

1140
01:33:46.739 --> 01:33:53.304
patterns that work regardless of, you know, what what wallet you're trying to build or what Bitcoin application you're trying to build.

1141
01:33:53.764 --> 01:33:56.664
Do you wanna talk maybe about a concrete example

1142
01:33:56.965 --> 01:34:04.760
and one that was, you know, announced earlier by by Myles and the Cash App team that the BIP 21 URIs and, like, how that's an example of

1143
01:34:05.505 --> 01:34:10.405
developers and designers who, you know, developers who have created the standard

1144
01:34:11.505 --> 01:34:24.215
and getting some some some aid, I guess, from from the UX side to kind of tie it together as, like, a concrete example? Yeah. Yeah. That that's a good one. So for if, if anyone didn't see the Cash App talk this morning, you know, Miles announced

1145
01:34:24.755 --> 01:34:25.974
a lot of cool features.

1146
01:34:26.514 --> 01:34:32.695
But, yeah, one one of them in particular was this plan to kind of move to a new type of QR code or

1147
01:34:33.020 --> 01:34:36.000
using an existing type of QR code, but differently. And this,

1148
01:34:36.460 --> 01:34:43.955
you know, there's been this, you know, big conversation about it in the Bitcoin design community and, other open source Bitcoin communities,

1149
01:34:44.735 --> 01:34:47.475
about this. You know? Like, just as a real world example,

1150
01:34:48.080 --> 01:34:54.420
I think, you know, many of us witnessed this last year in El Salvador, just the difference in payment formats.

1151
01:34:56.255 --> 01:35:14.514
You know? For example, you go into, you know, like, a little bodega or pupuseria, and you wanna order something, and, you know, you ask to pay in Bitcoin, and, you know, there's usually some kind of toggle that they have to switch between an on chain, address QR code or a bolt 11 invoice QR code or proprietary Chivo QR code.

1152
01:35:15.215 --> 01:35:38.175
So you know? And there's just not a lot of education. People aren't sure what what what to do in in these situations. And you think about QR code. It's kind of like an ugly human unreadable thing. Like, you can't look at a QR code and just, like, know what's inside of it unless it tells you. So that was a big problem, and, you know, there's been many people have tried to come up with solutions for that, like, Galois, Bitcoin Beach. They had kind of a solution that they were experimenting,

1153
01:35:48.405 --> 01:35:53.845
But, I'm not sure exactly where the idea originated from. I first, I think, heard it from, you know, Pavlinx and,

1154
01:35:54.245 --> 01:36:02.400
you know, John Zohari and Steve Lee, some combination of those 3. But basically, this idea of, you know, just taking a a BIP 21,

1155
01:36:02.780 --> 01:36:03.420
which is this,

1156
01:36:04.335 --> 01:36:05.715
it's this payment URI

1157
01:36:06.415 --> 01:36:12.195
format. It's been around for about 10 years. I think you weren't you involved in I think I might have written the original spec. Yeah. I think I saw

1158
01:36:12.574 --> 01:36:13.790
your name on the paper.

1159
01:36:14.430 --> 01:36:18.430
But, you know, it's basically this idea we can use as an existing spec. We can put,

1160
01:36:19.150 --> 01:36:34.040
an optional parameter in there, put a lightning invoice in there. And I think the spec was very forward looking. Like, it it you know, you were kinda predicting that people would wanna use it in different ways, and we don't know how we're gonna wanna use it in 10 years. Well, this is an example of that. So we're now able to use this existing,

1161
01:36:34.500 --> 01:36:35.800
open source standard.

1162
01:36:36.179 --> 01:36:36.679
And,

1163
01:36:36.980 --> 01:36:42.135
you know, in the Bitcoin design community, we started experimenting with it. We built a website. We started documenting,

1164
01:36:42.675 --> 01:36:46.055
which wallets could support the standard and which, don't.

1165
01:36:46.515 --> 01:36:51.320
And we started reaching out to projects. And this is just an example of, like, you know, designers

1166
01:36:51.620 --> 01:36:57.000
can get involved in open source, and you can go on GitHub, and you can open an issue with a project

1167
01:36:57.325 --> 01:37:00.545
and make a bug report or a feature request or suggestions

1168
01:37:00.925 --> 01:37:02.225
for UI improvements.

1169
01:37:02.844 --> 01:37:04.920
And so we've gotten pretty positive feedback.

1170
01:37:05.300 --> 01:37:13.560
It's an ongoing discussion, but we've gotten very positive feedback. And even Cash App was able to get involved and have discussions with the Bitcoin Design Community

1171
01:37:14.685 --> 01:37:19.185
about about this project. So, it's really cool thing if you think about, like,

1172
01:37:20.205 --> 01:37:34.315
if you have the best UI, the slickest UI, the best UX in the world for your wallet, if every other Bitcoin wallet out there has has is hard to use, it hurts you too. Like, we're kind of all in this together when it comes to Bitcoin UX.

1173
01:37:35.415 --> 01:37:41.470
So, you know, Cash App, I thought it was really great that they, they got involved with the design community, got involved in these discussions.

1174
01:37:41.850 --> 01:37:45.630
And, now we've basically seen in a very short period of time,

1175
01:37:46.250 --> 01:37:47.470
designers and developers,

1176
01:37:48.090 --> 01:37:49.690
collaborating together to,

1177
01:37:50.090 --> 01:37:50.605
you know,

1178
01:37:51.005 --> 01:37:52.385
improve improve the UX.

1179
01:37:52.765 --> 01:37:56.705
Yeah. And I don't want to zone in on that last little thing you said there around,

1180
01:37:57.485 --> 01:38:03.560
developers and designers coming together. Like, sometimes we term like bridging bridging the gap between designers and developers

1181
01:38:04.180 --> 01:38:08.440
now that we have these development tools and and a design guide

1182
01:38:11.245 --> 01:38:17.025
Why why why is it important to to kind of bridge that gap? Is it the fact that now we can get more experimentation

1183
01:38:17.485 --> 01:38:18.465
happening quicker?

1184
01:38:19.260 --> 01:38:22.240
Is it the fact that, like, those tools just naturally,

1185
01:38:22.940 --> 01:38:24.480
bring bring those 2

1186
01:38:24.780 --> 01:38:27.840
users together? Like, what would you say about about that side of things?

1187
01:38:28.345 --> 01:38:31.485
Yeah. I mean, in terms of, you know, bridging the gap, I'd say,

1188
01:38:32.505 --> 01:38:41.650
you know, I think this is, like, a running problem in in, you know, software engineering and product development. This idea that, like, if you're if you're trying to build something and,

1189
01:38:42.350 --> 01:38:45.954
you you spend, you know, 6 months planning it out and then,

1190
01:38:46.974 --> 01:38:53.480
3 months building it and then, you know, 2 months testing it. And then eventually, by the time it it gets to market, it's like you,

1191
01:38:54.520 --> 01:39:07.405
you know, the the competitors beat you or users, you know, customers' demands have changed. So I think, like, what we've witnessed over, you know, the the past several decades is just that, you know, development cycles for products are are getting a lot. You know?

1192
01:39:08.360 --> 01:39:26.690
I hate to use this word, but I guess you'd say it's becoming more agile. Like, we're figuring out how to, we're figuring out how to, like, ship features quicker. And so an important part of that is, like, you don't want a situation where, like, the designer is, you know, building this perfect, you know, layout, and then I pass it over to the developer. And then, you know, the the developer,

1193
01:39:27.550 --> 01:39:34.845
you know, kinda has their own interpretation of it. And then, you know, by the time it hits the market, it's you know, something's been lost in translation.

1194
01:39:36.105 --> 01:39:49.850
I think, like, on the open source side, what's what I've witnessed, just in the design community is that, like, some of the most successful Bitcoin open source projects are one where the designers and the developers work very closely together, and they have, like, kind of a constant feedback loop.

1195
01:39:50.470 --> 01:39:55.665
So, like, if you come in and you say, you ask the designer, like, can you solve this problem for me? What's the answer to my

1196
01:39:56.125 --> 01:39:56.625
question?

1197
01:39:57.085 --> 01:39:58.785
And then take it and run with it.

1198
01:39:59.120 --> 01:40:19.730
You know, here's the thing. This isn't like a perfect science. Like, you know, like, there's not, like, one just answer to UI because it's gonna depend on, like, where you are in the world, what kind of customer you're trying to serve, you know, what your the needs of your community are. And so there's not just like, you know, this isn't like, you know, physics or something where we can like, you know, absolutely define something down to a molecule. So

1199
01:40:20.270 --> 01:40:20.910
the ongoing,

1200
01:40:21.230 --> 01:40:26.775
collaboration between the designer and developer, I think is so that, you know, you can test stuff, see what works,

1201
01:40:27.155 --> 01:40:32.375
and just very quickly find what works for the product or for the customer that you're trying to serve.

1202
01:40:32.710 --> 01:40:34.170
Okay. Fantastic. And,

1203
01:40:36.230 --> 01:40:38.170
so just to recap a little bit, we have

1204
01:40:38.470 --> 01:40:42.385
the BDK, which is helping with on chain Bitcoin functionality,

1205
01:40:43.244 --> 01:40:51.460
exposing all these high level APIs. Similarly, on the LDK side, if you wanna integrate instant lightning payments into into any wallet or application.

1206
01:40:54.160 --> 01:40:56.875
What what types of what types of applications

1207
01:40:57.415 --> 01:41:05.115
and and are we seeing being built with, like, BDK, and then we'll go into LDK in a second. So yeah. Yeah.

1208
01:41:05.480 --> 01:41:06.380
Yeah. So I,

1209
01:41:07.159 --> 01:41:16.775
so right now, you know, we primarily have sort of example applications. We we did I mentioned there was a a bank looking to use you know, looking at BDK for some proof of reserve stuff.

1210
01:41:18.195 --> 01:41:20.775
Kind of our big focus now is just getting

1211
01:41:21.235 --> 01:41:34.895
more, you know, more of the mobile stuff built out to support more mobile applications. And, you know, that's part of, you know, what I'm doing here and the rest of the BDK team is doing is just finding open source developers or finding closed source developers. Anybody who wants to build something using

1212
01:41:35.275 --> 01:41:36.335
on chain Bitcoin

1213
01:41:37.035 --> 01:41:41.215
and, you know, getting to know them and getting to solve their problems with BDK.

1214
01:41:42.370 --> 01:41:51.365
You know, I don't think we have any big, like, commercial programs yet using BDK, but the goal is we we hope to soon yeah. We're certainly that's our that's our goal is to make that happen. Yeah.

1215
01:41:52.005 --> 01:41:56.985
Yeah. Okay. Yeah. And on the ldk side, we've been around for a little longer than the bdk side.

1216
01:41:57.925 --> 01:42:01.200
And so we have so Cash App was our first

1217
01:42:01.840 --> 01:42:05.700
user to go live in a big way. It was actually the the second

1218
01:42:06.240 --> 01:42:07.620
user to start integrating

1219
01:42:08.534 --> 01:42:09.034
overtorments

1220
01:42:09.415 --> 01:42:10.395
back here somewhere,

1221
01:42:10.775 --> 01:42:11.675
from blue wallet,

1222
01:42:12.135 --> 01:42:15.915
suffered through a lot of the pain of of some of our very early alpha language bindings,

1223
01:42:16.935 --> 01:42:17.435
projects.

1224
01:42:18.250 --> 01:42:21.630
And so they have they're they're more in flight as well. Obviously,

1225
01:42:22.570 --> 01:42:25.469
you know, building for mobile is is just a little

1226
01:42:25.864 --> 01:42:38.610
harder in almost every way, not only on the language bindings end, but but also especially on the lightning end. There's just so many more things you wanna get right to have a really great user experience, especially as a as a non custodial end user application.

1227
01:42:40.005 --> 01:42:43.305
And so cache app beat them to the punch. It's a little easier to build

1228
01:42:43.845 --> 01:42:48.105
a custom Lightning node that is just custodial than the non custodial.

1229
01:42:49.320 --> 01:42:50.540
But but it highlights

1230
01:42:50.920 --> 01:42:51.980
the the very different

1231
01:42:52.360 --> 01:42:54.940
uses for LDK and projects like this,

1232
01:42:55.535 --> 01:42:56.035
where

1233
01:42:56.575 --> 01:43:02.595
Cash App is a large corporate. They have a ton of back end infrastructure that existed already for all of their existing.

1234
01:43:03.080 --> 01:43:05.340
Obviously, Cash App does a whole lot more than Bitcoin.

1235
01:43:06.840 --> 01:43:11.659
And they really wanted a lightning node that tightly integrated with all of that infrastructure. Right? So

1236
01:43:12.245 --> 01:43:16.025
using their own logging infrastructure, their own database infrastructure, their own

1237
01:43:16.725 --> 01:43:18.345
node failover and

1238
01:43:20.150 --> 01:43:26.410
hosting infrastructure, all of the stuff that they already had, that they wanted their lightning node to really integrate well with that. And just taking

1239
01:43:26.710 --> 01:43:29.690
something like CLightning or LND, which which are great,

1240
01:43:30.105 --> 01:43:38.889
but in running it off the shelf, it doesn't provide them that. Right? And so they wanted to build something super custom. And they were able to, in in a number of months, put together

1241
01:43:39.270 --> 01:43:41.610
a a full lightning node from scratch that,

1242
01:43:42.070 --> 01:43:49.025
used LDK to do all of the kind of lightning parts, but then integrated and worked in exactly the way they wanted lightning node to work for them.

1243
01:43:49.405 --> 01:43:51.345
On the on the other side, you know, blue wallet,

1244
01:43:52.205 --> 01:44:10.825
just completely different scenario. But again, where it's they already had an on chain, non custodial wallet. They already synced the blockchain. They already had key derivation. They already have had a backup system. You know, they already had all of these pieces and they didn't wanna, you know, take something like lnd and try to make it run on mobile, and then,

1245
01:44:11.205 --> 01:44:21.130
sync the chain twice, and have 2 separate key derivation systems, and have so, you know, they wanted a lightning node that worked with their existing infrastructure and actually integrated

1246
01:44:21.510 --> 01:44:25.915
into the app, and not something that just was completely fresh from scratch,

1247
01:44:26.855 --> 01:44:41.685
or was from scratch kind of for them. And so there again, you know, this LDK where it's really just building blocks. You know, we provide a bunch of different building blocks and some sample implementations, and you can take the pieces you want and hook them up in the way you want and end up with a lightning node that works in exactly the way you want. So

1248
01:44:43.025 --> 01:44:44.885
being able to build super tailored

1249
01:44:45.425 --> 01:44:47.525
systems for exactly what you need

1250
01:44:48.145 --> 01:45:02.675
is really kind of the, I would say, the value of everyone standing on this stage is is helping people build exactly what they need. Yes. It's it's interesting because although, like, sometimes we talk about, like, LDK having the sweet spot of like non custodial mobile where there are like constraints

1251
01:45:03.375 --> 01:45:09.155
on memory storage, background tasking, all of these kind of things. We are seeing something like Sensei

1252
01:45:09.640 --> 01:45:10.300
which is

1253
01:45:11.560 --> 01:45:13.739
a, I guess, a lightning of implementation

1254
01:45:14.040 --> 01:45:16.219
based off of LDK as well,

1255
01:45:16.600 --> 01:45:17.100
which

1256
01:45:17.665 --> 01:45:22.965
we hope might be in the in the Umbral app store soon and, you know, might be instances where, although,

1257
01:45:23.265 --> 01:45:34.810
out of the box, it's not really designed to be like an out of the box node experience. Like you have the tools to to make a custom node yourself right? So that's really cool. And on on the on the Bitcoin

1258
01:45:35.350 --> 01:45:36.330
design side,

1259
01:45:37.015 --> 01:45:42.715
although you talk about the the user experience and and getting developers to work with designers to to build, you know,

1260
01:45:43.175 --> 01:45:46.235
customer facing stuff like wallets and other types of applications,

1261
01:45:46.720 --> 01:45:52.500
What other things do we see from the Bitcoin design community around art and narrative

1262
01:45:52.800 --> 01:45:54.580
and and all of these kind of things?

1263
01:45:55.175 --> 01:45:56.155
Yeah. So, I mean,

1264
01:45:56.855 --> 01:46:01.755
there's there's a lot a lot of different projects, you know, in the design community other than just the design guide.

1265
01:46:02.215 --> 01:46:10.790
You know, around art, I'd say, yeah, I mean, there's a whole channel in our, our Slack workspace where people post, like, art they're working on and stuff, which is really cool.

1266
01:46:11.250 --> 01:46:17.465
You know, we've gotten involved with other you know, there's a lot of, just kind of, I guess, like, collaborations, you'd say,

1267
01:46:18.244 --> 01:46:28.500
you know, we're which is basically somebody's doing a project on Bitcoin. They come to us, and, you know, they might need some help with something. And, you know, we'll put together a call and people in the community who might wanna help this project,

1268
01:46:30.545 --> 01:46:52.245
can jump in and help out. And so, you know, like, on the the narrative side, you know, there was this Hello Bitcoin project that you were involved with, and, you know, it's kind of a video series that kinda teaches people the fundamentals of Bitcoin and why it's valuable. And several people in the community got involved with that and started working on the animation for that. And, also, just, like, with, like, wallet projects and stuff, I mean, there's currently a collaboration with JoinMarket.

1269
01:46:53.345 --> 01:46:59.620
I think, there's some people there's a team working on trying to redesign the UI for Bitcoin core, like the wallet,

1270
01:47:00.340 --> 01:47:01.240
portion of it.

1271
01:47:02.260 --> 01:47:07.275
There is, there's the Zeus a while, which has been a incredible, incredibly good collaboration.

1272
01:47:09.255 --> 01:47:12.315
There's, you know, also just some some, kind of

1273
01:47:12.820 --> 01:47:18.680
other flagship products. Next to the design guy would be, like, the UI kit and, the Bitcoin icons kit,

1274
01:47:19.140 --> 01:47:24.155
like, Kristoff, Ono, and Bosch. Like, those are basically kind of toolkits you can use. So,

1275
01:47:24.535 --> 01:47:31.100
you can, take the icons kit and install it as a viewer react module and just instantly have icons for your

1276
01:47:31.400 --> 01:47:32.460
your Bitcoin product.

1277
01:47:33.160 --> 01:47:36.220
You can use the the UI kit. It's a Figma prototype.

1278
01:47:36.525 --> 01:47:48.050
You know, so you can basically rip screens from that and incorporate them into your project. It's kind of like why why reinvent the wheel? Not to limit your creativity in any way, but it's a good starting point so you don't have to rebuild,

1279
01:47:48.750 --> 01:47:49.250
everything

1280
01:47:49.630 --> 01:47:59.975
from scratch. So there's really just a ton of of projects going on in the community. Sometimes new initiatives just kind of spring up out of nowhere without any central authority with school.

1281
01:48:00.675 --> 01:48:06.200
Yeah. Awesome. And then just trying trying to tie things back to, know, 10x in the development

1282
01:48:06.900 --> 01:48:07.400
experience.

1283
01:48:08.580 --> 01:48:10.200
What what advice would you give

1284
01:48:10.660 --> 01:48:17.715
people who want to get involved in a space, whether it be contributing directly to BDK, LDK, and the design community

1285
01:48:18.415 --> 01:48:23.030
or taking these tools and and building applications themselves. Like, any any advice

1286
01:48:23.429 --> 01:48:35.535
for for these people? I'd say one thing that I know that from the design side, I used to work in enterprise software, and Okay. We basically never built anything until we had UX and UI, primarily UX, actually. Because, you know, that's like you wanna

1287
01:48:35.975 --> 01:48:50.815
developers sometimes aren't great talking to users. In UX, that's part of what they do to bridge the gap is they're basically collecting that user feedback about, you know, what does user wanna do? How do they wanna use it? You know, maybe they don't know what they want. And maybe what they want isn't actually what they want, what they think they want.

1288
01:48:51.435 --> 01:48:57.135
So that, like, that's obviously part of it part of it. But on the BDK side or on the on chain side,

1289
01:48:57.450 --> 01:49:00.670
just being able to take a library that's well reviewed, has examples,

1290
01:49:01.210 --> 01:49:03.710
allows you to kind of bootstrap whatever project you have.

1291
01:49:04.250 --> 01:49:05.370
And then I think it's also

1292
01:49:06.025 --> 01:49:31.400
you know, from the co in the closed source world, you might have all these companies replicating the exact same software. Mhmm. And that's pretty inefficient. You know, with open source and, you know, projects like LDK and BDK, you have all these people that wanna do the same thing, all these smart people that can just get together, combine forces, trade ideas back and forth, people all over the world. You're gonna get a a cross section of developers that you could never, as a company, afford to buy. Like, they're not for sale, most of them. So,

1293
01:49:31.780 --> 01:49:36.920
you you get that for free, and it's it's quite amazing. You know? It's it's, you know, it's a resource that

1294
01:49:37.245 --> 01:49:40.785
you can only get in an open source project. You're not gonna get that on a closed source project.

1295
01:49:41.245 --> 01:49:56.534
So How about on the design side if you wanna if you wanna get involved? Yeah. So on the design side, I mean, just from a, you know, a purely tactical perspective, you go on to Bitcoin dot design, our website, go to the contribute page, and follow what it says there. You can join our Slack channel. You can add our calendar,

1296
01:49:56.835 --> 01:49:59.655
to, like, your Google or Apple calendar and all of that.

1297
01:50:02.070 --> 01:50:13.994
But just to dig into that a little bit more, I mean, you know, we we do calls, you know, talking about specific projects or issues, and it's all pretty open. So, I mean, I would really encourage you to just lurk.

1298
01:50:14.575 --> 01:50:20.155
You know, once you get on a call and you, you know, you can just hang out, you don't have to

1299
01:50:20.520 --> 01:50:25.420
ask questions or be involved if you don't want to. And you can just kinda see how an open source community

1300
01:50:25.800 --> 01:50:26.300
functions,

1301
01:50:27.000 --> 01:50:37.775
and then jump in and contribute, when you feel comfortable. And I'll just say that, like, I really encourage you to do it, especially, like, especially if you're, like, starting out your career and you're thinking of doing an unpaid internship.

1302
01:50:38.300 --> 01:50:50.824
I'd say don't do that. And I would say contribute to an open source project instead, because, you know, like Steve said, you're gonna meet, like, people all around the world with different ideas. You're gonna you're just, you you know, kinda connected to this hive mind of ideas.

1303
01:50:51.445 --> 01:51:02.770
And and, also, like, the open source contributions you make, people are gonna see them. So it's not gonna be, like, some proprietary thing that's hidden, and you have to kinda, like, hype yourself up. Like, people can see when you're doing your work in the open,

1304
01:51:03.265 --> 01:51:08.405
exactly what you're contributing. And those open source contributions, I think, will follow you from one job to the next.

1305
01:51:09.025 --> 01:51:16.570
Cool. Yeah. Definitely. And and to maybe to to summarize a little bit, like, you know, there's a lot, a lot, a lot of focus

1306
01:51:16.949 --> 01:51:19.085
in this space of, like, oh, I wanna

1307
01:51:20.125 --> 01:51:26.610
contribute to, like, the lowest levels of the protocol. And and that's awesome. You know? Those those spaces need as much contribute

1308
01:51:27.010 --> 01:51:29.750
contribution as they can get, as many eyes on it as they can get.

1309
01:51:30.449 --> 01:51:42.665
But they also have, over the last few years, started getting a lot of eyes on it, a lot of contributors, a lot of a lot of great people working on those projects. And further up the stack, you see a lot of these

1310
01:51:43.125 --> 01:51:50.740
awesome wallets that people have started building and that people use every day. And the real touch points for users on Bitcoin non custodial

1311
01:51:51.375 --> 01:51:53.155
have teams of 2, or 3, or 4 people.

1312
01:51:53.534 --> 01:51:54.034
Right?

1313
01:51:54.335 --> 01:51:55.394
And these projects,

1314
01:51:57.775 --> 01:52:00.900
they often don't even have a UX or a designer. Or they

1315
01:52:01.360 --> 01:52:04.267
have some contribution from the design community and work

1316
01:52:04.693 --> 01:52:06.420
or are turning to that increasingly.

1317
01:52:07.425 --> 01:52:20.750
And they don't have the resources to build out a lot of really awesome UX that they might want to build because they're too focused on some of these lower level things. And so there's there's a lot more room to contribute to some of these projects further up the stack,

1318
01:52:21.130 --> 01:52:25.915
and and make a much bigger impact on how people actually use and experience Bitcoin,

1319
01:52:27.495 --> 01:52:27.995
because

1320
01:52:28.375 --> 01:52:35.900
these are the real touch points. You know, people actually are using an app to to receive their Bitcoin, and they're not they're not using Bitcoin Core on a regular basis.

1321
01:52:36.840 --> 01:52:44.335
And so I think there's a lot of room to contribute to these communities, certainly, especially the design community and going out and actually working with some of these wallets.

1322
01:52:45.035 --> 01:52:50.415
And then there's also just a lot of room to to build great user experiences using Bitcoin.

1323
01:52:51.080 --> 01:52:56.460
You know, there's only probably a handful of wallets that that people strongly recommend that have great UX.

1324
01:52:58.014 --> 01:52:58.514
And,

1325
01:52:59.295 --> 01:53:12.409
you know, go build another one. You know? Go go build something that's that's unique and and has some other user experience that that you think might win yet more people over to Bitcoin and give them really the the experience that they want.

1326
01:53:12.710 --> 01:53:16.455
And there's there's a lot of room in the space for that kind of contribution.

1327
01:53:17.075 --> 01:53:27.659
Awesome. And then just a kind of final closing thoughts from the from the 3 of you. What are you kind of most exact excited to see in in Bitcoin development this year?

1328
01:53:28.440 --> 01:53:28.940
And,

1329
01:53:29.320 --> 01:53:40.930
then just tell people where they can, like, find your projects again, the projects that you're working on again. So maybe, Steve, do you wanna start? Sure. Well, I mean, as a an on chain library, I think Taproot's probably the most exciting thing right now just

1330
01:53:41.410 --> 01:53:52.335
from what you're gonna be able to do with it and being able to support that in an open source, you know, easy to accept sort of way. Yeah. If you wanna go to bitcoin devkit.org, that's our website. You can get links there to the the GitHub repository

1331
01:53:52.635 --> 01:53:54.095
and also our Discord community.

1332
01:53:54.715 --> 01:54:00.350
If you have questions or have ideas for an app or you wanna contribute to the project, you know, you can chat with us there. We're

1333
01:54:00.730 --> 01:54:06.615
we're around the we're we're around the globe, so there's always somebody around online there. Awesome. And, Steven? Yeah. I'm,

1334
01:54:07.155 --> 01:54:46.454
you know, one kind of thing. I mean, obviously, I'm excited about the unified QR code. Another thing I'm kind of excited is just, like, stabilized lightning channels. I mean, obviously, Bitcoin's the best money and it's what you want your savings in. But one thing I've just kinda seen, you know, like, with adoption in developing nations is that, like, you know, there's obviously this need for, like, having a little bit that's stabilized, you know, for your weekly expenses. And I think the Overton window has kind of shifted around that conversation, and we've seen this, like, kind of explosion of ideas over the past, like, 2 months here of just different ways of accomplishing that. So I'm really curious to see how, you know, what what the engineers decide is the right approach, but, you know,

1335
01:54:46.800 --> 01:54:53.780
after the the whole kind of rough consensus process. But I'm also curious to see what the design around that, how how we solve those design problems.

1336
01:54:54.575 --> 01:54:59.075
But, yeah, you can, like I said, you can follow what we're working on in Bitcoin design just by going to Bitcoin.design

1337
01:54:59.775 --> 01:55:00.515
on the web.

1338
01:55:00.895 --> 01:55:05.679
Perfect. I'm about to finish this off. Yeah. Oh, man. There's so many things going on in lightning.

1339
01:55:07.179 --> 01:55:08.079
All of the things.

1340
01:55:08.860 --> 01:55:14.295
So, yeah, on on the l e k side, let's see. We're we're working on bolt 12 integration. So so improving,

1341
01:55:14.915 --> 01:55:17.895
the the way people pay in lightning to add,

1342
01:55:18.600 --> 01:55:25.260
to to address a number of shortcomings in the user experience and a number of different ways people expect to pay, especially things like static invoices.

1343
01:55:25.880 --> 01:55:26.780
So that's huge.

1344
01:55:27.955 --> 01:55:35.895
Shipping, 0Conf, and other features that are kind of needed for a first class good mobile user experience and what people expect from existing lightning wallets,

1345
01:55:36.800 --> 01:55:37.860
That's gonna be huge.

1346
01:55:39.040 --> 01:55:40.660
And and just helping people

1347
01:55:41.040 --> 01:55:42.820
start building a lot more

1348
01:55:43.495 --> 01:55:50.715
lightning walls and a lot better UX and helping people not have to spend 4 developers, 3 developers full time just to maintain

1349
01:55:51.070 --> 01:55:55.810
stuff and actually enabling people to really start experimenting more with lightning, start building more stuff, start,

1350
01:55:56.510 --> 01:56:02.605
extending more stuff, and and, you know, getting stuff getting to the point where we can start, you know, having people build good,

1351
01:56:03.625 --> 01:56:05.405
dollar denominated lightning channels,

1352
01:56:06.105 --> 01:56:08.285
on on a mobile app. You know, that's that's

1353
01:56:09.140 --> 01:56:14.600
gonna be awesome, but, man, we've got a lot of work to do to get there. And and, yeah, you see, you can go to the lightning devkit.org,

1354
01:56:15.460 --> 01:56:23.915
if you wanna check it out. And we have a Slack and a Discord community because, I don't know, we like we like making sure we're available to anyone who has questions.

1355
01:56:24.695 --> 01:56:44.260
So you can you can join one of those. There's always someone around to answer questions. And and, you know, like like all these great folks, we try to be pretty hands on and pretty available to to answer any questions and to help you figure out what's going on and how best to to build what you wanna build. Hey, Yousef. We got a lot of work to do. Back to work? Yeah. Back to work. Thank you for listening.

1356
01:56:53.034 --> 01:56:54.895
Oh my god. Why is it so bright?

1357
01:56:55.515 --> 01:56:57.855
I feel kind of far away from you guys, but,

1358
01:56:58.240 --> 01:57:14.660
yeah. We can all move in on this. You you you wanna go on the couch? It's sure. Yeah. It's gonna be a little awkward. Actually, it's better if we stay in order for them, I think. Alright. Alright. Yeah. Sure. We're all good. I I hope we're we don't Yeah. Cut the camera people. Sorry. I think they framed the shot with that. That last chair on mine. So

1359
01:57:15.360 --> 01:57:16.260
welcome everybody.

1360
01:57:17.440 --> 01:57:21.219
My name is Ben. I'm host of the BTC Sessions on YouTube.

1361
01:57:21.840 --> 01:57:26.335
I guess I'll I'll just let you guys introduce yourselves. We'll start with Paul. Sure. My name is Paul Storitz.

1362
01:57:26.795 --> 01:57:30.494
We're gonna be talking about soft forks today, so I have a soft fork proposal, BIP 300.

1363
01:57:31.594 --> 01:57:34.310
I've also written a lot about soft forks in the past,

1364
01:57:34.790 --> 01:57:38.410
so I guess that's my intro. Awesome, Jimmy. I'm a bitcoin

1365
01:57:39.510 --> 01:57:44.945
expert I guess or educator or something. I I do a lot of stuff in bitcoin. I write lots books and,

1366
01:57:45.405 --> 01:57:48.305
yeah, I'm up here mostly to look pretty, I think.

1367
01:57:49.965 --> 01:57:50.705
Hey. I'm

1368
01:57:51.085 --> 01:57:58.449
Jeremy Rubin. I'm a Bitcoin core rabble rouser, and, I also have a software proposal that I've been doing called BIP 119,

1369
01:57:59.070 --> 01:58:02.635
and happy to be here to talk about it with Zelle. Awesome.

1370
01:58:03.255 --> 01:58:05.835
Welcome, guys. Let's give him a round of applause for being here.

1371
01:58:06.615 --> 01:58:07.015
And,

1372
01:58:10.160 --> 01:58:12.240
so I I wanna start this talk out,

1373
01:58:12.880 --> 01:58:15.540
by making it accessible to to,

1374
01:58:16.080 --> 01:58:22.235
you know, some people that may not be super familiar. So we'll just set a few baseline things, then we'll get into the weeds after that. So,

1375
01:58:22.615 --> 01:58:27.515
I'll open it up to anybody here, but let's just break down really, really quickly, briefly,

1376
01:58:27.840 --> 01:58:50.550
the difference between a hard and soft fork for whoever wants to take what I just teed up. I will do it because a fork is a very serious thing. It is really how the protocol changes from one protocol to a different protocol which can cause people a little bit of consternation because they worry about oh am I gonna lose the old things I really like about the old protocol and And that is the difference between the hard and soft fork, which is that

1377
01:58:50.850 --> 01:58:53.830
the hard fork is an absolute permanent split

1378
01:58:54.370 --> 01:58:59.235
where the you've formed 2 networks and it's you you break up and you are never getting back together

1379
01:58:59.614 --> 01:59:01.955
and then with the soft fork there's this theoretical

1380
01:59:02.495 --> 01:59:02.995
compatibility

1381
01:59:03.855 --> 01:59:04.355
where

1382
01:59:05.010 --> 01:59:07.590
all all the these different sub these different protocols,

1383
01:59:08.370 --> 01:59:11.590
are nonetheless interoperable with each other. So you can stay

1384
01:59:12.015 --> 01:59:26.989
this idea of it being compatible and opt in, which is a nuanced point, but the idea of the the old node, you can stay there. You can stay with the old protocol, and that is why that's what makes it soft. And I could talk more about that if you want, but I'm sure you can. I would say that it's

1385
01:59:27.875 --> 01:59:36.215
soft forks are backwards compatible. Yeah. Hard forks are not backwards compatible. And you, and the idea of a fork is that you have 2

1386
01:59:36.890 --> 01:59:40.190
blockchains or 2 ledgers that have some difference.

1387
01:59:40.650 --> 01:59:44.830
And that is terrible for any sort of consensus mechanism because

1388
01:59:45.185 --> 01:59:49.285
they're not in consensus. And that that's what we wanna avoid generally

1389
01:59:49.825 --> 01:59:52.325
and soft work or hard work. That's,

1390
01:59:53.550 --> 01:59:55.170
unless you are permanently

1391
01:59:55.550 --> 01:59:59.890
wanting to split like Bigchain cache. And and what precedent does that set for,

1392
02:00:00.350 --> 02:00:08.765
the, rather, for the user, like, in terms of a soft fork versus a hard fork? If you're a user, you're perhaps running a a Bitcoin node, for instance.

1393
02:00:10.070 --> 02:00:10.810
What responsibilities

1394
02:00:11.190 --> 02:00:22.185
do you or don't you have in a soft fork versus a hard fork? What do you have to do? So so I'll jump in there and just kind of with a more contrarian take right off of this and tell people what their responsibilities actually are. But,

1395
02:00:22.804 --> 02:00:25.625
ultimately, like, they're not really so different. Like,

1396
02:00:26.420 --> 02:00:35.239
both of them can result to a bad thing happening to your Bitcoin. And so from that perspective, they're the same. And I think, ultimately, what it comes down to is how do you participate.

1397
02:00:35.765 --> 02:00:41.545
And the choice of the soft work is really something that allows people who are just kinda disinterested in what's happening with development

1398
02:00:42.005 --> 02:00:42.405
to,

1399
02:00:42.885 --> 02:00:47.020
and and disinterested in upgrading or whatever to just, like, continue to be a part of the network.

1400
02:00:47.640 --> 02:00:52.060
The downside of that is is that, like, changes can happen to the Bitcoin network

1401
02:00:52.705 --> 02:01:27.039
even if you're not participating. So in some senses, soft forks are maybe bad because how do you oppose something that can happen if you're just not even aware that it's happening? And then hard forks, on the other hand, it's like, well, if you don't want it to happen and the rest of the network does it, now you're off the network permanently and that's, like, not really great. But on the other hand, for a hard fork, you have to have, like, much more overwhelming consensus to make it happen. So each of them have trade offs and ultimately, like, the end negative outcome is the same which is that, like, a bad thing could happen to you, but we get to choose the trade offs. And right now in the community, the dominant choice is that people prefer

1402
02:01:27.565 --> 02:01:39.260
seemingly Softworks, but that is a preference. It's not like a mathematical proof that one is superior to the other. Let's let's go a bit deeper into this. So one point. Yeah. So what what precedent does it set,

1403
02:01:39.960 --> 02:01:41.420
given that that Bitcoin

1404
02:01:41.960 --> 02:01:45.340
leans heavily? The the community has leaned heavily towards

1405
02:01:45.805 --> 02:01:51.665
keeping things backwards compatible versus protocols that have gone off and basically have regular hard forks.

1406
02:01:52.045 --> 02:01:53.185
What do we lose

1407
02:01:54.080 --> 02:01:54.580
by

1408
02:01:55.040 --> 02:01:55.540
normalizing

1409
02:01:56.000 --> 02:02:00.739
regular hard forks versus what has been preserved with Bitcoin? Well, the main main

1410
02:02:01.204 --> 02:02:09.385
problem with hard forks is that you're forcing essentially everybody to upgrade. And if you if they don't upgrade, then they're no longer part of the consensus. And that

1411
02:02:10.260 --> 02:02:11.400
who's doing the forcing?

1412
02:02:11.940 --> 02:02:24.330
If if if you're being forced by some central entity then you're clearly centralized because whoever made that hard fork is demanding it of you. This is how Ethereum works. They demand you to upgrade. If you're if you don't

1413
02:02:33.655 --> 02:02:35.435
the software that they tell you to run,

1414
02:02:36.295 --> 02:02:41.355
then then you're part of that consensus. In which case, it's not really consensus as much as it is

1415
02:02:41.690 --> 02:02:47.710
somebody from authority telling you what you have to run-in order to be compatible with the rest of the network. So

1416
02:02:48.170 --> 02:02:49.950
hard forks for me are

1417
02:02:50.565 --> 02:02:51.465
centralized. And

1418
02:02:52.005 --> 02:02:55.945
it's an indication of centralization, at least the way they've been used. So

1419
02:02:56.405 --> 02:02:56.905
for

1420
02:02:58.360 --> 02:03:04.300
for coins to go do that it reveals their centralized single point of failure. Whereas,

1421
02:03:04.760 --> 02:03:11.085
you know, with a software, what you what you have is this ability to be backwards compatible. You're not forcing anybody anything on anybody.

1422
02:03:11.864 --> 02:03:26.925
Hard works, like, almost all rules are up for grabs, including, you know, the supply limit and stuff like that, which I find an anathema. Like, part part of what you have that's very valuable about Bitcoin is that you know certain things aren't going to change

1423
02:03:27.385 --> 02:03:27.885
because

1424
02:03:28.585 --> 02:03:29.465
of the way,

1425
02:03:30.105 --> 02:03:45.735
because it's, backwards compatible, and it enforces the rules that you all know, including 21,000,000. Right? Like, that's Yeah. Sacred. But, of course, he just said that, but but Jeremy just said that soft and hard forks really aren't that different. So I'd like to maybe and you're saying they're very, very different, of course. And,

1426
02:03:46.454 --> 02:03:57.469
I agree with a lot of what you're saying, but we have to now maybe unpack this for the audience because this is where the rubber meets the road so to speak because this as I said the fork is a very serious matter of changing the protocol

1427
02:03:57.770 --> 02:03:58.989
and it was thought

1428
02:03:59.395 --> 02:04:06.215
that first of all the soft fork is clearly it's not only backwards but forwards compatible all the nodes share the same network

1429
02:04:07.460 --> 02:04:09.239
And it used to be thought

1430
02:04:09.540 --> 02:04:12.840
that because they were all compatible you can just stay where you were

1431
02:04:13.219 --> 02:04:15.239
and therefore the opt in property

1432
02:04:15.915 --> 02:04:16.655
came from

1433
02:04:17.275 --> 02:04:18.175
the the compatibility

1434
02:04:18.555 --> 02:04:19.055
property.

1435
02:04:20.235 --> 02:04:21.695
But it was later,

1436
02:04:21.995 --> 02:04:22.635
the couple

1437
02:04:23.110 --> 02:04:32.475
there were a couple sort of chinks in the armor of that, argument where Peter Todd proposed the evil fork idea where you can change lots of things with the soft fork, and then Segwit

1438
02:04:33.095 --> 02:04:34.715
actually increased the block size

1439
02:04:35.495 --> 02:04:40.635
with a soft fork which was sort of a very it was something that everyone had to experience.

1440
02:04:41.470 --> 02:04:46.850
There's the there's another case actually that I think is a very good example which is the s value signature

1441
02:04:47.550 --> 02:04:54.885
case where that is something that's very very soft and the very old definition of the soft fork was that if you got miners on your side

1442
02:04:55.265 --> 02:04:55.765
anytime

1443
02:04:56.225 --> 02:04:57.205
there the

1444
02:04:57.770 --> 02:05:00.110
2 different blocks were mine following

1445
02:05:00.410 --> 02:05:09.305
incompatible rules since the miners always went with 1 everyone would end up going along That was the old old definition of the software. So this s value

1446
02:05:10.405 --> 02:05:11.845
situation is where

1447
02:05:12.245 --> 02:05:32.094
so an example of something where it was 100% soft, but it was 0% opt in. You a a normal layperson had no choice but to upgrade the software. They could not send money. Yeah. I need to, like, break that down. Like Yes. A similar thing to this would be, like, if we decided PUSH was bad and then just said no more spending PUSH addresses.

1448
02:05:32.650 --> 02:05:34.250
Like, that would be a soft fork,

1449
02:05:34.570 --> 02:05:35.070
possibly,

1450
02:05:35.930 --> 02:05:42.335
and that would be confiscatory, and that would steal people's money, and that would be bad. And I think overall, it's one of these things where for,

1451
02:05:43.035 --> 02:05:47.695
hard forks, I think it's like there there is a propensity to to shove it down people's throat,

1452
02:05:48.090 --> 02:06:18.125
but it's more of a cultural value for what type of activity we want to do. And softworks generally align more with things we want to be more often, But you could do either on either, an example of this would be we could use all the same BIP 9 version bits. We can talk about what those are and, speedy trial and, you know, we'd have a delayed activation that would be, like, 2 years in the future for a hard fork. And that would probably be pretty good, in terms of not being something where we just, like, the devs decided there's a hard fork happening.

1453
02:06:18.425 --> 02:06:22.510
And but it still would be that old nodes at that 2 year mark would fall off.

1454
02:06:23.150 --> 02:06:57.740
There have been proposals previously. Like, somebody said, you know, Bitcoin Core should I think Luke junior made this point. Bitcoin Core should just, like, have a fixed number of block headers that can consume by default, and so it shuts off in 10 years. So all nodes just have a shelf life, and now every hard fork is a soft fork based on if you're running Bitcoin Core because we could deploy it, and then the node automatically shuts off after some fixed deadline. It's like, well, I don't love that, but, like, yeah, you can kinda map I don't love that. I one on the other. But I know my love. Ultimately, the I think the thing that, you know, to to wrap it up in the coherent point is,

1455
02:06:58.540 --> 02:07:04.720
hard or soft, like, you know, feature or whatever, what what matters is that we do these things in a way that involves,

1456
02:07:05.260 --> 02:07:06.160
mass participation

1457
02:07:06.460 --> 02:07:06.960
and

1458
02:07:07.395 --> 02:07:21.360
consent of the I I don't wanna say the word governed, but that's the phrase, you know, consent of the ungoverned. Oh, it's a good answer. I I would say that you can do evil things with a soft fork. I think that's the point that you're making. Of course, you can do that. You can eliminate segwit. You can eliminate

1459
02:07:21.900 --> 02:07:32.554
all all kinds of things by saying these are no longer allowed on the network. I I don't think we're denying that. The the real question, I think, in in your sort of equivalence of hard fork and soft fork is that,

1460
02:07:32.980 --> 02:07:34.280
okay, is it possible

1461
02:07:34.659 --> 02:07:41.159
to have sort of like a benevolent hard fork? I suppose in some metaphysical way, it can be somewhat benevolent.

1462
02:07:41.565 --> 02:07:50.030
But I I I think what we're saying is, with soft works, at least the ones that Bitcoin has done, it it's generally benevolent soft works, not the evil soft

1463
02:07:57.675 --> 02:08:04.975
within the space of softworks that I think, you know, benevolent or good things for the network are. Because it once you change

1464
02:08:05.320 --> 02:08:09.340
sort of, like, permanent rules or anything like that, that that opens up a whole,

1465
02:08:10.119 --> 02:08:16.744
like, can of worms that I don't think we wanna go down. So for for me, like, softworks are very important to,

1466
02:08:17.125 --> 02:08:19.625
like, stay within that area of softworks

1467
02:08:20.170 --> 02:08:20.409
and not

1468
02:08:21.130 --> 02:08:25.230
and, you know, obviously avoid the evil softworks. But, you know, go go with this,

1469
02:08:25.690 --> 02:08:28.005
sort of subset that's actually benevolent.

1470
02:08:28.945 --> 02:08:30.485
Let's let's go back historically,

1471
02:08:31.985 --> 02:08:40.800
in terms of Paul, when I was speaking to you over email prior to this, you you you made reference to it's a question of

1472
02:08:41.260 --> 02:08:46.925
of is it worth it in the instance of of a hard fork. And and then we saw historically, like, for

1473
02:08:47.225 --> 02:08:52.125
2017 when when, there's this push to go from 1 megabyte to 2 megabytes.

1474
02:08:52.500 --> 02:09:00.760
I mean, the the resounding answer from a a lot of individuals was no. We don't we don't wanna set the precedent of changing for for small incremental,

1475
02:09:01.515 --> 02:09:03.695
increases in in block size like that.

1476
02:09:05.275 --> 02:09:11.680
But we Bitcoin has hard fork before, so I'm wondering if somebody wants to maybe touch on It has. When it was.

1477
02:09:12.220 --> 02:09:18.240
I'm not sure that it ever intentionally has because the only 2 that I'm it's like kinda like 1 and a half. Mhmm. One was

1478
02:09:18.764 --> 02:09:21.344
when Satoshi added the OpNops in 2010

1479
02:09:21.724 --> 02:09:23.965
or something, and he's the creator. So he sort of

1480
02:09:24.685 --> 02:09:35.870
you know, it's like creators right or whatever. It, like, doesn't really make it's not really a very relevant consideration, right, since he created in the first place. And then there was the other one was after the, the summer 2015

1481
02:09:36.855 --> 02:09:37.755
database lock

1482
02:09:39.815 --> 02:09:46.075
situation. I'm not exactly sure what to call that, but there was something where a database configuration rule had

1483
02:09:47.070 --> 02:09:49.170
become a consensus rule without anyone knowing,

1484
02:09:49.630 --> 02:10:00.255
and then it had been changed. And so it is possible to sync old nodes, but you have to do this extra step, and so that sort of makes it a hard fork. And I don't know, like, no one has ever, like, intentionally

1485
02:10:01.675 --> 02:10:06.370
done a hard fork, like, through the whole peer review slow Yeah. Process.

1486
02:10:06.750 --> 02:10:13.555
Yeah. Well, debate depending on how you interpret the whole Maybe I just drank too much last night, but, I don't think either of those are hard forks.

1487
02:10:14.355 --> 02:10:18.275
I actually can't think of any that that because a soft fork is, like, sort of,

1488
02:10:20.355 --> 02:10:21.015
you know,

1489
02:10:21.610 --> 02:10:23.869
increasing the rules and, like, making it stricter.

1490
02:10:25.130 --> 02:10:27.869
And I don't think either Oh, Soft Fork is shrinking the rules.

1491
02:10:28.935 --> 02:10:30.855
Yeah. Soft fork is shrink you know, what

1492
02:10:31.815 --> 02:10:35.755
it's it's increasing the number of rules shrinking the set of things that are valid. Yes.

1493
02:10:36.215 --> 02:10:55.320
But I I actually can't think of it maybe, you know, again, the drinking thing. Okay. No. The opt addition of the opt I can't think of any that were actually a hard fork even, like, remove because then you're talking about removing, like, opcat and stuff like that? No. I'm sorry. Those he added the op nops, 0 through That's it. 20. They didn't exist. And he added them for the specific purpose of later using them as soft forks.

1494
02:10:55.984 --> 02:10:58.940
Who that is. Yeah. So he added, like so, like, what lay what later became up,

1495
02:11:00.199 --> 02:11:05.305
check template verify or whatever. Oh, not excuse me. Now now you've got to get confused. I'm talking about

1496
02:11:06.985 --> 02:11:08.525
check check lock time verify.

1497
02:11:09.145 --> 02:11:17.010
That was added by Satoshi as a blank thing that was like a blank check. So when he added all the blank checks, it was hard. But then when we repurposed them individually,

1498
02:11:17.710 --> 02:11:33.820
that was soft. But it doesn't make any difference because it was so long ago. Yeah. And I think also just in terms of, like, this this notion of, like, time ago, I think there's something, you know, to be said for, like, if you were considering a change and we knew 2 ways of accomplishing the identical goal in terms of the effect on the system,

1499
02:11:34.360 --> 02:11:40.285
except one had a lot more technical debt in how you might do it. One of the things that bothers me sometimes about

1500
02:11:40.665 --> 02:12:11.060
a software process is if you go through too much extra work to do the thing, you're actually signing up the rest of the future of humanity to, like, maintain technical debt forever. I'm like, it actually might not be the like, we might be able to swallow a small amount of governance now for saving, like, a bunch of complexity and potential risk in the future. Well, let's go down that road. In in what instances would you see a hard fork as as not an absolute no, like, for each of you? What what what I agree with Jimmy that the the you don't want to do see, the the way it kind of

1501
02:12:11.905 --> 02:12:12.965
played out was,

1502
02:12:13.905 --> 02:12:20.645
for a while, I thought or I guess people agreed with me also thought that the soft fork sort of protects us from arbitrary

1503
02:12:21.610 --> 02:12:36.515
tyranny by the development process or something else because you can stay on your old node and then move to the new node if you want or stay. But then now these things have been just these ways of discover that equivocate the hard and soft work is sort of modern

1504
02:12:37.989 --> 02:12:45.290
things that are make it so that they're they're very similar in terms of what you can do. And so, yeah, the way I see it, we lose some of the protection. And then

1505
02:12:45.655 --> 02:12:46.395
what I

1506
02:12:47.175 --> 02:12:51.835
my BIP, BIP 300, is really about ending all soft and hard forks and putting

1507
02:12:52.135 --> 02:12:53.900
them into to some extent,

1508
02:12:54.380 --> 02:13:02.355
so that the protocol can do an unlimited number of hard and soft forks without actually without actually changing at all. So the protocol can have a fixed

1509
02:13:04.275 --> 02:13:09.895
amount of code. You don't need to do any pull requests or write anything else. And I kind of feel that we should move towards the direction of

1510
02:13:10.670 --> 02:13:11.170
not,

1511
02:13:12.110 --> 02:13:27.120
changing layer 1 Bitcoin code at all. I'll give you a really concrete one where I think it's okay, which is if we did a soft fork that turned out to be constabulary for a user who can demonstrate that, you know, that what they were doing, their funds got stuck, I would advocate for a hard fork to

1512
02:13:27.740 --> 02:13:33.040
remove that rule and allow the user to get their funds out because it was the the software community stole money from this person.

1513
02:13:33.405 --> 02:14:07.550
Like, to me, that's a bad thing, and they probably should have been more vocal in that process. But if we have to patch in a hard fork to say, we will allow this transaction to proceed to restore this person's funds, I I think that that would, at least from my perspective, like, I don't love the governance around it. That would be in the shape of the right thing to do. Well, that that would be interesting because you're kind of assuming that an evil software could go through and that you have to reverse Not not evil. So for example, if I wrote a smart contract that was, like, in early as a Bitcoin using opt cat to do something and then cat got soft worked out Mhmm. Which it did. And then I demonstrated, hey. Look. Like, imagine, like,

1514
02:14:08.045 --> 02:14:08.945
you know, I don't

1515
02:14:09.245 --> 02:14:23.620
know, how Finney comes back and he's like, hey, you know, by the way, like when and he was still, you know, around at this point, but he's like, by the way, when you did this, I couldn't advocate for myself, but I got unfrozen. And, like, and now I can't get to my coins because you thought and and we talk about doing these things all the time.

1516
02:14:24.195 --> 02:14:38.600
There's this thing called and I don't wanna pick on anyone in particular, but, like, the great consensus cleanup to clean up some of these really, like, edge condition things that we don't think anybody actually uses. But if somebody relied on that, I would wanna honor the Reliance interest. So but to to push back against that,

1517
02:14:39.060 --> 02:14:42.280
isn't that setting the same kind of precedent that was set with the Dow?

1518
02:14:42.655 --> 02:14:50.020
Yeah. I I I I kind of agree with what you're saying here because I I I don't think you wanna hard fork for any of that stuff. If if,

1519
02:14:51.140 --> 02:14:52.760
The time to speak up is at the

1520
02:14:53.540 --> 02:14:56.200
soft fork, hey, you're gonna confiscate some of my money.

1521
02:14:56.580 --> 02:15:09.530
If you don't do that at that point, now it's like, oh, you know what? By the way, I have this thing So I gotcha. Didn't we just say the whole point of the soft work was that if you don't wanna be a part of whatever these people are doing, you can ignore what's going on?

1522
02:15:09.990 --> 02:15:13.210
Yes. But you were saying that before, but that's also the the

1523
02:15:13.510 --> 02:15:15.450
the feature of it that's now, like,

1524
02:15:15.824 --> 02:15:29.260
that, sort of fading away. It doesn't it's not present. Well, I I didn't I didn't point that. I said it's backwards compatible. Well, I get the I think part of the point of the soft fork is that, like, a user who and these aren't things that aren't, like, necessarily, like, evil. It's just like things that we do that have an unanticipated

1525
02:15:29.560 --> 02:15:31.580
consequence. But, like, if you are

1526
02:15:31.960 --> 02:15:32.460
a,

1527
02:15:32.825 --> 02:15:42.445
you know, relying on this thing and you're not paying attention to what's happening, like, this is a big deal for us developers is that we don't want to make it feel like the community has to pay attention to what we're doing. We actually would prefer,

1528
02:15:43.120 --> 02:15:53.125
not for, like, reasons of, like, hiding stuff, but we'd prefer if we operated in a way that most of Bitcoin doesn't have to care if we're doing something to tinker with it. But if that does happen, like, I I just don't, you know, like

1529
02:15:54.225 --> 02:16:05.160
like, I I would see if I were involved in such a thing, I feel a personal responsibility to work on restoring funds. Maybe if it's a small amount of money, you just pay it out as, like, a, okay. Sure. We'll make you whole. But I I do think that it's that it's, like, sort of a

1530
02:16:05.880 --> 02:16:13.315
like, it it ruins part of the promise of softwares if somebody can come forward later and be like, you did something that's incompatible with what I was doing, and now my funds are frozen.

1531
02:16:13.650 --> 02:16:33.950
You know, I think I can reply to that by answering your question about what kind of hard fork actually would work in practice, maybe, because it doesn't make any difference what I think might I might like or whatever. But, I think you'd really have to get buy in from the most important group in Bitcoin, which is the Bitcoin investor. And they are probably not technical, which is

1532
02:16:34.410 --> 02:16:37.790
means that they the status quo will have an enormous amount of

1533
02:16:38.186 --> 02:16:40.186
leverage, for lack of a better word. And,

1534
02:16:41.465 --> 02:16:46.205
they you also need to make it seem as though this is in their best interest,

1535
02:16:46.710 --> 02:16:47.210
which

1536
02:16:47.830 --> 02:17:04.529
probably would it would be almost impossible if you were saying, like, well, some people lost their money somehow, and we need to get it back. I would imagine it would make a lot of people nervous. And so I'm not I share your suspicion that that would that type of a hard fork to reassign funds to people would be very would be viewed with a It would be very

1537
02:17:04.830 --> 02:17:11.569
skeptical. And also, like, we're we're presume we're doing, like, a presumption on top of a presumption that there's a soft fork

1538
02:17:11.925 --> 02:17:21.660
that somehow confiscates someone's funds because it was used in this very weird way. An example would be like before SegWit, somebody used the, you know, particular

1539
02:17:22.520 --> 02:17:32.024
form and, it's okay. Now now you can't redeem it because, you know, Segway rules make it so that you can't you you can't redeem that. Like, that's a very

1540
02:17:32.484 --> 02:17:36.990
specific like, you you almost have to be pathological to have done that. And

1541
02:17:37.370 --> 02:17:37.770
it's

1542
02:17:38.330 --> 02:17:43.470
and we try to sort of, like, make sure that doesn't happen. And it's

1543
02:17:43.850 --> 02:17:51.226
it's like such a corner case to me that I I I don't see this as, like, a thing that would realistically happen. There there is something,

1544
02:17:51.846 --> 02:17:53.540
where, like, in Bitcoin,

1545
02:17:55.120 --> 02:18:22.415
we have something called, like, the, like, sequence field. Mhmm. And usually well, let me jump up for a sec. Usually, when we have one of these things like a SegWit version, we try to reserve it and make it so it's really hard to send to the network. So we're kind of communicating very clearly like, hey. You shouldn't rely on using this thing because it's for an upgrade. If you use it, like, we can't guarantee what will happen. So it's kind of undefined behavior. In programmers, we all love undefined behavior. Right? So that that's kind of okay. Use undefined behavior,

1546
02:18:22.875 --> 02:18:25.775
get screwed. Like, that that's that's a clear contract. But

1547
02:18:26.235 --> 02:18:49.290
what happened is we had for end sequence, which is how you do, a relative time lock in Bitcoin. We had something that was intended for future upgrades, but we forgot to do this thing where we don't let you send it to the network. And so people actually started using it. And recently, I I found this, and I was like, hey. We actually kinda screwed up on this. We don't prevent you from broadcasting this. Is anybody using this? Because you probably, like, undocumented,

1548
02:18:49.750 --> 02:18:50.810
unspecified behavior.

1549
02:18:51.270 --> 02:19:24.880
And then we're like, okay. No one's using it. Good. Maybe we can do a just not even a software, just a policy change to make them un broadcastable. And then people from the Lightning Network were like, no. Actually, we decided to put some extra metadata in there because we need a memo field. We're like, why? And they're like, oh, it's the cheapest place to put it. And we're like, okay. So now we've, like, kind of and this is kind of still being debated and discussed, but, like, now we've maybe, like, permanently burned end sequence for future upgrades. And other people have been like, no. We haven't burned it. We just need to do this trick and that trick and this other trick. I'm like yeah. I I personally, like, I'm not sure. Is it can a can, like, a behavioral norm or a tradition

1550
02:19:25.645 --> 02:19:26.145
become

1551
02:19:26.525 --> 02:19:32.420
a mandatory soft fork or something? Yeah. Yeah. Possibly. And we have a we have 4 bytes, and every transaction has

1552
02:19:32.900 --> 02:19:38.580
a version field that it's like, what if people started using that or something? Does that just We kinda do. Right? I've I've checked

1553
02:19:39.700 --> 02:20:14.869
But But we use, like, 3 of the of the 4,000,000,000. We use, like Yeah. Well well, I guess that that that's what I was just saying. You know, in this example, this is entirely something where I could imagine that if I had like, and if I weren't, you know, maybe just like a very selfish developer, I could have been like, I noticed this thing, but I wanna propose something for end sequence. And so I'm just not gonna tell people about this issue. And we might have gotten pretty far down the software path before anybody actually noticed that, like, hey. Actually, we have a hard dependency on on using this. And And that's an example where I just think that these things are at the limits of our capabilities as, like, a software community. Well, I I mean, in a sense, like, the

1554
02:20:15.915 --> 02:20:22.415
you you don't want to disenfranchise the people that are currently, like, kinda using it, and you know, like

1555
02:20:22.955 --> 02:20:34.500
there's no permission required. That's that's kind of the whole point. So if some people are using it, then, you know, I yeah. It sucks as a developer because you don't have as much freedom to use

1556
02:20:34.865 --> 02:20:35.766
certain fields or

1557
02:20:36.145 --> 02:20:37.045
whatever. But that's

1558
02:20:37.425 --> 02:20:41.845
kind of the burden that you have as somebody that's trying to add

1559
02:20:42.360 --> 02:20:47.100
features that you want to add. I think that's entirely fair. It's it's it's okay

1560
02:20:47.800 --> 02:21:01.780
that, you know, sequence field is used in a way that maybe you don't like, but, you know, it is what it is. It's you can't force anybody on the network. That's the 5 minutes. So I wanna we've we've been discussing a lot about things that can go wrong with soft forks, implications for people,

1561
02:21:02.400 --> 02:21:04.980
despite it being a backwards compatible mechanism.

1562
02:21:05.681 --> 02:21:07.780
I'd like to talk a little bit about,

1563
02:21:08.400 --> 02:21:09.940
right now we're talking about

1564
02:21:10.556 --> 02:21:13.535
preventing bad things being put into the code. But

1565
02:21:13.915 --> 02:21:16.335
on the other side of things, we also want to,

1566
02:21:16.955 --> 02:21:31.436
for the time that it's still malleable enough to introduce these types of things, things that can give us huge improvements in Bitcoin, we still want to be able to do them. And I wanna maybe dive down the road of of activation methods and what we've gleaned from things like

1567
02:21:31.976 --> 02:21:32.476
like

1568
02:21:33.020 --> 02:21:33.520
SegWit,

1569
02:21:34.141 --> 02:21:34.641
because

1570
02:21:35.101 --> 02:21:38.160
obviously, there was we we had some difficult time there.

1571
02:21:38.700 --> 02:21:41.440
Things that should not have been maybe as contentious

1572
02:21:42.795 --> 02:21:43.695
as they were,

1573
02:21:44.075 --> 02:21:51.615
became contentious. So what do you guys feel that we learned about activation methods from SegWit to start with?

1574
02:21:52.301 --> 02:21:55.040
Well, I I I don't know if,

1575
02:21:55.500 --> 02:22:03.485
like, we can assign moral value, like, saying we should it should have been easier or whatever. It was what it was. Right? And there there's no

1576
02:22:04.025 --> 02:22:11.840
sort of moral judgment that I I think we can really cast on it. What what I will say though is that what we showed was that the corporations

1577
02:22:12.300 --> 02:22:15.760
were not in control. And that was a major major

1578
02:22:16.395 --> 02:22:26.330
event in Bitcoin history. And it's not a coincidence that Bitcoin went up in price afterwards. At least I don't think so because we proved that that corporations don't control it.

1579
02:22:26.870 --> 02:22:27.770
Now, like,

1580
02:22:28.149 --> 02:22:40.564
like, what what's what's the right way? What I mean, ultimately, I I I'm not sure that it's like a permanent thing. Right? Like, oh, 90% is the right number, and that's gonna be the case for the rest of time or whatever.

1581
02:22:41.130 --> 02:22:44.590
I I think each soft work has its own sort of, like,

1582
02:22:45.210 --> 02:22:45.949
sort of,

1583
02:22:47.130 --> 02:22:51.835
environment in which it has to activate, and it you you have to

1584
02:22:52.535 --> 02:23:07.710
get consensus whatever way you can for that particular software with each one. And that kinda sucks for people like the like, that that are on stage with me because Yeah. We we they wanna get something on there. And it's like, well, what's the process? Well,

1585
02:23:08.145 --> 02:23:24.550
I I hate to tell you, but there there is no process. And like you you just kinda have to go get consensus, and I don't know exactly what that looks like. But it's a it the burden is on you to prove to the rest of the community that this is something that's desirable. Yeah. I can tell you, and certainly, I think Jeremy will agree that it's very.

1586
02:23:24.930 --> 02:23:32.135
You're just sort of like, I don't get consensus, and it's, like, oh, okay. Thanks. Earl earlier, I said it's, like, kinda Groundhog Day. You come out. You see if there's.

1587
02:23:32.995 --> 02:23:34.285
Is there consensus today? But,

1588
02:23:35.710 --> 02:23:46.645
I think just kinda adding onto that, I think people really want to, learn from anecdotes. And I only care to learn from data, is sort of my perspective on this. And I don't think that there's any generalizable

1589
02:23:47.025 --> 02:23:55.490
lesson out of what happened with Segway other than maybe, oh, corporations, like, don't have this unilateral control. Like, if if they did, we would have seen something else in this anecdote.

1590
02:23:56.270 --> 02:23:58.210
But even that is not, like, the most

1591
02:23:58.511 --> 02:24:18.229
useful thing because maybe for, like, a less because Segway had controversy around it. Maybe it itself wasn't as controversial, but, hey. It kinda was a little bit conciliatory to some miners who developed some IP around it. Right? And that's, like, maybe something that we are, like, we fucked up. Like, sorry for this livestream or whatever, but, you know, we messed up and, you know, we we don't want to,

1592
02:24:19.194 --> 02:24:31.270
we we really strive not to break anyone's mining hardware. Yeah. And that's something that, like, I think it's a big egg on the face of the, you know, development community that, like, okay. Like, if if I want to learn something, it'd be like, we should probably have much better integration testing

1593
02:24:31.649 --> 02:24:33.510
that we have some way of making sure,

1594
02:24:34.130 --> 02:24:52.290
that, you know, every developer is, like, intimately familiar with how mining hardware works so that maybe we can, you know, avoid things like this in the future. That said, from my perspective, we're probably not gonna have a lot of forks that are like SegWit, even soft forks. Most of them are much simpler. So that if you're trying to generalize a lesson from SegWit activation

1595
02:24:52.671 --> 02:24:58.774
for check template verify, which is, you know, what I work on, it's like I think most of the learnings there just don't really map.

1596
02:24:59.075 --> 02:25:13.610
You know, there's some stuff that maps, but, like, it's a very different thing. It's a very different mining climate. And it's a change that is just like it's not coming in to solve something that's controversial. It's something that every it's in a problem space that I think most people are like, oh,

1597
02:25:14.345 --> 02:25:36.045
we're gonna make the, I I say, make the hardest money ever even harder. Yeah. Right? And it's like, okay. If we can all agree on that, we can all agree on things self custody. Like, I think that those are things that just like the the the the type of thing the the lessons of like, oh, these things have to be really hard and we've gotta really, like, be afraid of, like, pissing people off. It's like yeah. I I'm not sure that everything goes through that same sort of gauntlet.

1598
02:25:36.506 --> 02:25:37.405
So, I mean,

1599
02:25:37.851 --> 02:25:44.110
you know, Segwit was controversial. You're saying there's not a lot of those that are are likely to we did just have a a large,

1600
02:25:44.891 --> 02:25:45.391
upgrade

1601
02:25:45.770 --> 02:25:47.595
soft fork that was not,

1602
02:25:48.395 --> 02:25:50.095
especially controversial, Taproot.

1603
02:25:50.715 --> 02:25:56.895
And so I'm wondering if if you guys just for people watching that are unfamiliar, maybe just touch on what

1604
02:25:57.400 --> 02:26:03.820
that enabled for us and, and and where that can go and and things that are still needed beyond that that could

1605
02:26:04.455 --> 02:26:08.475
be implemented later. But start with, what what did Taproot do for us?

1606
02:26:09.814 --> 02:26:20.199
Well, for me, I I think it gave us a lot more privacy. So you you have this mass syntax tree and you you you have the single key unlock on so you have the key spend and the,

1607
02:26:20.944 --> 02:26:22.965
and the script spend. And you you,

1608
02:26:23.824 --> 02:26:49.540
those were 2 different types of addresses all throughout Bitcoin's history up until top road. So you had the pay to pubkey hash addresses, the addresses that start with a 1, pay to script hash addresses, which are the addresses that start with a 3. Even within SegWit, there was the Beck 32 addresses that were shorter and then the Beck 32 addresses that were longer. 1 was pay to witness pubkey hash. The other one was pay to witness script dash. You've combined those. So, essentially, you can't tell which one

1609
02:26:50.080 --> 02:26:51.380
and and in fact,

1610
02:26:51.760 --> 02:26:52.580
all Taproot,

1611
02:26:52.960 --> 02:26:54.660
spends can can be

1612
02:26:55.404 --> 02:26:56.864
one or the other, and

1613
02:26:57.165 --> 02:27:01.345
you have the option of both. And there's no real penalty that you're paying for that.

1614
02:27:01.725 --> 02:27:16.114
And that that gives you additional privacy. But also you have this tap tree so you you you can make some very very complicated scripts or like have many many different conditions under which you can unlock it. And many of them can be hidden behind, you know, many,

1615
02:27:16.654 --> 02:27:22.520
you know, very deep in the mastery and so on. So you know, depending on the probability of their execution.

1616
02:27:24.261 --> 02:27:26.520
And this gives us a lot more flexibility

1617
02:27:26.980 --> 02:27:28.681
in sort of how we,

1618
02:27:29.475 --> 02:27:29.955
spend,

1619
02:27:30.354 --> 02:27:43.061
you know, have backups to our funds and stuff stuff like that, most of which hasn't really been, you know, adopted by wallets and so on. So I look forward to sort of seeing a lot of that. But I would say that

1620
02:27:43.440 --> 02:27:45.301
the main benefit is that

1621
02:27:45.655 --> 02:27:53.435
we we've sort of upgraded the security for each user. So you you have this ability to go and back up your wallet

1622
02:27:53.851 --> 02:27:58.110
to 2 of 3 of this and 4 or 5 of this and even

1623
02:27:59.530 --> 02:28:00.030
have

1624
02:28:00.865 --> 02:28:13.400
public companies or something that, you know, publish their public key and have it possible for them to unlock it. And they don't even know that they hold those keys. Right? Like, those are some really cool things that we can have within

1625
02:28:14.261 --> 02:28:14.761
Taproot.

1626
02:28:16.075 --> 02:28:24.015
You know, so I I see it as like a beneficial software but to go back a little bit to, you know, you know, what what

1627
02:28:24.480 --> 02:28:27.620
what Jeremy said, and I think he's absolutely right on this.

1628
02:28:28.000 --> 02:28:30.900
You know, the the process for Segwit and Taproot,

1629
02:28:31.635 --> 02:28:42.840
I I really don't think you can have generalized lessons. And I see that kind of as a feature, not a bug. Right? Like, it is frustrating for these guys, obviously, to, you know, have to go and try to find,

1630
02:28:43.380 --> 02:28:48.820
okay. How do I get consensus? And, you know, Paul described it as Kafkaesque or whatever. It's like, how do how do I

1631
02:28:49.875 --> 02:28:51.015
Well, you know,

1632
02:28:51.395 --> 02:28:56.535
if we had, like, a strict process or something, that I I think that would imply that we have

1633
02:28:57.070 --> 02:29:14.915
a permanent governance model or something. Right? Like and that's exactly what we don't want. This is a decentralized network. And in a decentralized network, what you need to do is convince the people that are part of that decentralized network. And there are more people coming in and out of this decentralized network all the time. So we should expect

1634
02:29:15.540 --> 02:29:19.319
the sort of process by which we add soft forks

1635
02:29:19.700 --> 02:29:25.295
to be different each time because we have more constituents. We have more use cases. We have different

1636
02:29:26.315 --> 02:29:29.056
features, different thing, things that are happening.

1637
02:29:29.676 --> 02:29:31.375
And in a sense, like,

1638
02:29:31.730 --> 02:29:46.176
each each software has to be different because you have different people using it, and that's a good thing. I I don't see that as a bad thing. Yeah. I I completely agree. I don't think that the controversy about Segwit, I think, was almost 0% about the actual Segwit part.

1639
02:29:46.690 --> 02:29:50.070
I don't I'm even skeptical that basic boost had anything to do with it.

1640
02:29:50.610 --> 02:29:54.790
Mhmm. So I totally agree with that. It's an extra layer of irony with BIP 300 because

1641
02:29:55.155 --> 02:30:06.550
what I'm sort of saying is that it should I I can make it not if you just give me this one thing, it won't be cop casks anymore because it will be, there won't be any more changes to layer 1 Bitcoin. And if you wanna do any hard or softworks,

1642
02:30:07.010 --> 02:30:07.670
the process

1643
02:30:08.050 --> 02:30:11.351
is now sort of inside the BIP 300

1644
02:30:11.976 --> 02:30:18.936
activation, which occurs without any anyone changing any lines of So what's the pushback to that? Well, I think it's just a very abstract idea. I think there's a lot of,

1645
02:30:20.061 --> 02:30:24.480
there's a lot of, like, so directed this to a storage solution. For them.

1646
02:30:24.940 --> 02:30:27.841
I think part of it, though, is that BIP 300 is about escaping

1647
02:30:28.665 --> 02:30:31.886
Bitcoin Core to go to a different piece of software, and I think that's inherently

1648
02:30:32.346 --> 02:30:53.940
that I think that baffles people, actually. People are like, don't but don't we have everything perfect in Bitcoin Core? I I really don't like that. Like, Lightning requires external software, you know, for example. It's like Yeah. So I think that, so right. It doesn't really it doesn't really apply, but I think that's part of what people sort of stumble over. It's also there's other features of it that are very different or maybe, like, it it alters who

1649
02:30:54.641 --> 02:31:00.500
is the most important person, I think, to some extent. So that, I think, may have something to do with it. But I think it's also

1650
02:31:00.985 --> 02:31:04.445
the the since it opens up this unlimited space of

1651
02:31:04.985 --> 02:31:05.805
of of possibility,

1652
02:31:07.305 --> 02:31:07.805
people

1653
02:31:08.130 --> 02:31:08.530
are

1654
02:31:09.090 --> 02:31:12.390
the very conservative Bitcoiner is sort of trying to wonder,

1655
02:31:14.610 --> 02:31:25.215
will will one of those infinite things be be really, really bad? And the answer is no because it's BIP three hundred is designed very cleverly so that your full node is totally ignoring everything that is happening

1656
02:31:25.595 --> 02:31:34.570
on those other networks, which is unlike the hard fork and unlike even the the well, we thought the soft fork had that property, but it doesn't really have that property. So this is

1657
02:31:34.995 --> 02:31:42.295
designed to be a big improvement on the process, but it must go since it doesn't exist yet, it must go through the process. Maybe instead of, like, hard fork,

1658
02:31:42.840 --> 02:31:52.745
you should rename drive change to over easy forks. Yeah. Over easy fork. I think people are saying, like, people have tried to change the terminology. As I wrote a whole article about this at one point about people's

1659
02:31:53.226 --> 02:32:12.645
changing the terminology and how the existing terminology doesn't really work because and then there's a very funny thread between I mean, I don't know how far we should just throw this out out into, like, other people, but there's a Reddit thread between Adam Back and Luke Dash junior where they're, like, they're going back and forth about whether or not something is a hard fork, and it's very funny. It's, like, they really don't agree. But it's like it's because

1660
02:32:13.425 --> 02:32:14.645
the the concepts have,

1661
02:32:15.425 --> 02:32:19.000
they don't have the properties that people thought they had, I think, when it originally,

1662
02:32:20.280 --> 02:32:26.625
defined. And that's that's something that we we really haven't defined in talk. Right? Is is the definition

1663
02:32:26.926 --> 02:32:31.665
of a soft work. And, you know, like, we we thrown around terms like evil soft work or whatever.

1664
02:32:31.980 --> 02:32:37.761
And the and this is a little bit of a problem because, you know, like, for some,

1665
02:32:38.221 --> 02:32:47.845
developers, like, that's not a software. That's actually a hard fork or something like that. And it's like these are these are, you know, these things matter. Like, they're they're technical minutiae

1666
02:32:48.601 --> 02:32:51.420
that's not transparent to most users,

1667
02:32:52.040 --> 02:32:53.580
but they they matter.

1668
02:32:54.120 --> 02:32:56.860
And, you know, this is where, you know,

1669
02:32:57.285 --> 02:33:01.064
consensus building is especially hard. Again, I feel for these guys. Right? Because

1670
02:33:01.365 --> 02:33:09.290
it's not easy. It's really not. Yeah. So we got about 4 minutes left. I think the last thing I'm gonna lob at you guys is

1671
02:33:11.350 --> 02:33:12.890
what do you see as

1672
02:33:13.505 --> 02:33:15.284
what's next coming down the pipeline?

1673
02:33:15.665 --> 02:33:17.765
And then, also, at what point,

1674
02:33:18.305 --> 02:33:22.484
if ever, does Bitcoin just ossify and these conversations are moot?

1675
02:33:24.140 --> 02:33:43.030
I don't know. So I guess, like, in ossification, it's a popular topic. People probably don't necessarily know what that means. It means the the thing turns to bone. It's like you can't change it anymore, and so just stop trying. And it also gets kind of a pun because it's like open source software. So the thing is if you look at, like, societies

1676
02:33:43.410 --> 02:33:44.950
in general through history,

1677
02:33:45.650 --> 02:33:53.905
they have some amount of, like, technologically complicated product that they can produce, and it's a curve. And then when that curve starts turning the other way,

1678
02:33:54.605 --> 02:33:57.025
so the society is usually, like, imminently collapsed.

1679
02:33:57.550 --> 02:34:11.055
It's just sort of a phenomenon of, like, okay. There's some sort of, you know, the decline of the Roman Empire. It's like, okay. Well, you look at the technologies they were producing. And I think that for this ossification, like, maybe we can get Bitcoin to the point. But if we if we get to a point where we don't have the type of developers

1680
02:34:11.675 --> 02:34:17.200
available who could produce the same type of artifact, I think we get ourselves into really hot water,

1681
02:34:17.980 --> 02:34:20.320
just in terms of, like, Bitcoin as a society.

1682
02:34:21.580 --> 02:34:22.940
And that's something that really,

1683
02:34:23.415 --> 02:34:26.955
concerns me. And I think one of the thing ways that you defray that is by keeping

1684
02:34:27.335 --> 02:34:30.955
talent fresh that can actually work on these complicated topics and understand

1685
02:34:31.340 --> 02:34:48.065
how Bitcoin even works. And that's something that that does concern me in terms of, like, is this ossification of Bitcoin going to happen? It's like, I actually think it's sort of like the demise of Bitcoin if it does, even though I think the idea of we wouldn't have to change it is appealing. Yeah. I'm gonna disagree with that. I really don't think of this as

1686
02:34:48.641 --> 02:34:53.620
technology first. I think of it as money first. And money is better when it doesn't change. And

1687
02:34:54.000 --> 02:34:55.620
at some point, yeah, I think it'll.

1688
02:34:55.936 --> 02:35:02.676
And I I don't think that's necessarily a bad thing because you have rules that are permanently in place, and you know

1689
02:35:03.030 --> 02:35:06.650
how to plan for the future as a result of money being

1690
02:35:07.030 --> 02:35:11.210
permanent. And and that ability to plan for the future is critical to entrepreneurship,

1691
02:35:11.590 --> 02:35:19.745
to civilization building and all that stuff. And you know, yeah there are sort of like technological curves. It's usually because of

1692
02:35:20.125 --> 02:35:21.905
bad money that you get

1693
02:35:22.320 --> 02:35:30.260
sort of like this, technological fall off or something like that because you allow in a lot more rent seekers and so on. So for me,

1694
02:35:30.695 --> 02:35:40.280
I don't see Bitcoin that way, that if we stop, like, soft working or something or adding features, that it suddenly, like, means that we're on the decline or something like that.

1695
02:35:40.920 --> 02:35:48.940
Money that stays that that's easy to predict is a very good feature of civilization. I see that as, like, a stable foundation,

1696
02:35:49.845 --> 02:36:05.990
of, having a civilization built on the stable foundation of money as a very good thing and allowing, which allows civilization to thrive. I I would say, Jim, I know we're a little on time, but, like, I find bugs, like, relatively often. And,

1697
02:36:06.325 --> 02:36:10.425
like, to fix them, like, I have to have a lot of specialized knowledge. And if we don't know how people who are

1698
02:36:10.726 --> 02:36:28.805
understanding how these things work, adversaries will continue to find them, and then they can take out the system over time. That that's what scares me about it. I'll I'll cede it down. I'll leave it to Paul. You got one minute left. Okay. Great. I think it's a very nuanced point. I think there's some things that have ossified. Like, you could argue different parts of, like, the network,

1699
02:36:29.345 --> 02:36:31.285
the, infrastructure of the Internet,

1700
02:36:31.745 --> 02:36:32.245
have

1701
02:36:32.570 --> 02:36:35.950
sort of they're sort of here to stay forever, warts and all. Right?

1702
02:36:36.410 --> 02:36:46.175
I mean, again, obviously, I'm a proponent of this bit 300 thing, which and then ossifying. So I I am concerned about the exactly what you're talking about, which is that we want something reliable for the long

1703
02:36:46.635 --> 02:36:50.015
term that that is not is tamper resistant, basically.

1704
02:36:50.490 --> 02:36:54.250
But I also agree with Jeremy because I do think that

1705
02:36:54.730 --> 02:37:06.705
I don't, you know, I don't agree that money is actually very stable across time. I mean, after all, it moved from shells to gold, and then it became banknote money. You can say whether or not you hate that, but then it started becoming Bitcoin. But these are those are all changes.

1706
02:37:07.150 --> 02:37:08.450
And I'm not sure that

1707
02:37:08.990 --> 02:37:26.250
in the modern world, people are very, you know, people are very I think in a sense, like, what matters for Bitcoin is the UTXO set. Yeah. And that's, like, ultimately the thing that matters a lot, and we can have any, you know, system that we devise around that, but it's really the property rights system that we have to maintain over time. Awesome. I think we'll leave it there.

1708
02:37:27.110 --> 02:37:31.290
Gentlemen, thank you so much for being here. Let's give him a big round of applause. Alright.

1709
02:37:32.631 --> 02:37:33.931
Cool. Thank you.

1710
02:37:38.455 --> 02:37:38.955
Hello.

1711
02:37:39.415 --> 02:37:40.555
How's everybody doing?

1712
02:37:41.015 --> 02:37:49.850
Woo. Got that, nice belly full of food, hopefully, and ready to listen to it talk about discrete log contracts. And so let's just start off with a raise of hands.

1713
02:37:50.229 --> 02:37:52.569
How many people have heard of DLCs before?

1714
02:37:53.405 --> 02:37:57.585
Okay, quite a few people. How many people have tried DLC's before?

1715
02:38:00.540 --> 02:38:14.245
Quite a few less people. So I, you know, I gotta start off the talk with a little bit of shilling. We're doing some DLC demos right after this talk by the big moon in the expo hall in the esports gaming arena. If this stuff interests you that we're talking about today,

1716
02:38:14.645 --> 02:38:20.230
come get some hands on experience with it, bring some sats, bring an address that we can send the payout to for a DLC,

1717
02:38:20.690 --> 02:38:34.064
and a fun bet idea. And, you know, what we're gonna talk about here today on this panel is kind of, you know, what DLCs are, what problems do they solve, and how they actually work. So, kind of like kicking us off here, I I wanna start with, you know, introductions.

1718
02:38:35.090 --> 02:38:40.229
Taj, do you wanna start? Sure. Sorry. I'm Taj Dreyja. I've been working on Bitcoin for a long time.

1719
02:38:41.330 --> 02:38:45.935
I invented the Lightning Network with Joseph Poon back in 2015. And similar

1720
02:38:46.715 --> 02:38:54.960
from that, also wrote the paper Discrete Log Contracts a couple of years after that and introduced this way to do smart contracts on Bitcoin.

1721
02:38:55.500 --> 02:38:59.840
And I'm actually mostly working on UTRIXO, a different new Bitcoin thing.

1722
02:39:00.220 --> 02:39:06.605
But today, we're talking about DLCs. And so I'm definitely really excited to see that, like, people are actually starting to use it and stuff. So it's great.

1723
02:39:07.305 --> 02:39:13.330
Tony, cool. Hey, everyone. I'm Tony. I'm one of the cofounders and CEO of Atomic Finance.

1724
02:39:14.029 --> 02:39:15.890
So we're a Toronto based startup,

1725
02:39:16.350 --> 02:39:20.770
super early stage still, but, we're building a mobile app for folks to be able to

1726
02:39:21.255 --> 02:39:23.835
put their Bitcoin to work and earn a yield,

1727
02:39:24.295 --> 02:39:32.030
potentially, on their Bitcoin using options based strategies that are built on top of DLCs, which, we're gonna talk more about later today.

1728
02:39:32.810 --> 02:39:34.910
I started in the space, 2017.

1729
02:39:35.290 --> 02:39:37.470
I actually started on the Ethereum space

1730
02:39:37.815 --> 02:39:39.516
and then decided to pivot

1731
02:39:39.895 --> 02:39:45.596
and focus, on the Bitcoin side of things later on and, you know, found out that, hey, there's actually all this

1732
02:39:46.061 --> 02:39:48.800
sort of cool functionality that we can build natively,

1733
02:39:49.500 --> 02:39:56.475
cool products, cool, applications that we can build natively on Bitcoin. So why not just do it natively on Bitcoin and focus there and,

1734
02:39:56.875 --> 02:40:00.975
build build products for Bitcoiners. So, yeah, that's a quick intro for me. Hell, yeah.

1735
02:40:01.520 --> 02:40:06.340
I'm Ben. I worked with Chris at SugarVits for about 2 years doing DLC stuff.

1736
02:40:06.800 --> 02:40:09.360
And, I do a lot now in my free time too. And,

1737
02:40:10.205 --> 02:40:13.745
it helps, like, build the DLC wall out there in, like, Crystal Bowl or Oracle software.

1738
02:40:14.365 --> 02:40:16.225
Me and Justin Moon are working on, like,

1739
02:40:16.605 --> 02:40:19.085
a SDK for mobile wall DLC stuff, but,

1740
02:40:19.890 --> 02:40:21.430
all work in progress stuff there.

1741
02:40:22.210 --> 02:40:26.149
I'm I'm gonna steal a line from, Ben on the end here and,

1742
02:40:26.850 --> 02:40:27.350
say,

1743
02:40:28.645 --> 02:40:35.145
Tadge is probably responsible for 2 inventions that employ a lot of people in this room, lightning network and

1744
02:40:45.195 --> 02:40:48.575
job destruction. Everyone would just hang out and not have to work, but sorry about that.

1745
02:40:49.516 --> 02:40:59.199
Yeah. Utrecht's a no. There's, like, 4 people Maybe in 3 or 4 years, I guess. Right? Yeah. It take takes a little while for it to to catch on. But yeah. There's more people working on that now too. So okay. Sorry.

1746
02:40:59.899 --> 02:41:15.340
Yeah. Back to, like, kind of discrete log contracts. It's, you know, why is this an important problem to be solving in the first place? You know, we hear about, like, DeFi over in other blockchain ecosystems. And, like, Tony, I'm gonna kick this over to you, why this is, you know, a problem we should be solving in the Bitcoin world.

1747
02:41:15.720 --> 02:41:21.020
Yeah. The way we look at it, you know, DLCs is a very interesting way to build some

1748
02:41:21.636 --> 02:41:23.335
really cool products and primitives,

1749
02:41:24.195 --> 02:41:26.936
decentralized finance, DeFi products for Bitcoin.

1750
02:41:27.476 --> 02:41:28.530
And the reason that

1751
02:41:29.170 --> 02:41:33.030
our team thinks about it and why we think it's necessary to kind of explore

1752
02:41:33.410 --> 02:41:36.550
ways to build, Bitcoin DeFi is is twofold.

1753
02:41:37.425 --> 02:41:44.245
Well, I'll break it down into, like obviously, DeFi consists of decentralized and finance. So why is why are both of those parts necessary on Bitcoin?

1754
02:41:45.141 --> 02:41:47.720
The financial part, I think, is is a bit more obvious.

1755
02:41:48.660 --> 02:41:49.800
You know, basically,

1756
02:41:51.141 --> 02:41:55.625
kind of like when you look at some of the greatest assets or currencies around the world,

1757
02:41:56.085 --> 02:42:02.840
you know, you notice that there's a very robust and, ecosystem of financial tools around them. And I think part of Bitcoin's maturation,

1758
02:42:03.460 --> 02:42:11.455
process as a financial asset, as a currency, as a store of value is that there's gonna be more and more financial tools,

1759
02:42:11.836 --> 02:42:21.330
that are built on top of Bitcoin. And I think that, you know, financial tools, you know, are just gonna be a large part of that maturation process. In terms of decentralized part of things,

1760
02:42:22.030 --> 02:42:22.690
I think

1761
02:42:23.230 --> 02:42:25.090
that's where it starts to get a bit more interesting.

1762
02:42:25.630 --> 02:42:30.585
Right now, the way that we look at it, there's kind of a big gap or dichotomy

1763
02:42:30.886 --> 02:42:31.386
between,

1764
02:42:32.165 --> 02:42:33.065
Bitcoin finance

1765
02:42:33.686 --> 02:42:34.186
and

1766
02:42:34.890 --> 02:42:36.170
Bitcoin, the asset today.

1767
02:42:36.570 --> 02:42:39.790
Bitcoin, the asset, as we all know, you know, censorship resistant,

1768
02:42:40.170 --> 02:42:40.670
verifiable,

1769
02:42:41.130 --> 02:42:42.590
transparent, all that jazz.

1770
02:42:43.444 --> 02:42:48.265
But the issue is, you know, when we look at a lot of Bitcoin finance tools that are available today,

1771
02:42:48.725 --> 02:42:55.149
you know, it's kind of the opposite. Right? You kind of hand over your coins to them, then you don't know really what happens after the fact.

1772
02:42:55.609 --> 02:42:57.630
You know, it's you can't really verify much,

1773
02:42:58.385 --> 02:43:01.845
And it even kind of removes the provable scarcity

1774
02:43:02.225 --> 02:43:05.205
aspect of Bitcoin to some degree because of potential,

1775
02:43:05.985 --> 02:43:06.645
you know,

1776
02:43:07.020 --> 02:43:07.840
of rehypothecation

1777
02:43:08.460 --> 02:43:17.465
and all that kind of stuff. And so that's why, like, we think that it's it's very necessary to build kind of sound financial tools or decentralized financial tools,

1778
02:43:18.005 --> 02:43:21.705
that match a bit that, you know, for the most part, match Bitcoin's

1779
02:43:22.170 --> 02:43:29.470
aspects in terms of, you know, provable scarcity, in terms of verifiability, transparency, all that kind of stuff. And we think that that's,

1780
02:43:30.245 --> 02:43:33.945
you know, we don't wanna replicate some of the same issues that we see in the fiat world,

1781
02:43:34.485 --> 02:43:35.145
you know,

1782
02:43:36.005 --> 02:43:42.520
happen on Bitcoin. And so why not build sound financial tools from the ground up that also carry most of Bitcoin's best,

1783
02:43:43.320 --> 02:43:43.820
traits?

1784
02:43:44.360 --> 02:43:52.275
That's kind of why we are really kind of strong believers in the need to build bitcoin defi, the need to build sound financial tools for sound money,

1785
02:43:52.735 --> 02:43:54.195
natively here on bitcoin.

1786
02:43:54.655 --> 02:43:57.395
So, I I think that's like a good segue into

1787
02:43:58.520 --> 02:44:01.020
why we haven't seen, like, as much

1788
02:44:01.561 --> 02:44:02.061
development

1789
02:44:02.601 --> 02:44:17.605
for these tools on Bitcoin. And, like, a a question I have for you, Tadh, is, like, kind of, like, you know, what's the why why is it so hard to build things on Bitcoin? Do you think it's a cultural issue that, you know, Bitcoiners don't want this? Or do you think it's a technical issue of

1790
02:44:18.130 --> 02:44:20.550
they want it, but it's really freaking hard.

1791
02:44:21.010 --> 02:44:42.350
And, you know, it's not as easy as just deploying a smart contract. Right. So, yeah, the sort of interesting thing is, like, the thing that eventually became the discreet log contracts was when someone I knew, Joey Zhu back in San Francisco was like, oh, I'm working on Ethereum. What's that? And he explained the idea of Ethereum. This is way before their whole crowdsale. And I was like, can you do that on Bitcoin?

1792
02:44:42.811 --> 02:44:46.015
And it's like, no, you can't. I'm like, I wonder, there's probably a way.

1793
02:44:46.475 --> 02:44:47.375
And so yes,

1794
02:44:48.395 --> 02:44:52.815
one of the aspects is it's easier. The Ethereum ecosystem has all these tools

1795
02:44:53.320 --> 02:44:56.860
and you can just write whatever crazy thing you want and lose $600,000,000

1796
02:44:57.400 --> 02:44:59.260
of other people's money. Theoretically.

1797
02:44:59.720 --> 02:45:00.220
Yeah,

1798
02:45:00.615 --> 02:45:05.436
and it is it is more difficult, Bitcoin. But I do think there are some technical things that, like,

1799
02:45:06.295 --> 02:45:06.795
are

1800
02:45:07.335 --> 02:45:13.710
funded quite different where if you actually look in Ethereum what people are spending a lot of gas and and using it for,

1801
02:45:14.410 --> 02:45:19.945
a lot of it's discovery. And so what we have with discrete law contracts and, like, people have worked on it a lot,

1802
02:45:20.325 --> 02:45:26.745
it's contract execution and you have all this securities like, okay, and we always talk about Alice and Bob. It's like, okay, Alice and Bob,

1803
02:45:27.439 --> 02:45:39.735
Alice is long Bitcoin, Bob is short Bitcoin, so Bob has sort of something like a stable coin, and Alice has this like super volatile Bitcoin because she thinks it's going to go up, And that's a good trade, like they both want to do this, and we have all these really secure ways to make that happen.

1804
02:45:40.195 --> 02:45:42.215
But we start with Alice and Bob,

1805
02:45:42.630 --> 02:45:47.449
And really we need to start with Alice doesn't know Bob. Like nobody knows anything.

1806
02:45:48.069 --> 02:45:48.569
And

1807
02:45:48.949 --> 02:45:54.045
you need an order book, you need a marketplace. And I think that is what you sort of see being

1808
02:45:54.425 --> 02:45:56.846
one of the use cases, one of the things that Ethereum does have

1809
02:45:57.226 --> 02:46:18.565
that is, on the one hand, horrible because it's enormous and enormously efficient for someone to say, hey, I'm interested in going long this asset. Anyone want or, like, I have an order. I wanna buy something for this amount. I changed it. My mind, I cancel. Right? Because I know that in, like, Wall Street, it's something like a 101, like, total number of orders that go into a market versus order execution.

1810
02:46:18.930 --> 02:46:23.270
Right? Most people put in orders and then cancel them. And and so you sort of see that

1811
02:46:23.890 --> 02:46:29.085
recorded for all time in Ethereum where it's all these orders and cancellations and it's very inefficient, but

1812
02:46:29.865 --> 02:46:36.430
people can find each other. And that's one of the hard parts that is sort of still unsolved in Bitcoin land where

1813
02:46:36.930 --> 02:46:37.430
you're,

1814
02:46:37.930 --> 02:46:43.390
you know, same with coin joins, same with a lot of these other protocols. It's like, well, yeah, if you can find your counterparty,

1815
02:46:43.725 --> 02:47:06.965
we know how to do these things. But finding each other in this, like, decentralized trustless way is still something of an open question. So I think that's one of the big hurdles left. And just to I mean, I a 100% agree with that and think that's kind of one of the big unknown problems that we need to solve in the Bitcoin ecosystem is to make that work with the UTXO model. And then, you know, what I call these things is censorship resistant financial markets,

1816
02:47:07.270 --> 02:47:40.670
rather than just kind of censorship resistant money that we have at at the moment. And that's something that I think other blockchain ecosystems are kicking our butt at just by the sheer fact that it's possible there. And Yeah. But it's not even possible. You can see why Bitcoin people don't want it because it's like, we don't want 100 of gigabytes of people trying to find each other recorded for all time that you have to validate. It's like no, don't. That should be offline. That doesn't need to be on the Blockchain. But it doesn't need to be somewhere that's decentralized. And so, you know, I I sort of actually, this conference started saying, we need a layer 2 mempool.

1817
02:47:41.070 --> 02:48:05.850
Right? Like, I don't know if that's the cool catchphrase, but, like, yeah, we have the mempool Make it happen, Twitter. Yeah. We have this mempool where things are sort of floating around and miners grab stuff and make blocks and make the blockchain. And the mempool is a huge I mean, people have been talking so other people today have been talking about the open source work on the mempool. It's super important and difficult. We don't really have a layer 2 mempool. We don't You know, if you're trying to find counterparties on lightning, if you're trying to do these things it's

1818
02:48:06.195 --> 02:48:07.735
there's all these sort of sporadic,

1819
02:48:08.115 --> 02:48:22.865
peer to peer interactions. It's work, but there isn't what's nice is, like, there's the mempool and you sort of all put stuff together. So we don't quite have that as, like, a layer 2 thing, but that's sort of still an open question. There's lots of cool ideas about that. Do you have anything in the works to solve that? Just ask. Just

1820
02:48:23.245 --> 02:48:28.865
kidding. It's it's a question we keep talking about, but we don't we don't like, oh, silver burrow. Not yet. Yeah. Maybe.

1821
02:48:29.480 --> 02:48:36.780
I think that's a really fair characterization. It's something I'd, you know, like to say to the audience. It's a problem we're solving, and, you know, where does liquidity

1822
02:48:37.565 --> 02:48:40.705
aggregate and where can you go find, you know,

1823
02:48:41.085 --> 02:48:47.105
Allison where can Allison Bob go to match each other in a decentralized way so we don't have this, like, regulatory pressure

1824
02:48:47.520 --> 02:48:52.480
of, you know, depositing your coins on a centralized exchange, and then, you know, they they, of course, are,

1825
02:48:53.040 --> 02:48:56.875
you know, subject to the whims of whatever jurisdiction they're in. And,

1826
02:48:57.335 --> 02:49:01.274
I I think, you know, I think Bitcoiners should take the problem more seriously. But,

1827
02:49:01.654 --> 02:49:04.075
you know, in terms of, like, what we can do with DLCs,

1828
02:49:04.430 --> 02:49:19.226
assuming that Alice and Bob have found each other already, can we just, like, enumerate some of the the use cases of, you know, what types of contracts we can do? Ben, do you do you do you maybe wanna take that? I'm, like, it's cool. You can do almost anything. Like, they have the options contracts where you're betting on the price of Bitcoin.

1829
02:49:19.540 --> 02:49:22.600
You know, I also build a game where you just bet on Super Smash Bros games,

1830
02:49:22.900 --> 02:49:27.720
or you could bet you know, that you guys are doing the thing. How long is Justin Moon's mullet? Like,

1831
02:49:28.295 --> 02:49:33.354
like you can, you can do like anything. It's super cool. 2:30. Be there. How long is Justin Moon's mullet?

1832
02:49:33.895 --> 02:49:44.720
So like, like, cause all you're doing is having Oracle sign a message of what something is. So it could be, you know, the Bitcoin price. It could be the length of a mullet. It could be a Smash Bros game. It could be like, what's the

1833
02:49:45.075 --> 02:50:01.600
coordination of the stars or something. Like it can be almost anything. So it opens up like a 1000000 use cases and you can like, with that, you can make lots of cool stuff for like, you know, they're just signing with the Bitcoin price. So you could say, like, what's the execution of the script and then make a real, like, actual smart contract that way.

1834
02:50:02.085 --> 02:50:16.220
Yeah. I mean, I think, like, one of the the most clever things about, DLCs is, like, the the scripting is very minimal, and, intentionally, a lot of information's left off chain. And, may maybe Ben or Taj, do you guys wanna speak to kinda how that's advantageous

1835
02:50:16.760 --> 02:50:19.580
from a privacy and scalability perspective?

1836
02:50:19.935 --> 02:50:44.870
Ben, do you want to Yeah. I mean, it's huge. So like, you know, today, like if you're using Ethereum, you're saying like, this is everything I'm doing. Here's the exact price I'm trying to buy at. And like, have a huge problem where there's like a minor extracted value where they just front run all the orders because they know what everyone's trying to do and just make free money. In In Bitcoin or at least in DLCs, you can't do that because all of my contract data is off chain just between me and my counterparty just like in a database that we own. And the,

1837
02:50:45.489 --> 02:51:11.730
and the actual contract was just, like, negotiation between us, and we've all resulted in is spending from a multisig and then spending out of it. That's all anyone can see. So I don't know, like what we're betting on, if we are even betting. And, even though your Oracle doesn't know. So they might like, maybe they, you know, see your IP address, ping the server. I was like, oh, they got the Bitcoin price. They don't know if you were short or long, what the how big your bet was, anything like that. So it's extremely private that way. And then since all this is all off chain and just like 2 transactions,

1838
02:51:12.125 --> 02:51:13.025
it's lots more

1839
02:51:13.405 --> 02:51:22.510
scalable. Yeah. I mean, you mentioned, I guess, a word that we haven't actually defined yet on this talk, but, you know, what is an Oracle? Does any anybody wanna take that question?

1840
02:51:24.090 --> 02:51:51.245
Chad? Sure. It's you know? And some you you need a bridge from the real world. Why why can't Bitcoin go and just know what the Bitcoin price is? Why can't Bitcoin know who won the Super Bowl? Like, why don't we just embed a HTTP client into Bitcoin and have it reach out and Consensus by figure out how long Justin Moon's mullet is. Yeah. No. None of these chains. Like, you know, everything needs an oracle because you can't you you can't assume consensus on this thing that fundamentally we don't have consensus on. Right? Like, what's the temperature outside?

1841
02:51:51.625 --> 02:51:59.039
Where outside? You know? And and so you need some kind of entity to just post and say, here, this is the score of the Super Bowl.

1842
02:51:59.500 --> 02:52:02.720
And and you do have to trust that entity. And this is like a problem

1843
02:52:03.579 --> 02:52:07.375
that I don't know. There's, like, whole entire alt coins that are entirely

1844
02:52:07.755 --> 02:52:11.055
devoted to oracles. I don't know what they're doing. But, like, to me

1845
02:52:11.700 --> 02:52:36.899
to me, it's always, like, well, you want to minimize. Here's this trust needed, and so you want to minimize that. Right? We we can't really get around it, but we want to reduce the power of the this Oracle as much as possible. So the goal is sort of, like, let's make the Oracle as oblivious as possible to what's going on. So they report this data, but they don't see what people are doing with it, or they don't see how many contracts are using this or anything like that. So to try this and also

1846
02:52:37.235 --> 02:52:40.295
cryptographically, they can't equivocate. They can't, say,

1847
02:52:40.835 --> 02:52:41.335
oh,

1848
02:52:41.715 --> 02:52:56.105
the Rams won the Super Bowl. No. The, you know, Oilers are on the Super Bowl. They can't they can't do both at the same time without losing their private keys, which is sort of a nice extra thing. But yeah, it's it's you know some entity in the real world may be known, may be anonymous

1849
02:52:56.485 --> 02:52:58.565
that reports on real world data.

1850
02:52:59.205 --> 02:53:04.729
And and that report doesn't have to go into the blockchain and ideally won't. Right? So that that report

1851
02:53:05.190 --> 02:53:08.570
influences the blockchain, but can be on a website or something. And

1852
02:53:09.270 --> 02:53:13.244
so that's that's sort of the you know, my goal is, like, limit the oracles. Yeah.

1853
02:53:13.805 --> 02:53:43.410
And, hopefully, this real law contracts can help do that. And I I think that's such a valuable point about how the data is not going into the blockchain itself. And another, you know, property of this is that this the way the DLC specification works is the same Oracle could be used across different blockchain ecosystems. And, you know, we're at a Bitcoin conference today, but it's really nice not to have to, have the Oracle have, you know, a different reputation for, you know, the Litecoin blockchain versus the Zcash blockchain versus the Bitcoin blockchain.

1854
02:53:43.775 --> 02:53:47.395
The same oracle can be used across the entire DLC ecosystem,

1855
02:53:47.775 --> 02:53:52.690
and, you kind of prevent this, like, fragmentation going on. And, also, you know,

1856
02:53:53.091 --> 02:54:05.476
an oracle can build a reputation that way. And we are, like, seeing that. Like, the link guys announced they're trying to do DLC stuff. So, like Mhmm. It's kinda cool that, like, the shit coins are coming and trying to, like, adopt our stuff, but rarely happens.

1857
02:54:07.936 --> 02:54:16.210
Yeah. I mean, it it it is really cool. Do you have any opinions on what Oracle should report on versus not reporting on? Or, you know, what

1858
02:54:16.556 --> 02:54:25.136
what is the limitations of an Oracle? I like, how I think about it is, you know, you should always make sure if you're gonna be an Oracle in the DLC ecosystem,

1859
02:54:26.061 --> 02:54:34.935
the event has to be very cut and dry of what happened. And, like, Tadge was kind of hinting at this earlier of, like, you know, if

1860
02:54:35.494 --> 02:54:37.994
what what's the temperature outside? You needed to define,

1861
02:54:38.375 --> 02:54:41.755
like, what the thing that you're going to attest to is very,

1862
02:54:42.454 --> 02:54:47.490
airtight as possible. Kind of almost like a legal agreement. Otherwise, you can have ambiguity and,

1863
02:54:48.510 --> 02:54:55.386
your smart contract execution is only as good as the, Oracle's input into the, you know, the smart contract itself.

1864
02:54:56.405 --> 02:54:59.386
Another thing that we've worked on in in the DLC spec is

1865
02:54:59.760 --> 02:55:43.710
multi oracle stuff. I know, Ben, you you you've done a lot of work on that. Do you wanna do you wanna share? Yeah. It's like what Taj was saying was, like, you know, you have to trust this one entity, but it's nice in DLCs. We can kinda actually just trust multiple entities in this, like, you know, have this, like, 2 of 3, like, multisig of oracles where you could do something like, you know, maybe, you know, I'm good friends with Chris, but maybe, you know, I don't totally trust him on reporting the weather, but I trust all 3 of these guys together. So let's say if 2 of the 3 say it's 60 degrees, I get the money. And if one lies, then I'm okay. And, so it's a really nice property and it's, scales pretty well, or like your contracts on chain is the exact same still. You just need more data off chain. But, you're able to, like, you know, abstract all these things and kinda protect yourself there if you have multiple oracles.

1866
02:55:44.795 --> 02:55:45.295
Yeah.

1867
02:55:45.675 --> 02:55:56.520
Another, thing that comes up a lot is, like, should oracles be paid? Should they not be paid? Does anyone have any thoughts on on on the panel about, you know, compensation for the services that Oracles are providing?

1868
02:55:57.860 --> 02:55:59.479
I think that, like, it depends.

1869
02:56:00.260 --> 02:56:09.075
Basically, it's it's an interesting it's it's an interesting, like, question because, like, oh, there's an oracle being paid. Open up the door for potential collusion or whatever.

1870
02:56:09.935 --> 02:56:16.189
That, like, it's it's also interesting because maybe Oracle should be thought of as a public good or something like that.

1871
02:56:16.890 --> 02:56:20.670
And so, yeah, it's it's an interesting kind of, like, discussion topic. I think that,

1872
02:56:21.195 --> 02:56:22.175
you know, if

1873
02:56:22.635 --> 02:56:23.135
if,

1874
02:56:23.755 --> 02:56:29.729
you know, if if if, say, I'm I'm building a product and I need, you know, an oracle with,

1875
02:56:30.109 --> 02:56:34.689
you know, a guaranteed amount of uptime or something like that or some some sort of kind of, like,

1876
02:56:35.525 --> 02:56:42.750
you know, minimum level of service, then, you know, maybe then it makes sense for me to pay a little bit more to, like, kinda guarantee that kind of, like,

1877
02:56:43.390 --> 02:56:44.830
uptime and stuff like that. But,

1878
02:56:45.470 --> 02:57:13.505
otherwise, like, I mean, it's it's certainly an open question. I'm curious to hear what, Todd and Ben have to say. Yeah. And I think, like like, the actually, the operational cost of running an Oracle is, like, basically 0. It's like you post 64 bytes, like, you know, when an event happens, that's about it. Right. So, like, you know, all you're doing is, you know, make an HTTP request probably to, like, you know, nfl.com to get the score and then posting it. So it it they don't totally need to be paid. It is good. Like, you know, as an oracle, you want to be paid because who doesn't like getting paid? But,

1879
02:57:14.765 --> 02:57:43.780
it is like I don't think it's a huge problem of, like, incentives. Like, most likely, like, you know, people will just set up oracles and be like, oh, it just runs on AWS now forever. And they'll sign every game. They don't need to worry about it anymore. And I think, like, doing things like open source oracles where, like, you open source, like, my NFL oracle that signs every NFL game, then anyone can run this now and we can all see, like, oh, this one's fucking up. He's signing the wrong thing. And then, you know, you just switch over to new Oracles. Like, you don't need to, like, have these all these, like, you know, super,

1880
02:57:44.226 --> 02:57:56.640
like, well, you know, defined things. Like, just let's just have an NFL Oracle and, you know, everyone runs it. I think one of, like yeah. I definitely agree. It's it's not that hard. Right? You just sign a message, so it's not like, you know, you're a minor or anything.

1881
02:57:57.260 --> 02:58:08.215
I think it's the the one use case I keep coming back to is, like, the price of Bitcoin. Right? People wanna bet on that. We see there's all these stable, you know, Tether and USDC, and it's just like I'm always

1882
02:58:08.530 --> 02:58:16.230
very curious at, like, why people use them because it seems like a horrible idea. And one day, it's just gonna get, like, seized by some government, and then everyone loses everything. But,

1883
02:58:17.244 --> 02:58:29.920
or not, but but yeah. But it's like, well, you can sort of get that action with the DLCs where it's like, okay, I want a constant dollar price contract. And so the bitcoin price seems very important, and it does feel like oracles

1884
02:58:31.181 --> 02:58:51.471
possibly in that case would be incentivized from non without getting paid. So if you're an exchange, you're, you know, Gemini, Kraken, you say, well, I want if there are people making derivatives contracts based on the price of Bitcoin, I want their price to be our price. And most of the exchanges are very, you know, very close in price, but not always. You know, there there can be a little bit of a divergence here and there.

1885
02:58:51.995 --> 02:59:02.950
And they can say, well, if you are doing these derivatives contracts, we want you to use, you know, Kraken's price and then that'll make more people wanna trade on Kraken because you can sort of net it out.

1886
02:59:04.050 --> 02:59:06.710
And and, you know, you're already trusting these exchanges

1887
02:59:07.090 --> 02:59:09.270
to, like, hold gazillions of Bitcoin.

1888
02:59:09.675 --> 02:59:20.140
So trusting them to, like, say what the last trade price is seems like a much lower ask than that. So that does seem like, you know, it's not happening now, but it could in the future where where exchanges

1889
02:59:20.760 --> 02:59:21.260
want,

1890
02:59:21.880 --> 02:59:30.625
to be oracles and wanna get that. It does happen now. They like Coinbase. I think they do, like, a oracle for, like, Ethereum and stuff, so it's not farfetched them to do it for Bitcoin.

1891
02:59:31.564 --> 02:59:35.091
Yeah. And that would that would be a fun you know, so you have the sort of Bitcoin fix where everyone's,

1892
02:59:35.551 --> 02:59:47.435
like, you know, trading on this, like, very important auction price. Like, okay. Here's the price of Bitcoin for the day or something. That'd be cool. And we're we're starting to see that. Yeah. I mean, I think another, like, interesting topic here is, like,

1893
02:59:48.455 --> 02:59:48.955
whether

1894
02:59:49.575 --> 03:00:02.255
going back to how do Alice and Bob find each other in a decentralized fashion is very, very hard in the the UTXO world, and it can be done in other blockchains, although really inefficiently and with no privacy, basically.

1895
03:00:03.375 --> 03:00:11.510
So, another, like, idea that I guess I've been thinking about is, like, is it important that you retain custody of the Bitcoin,

1896
03:00:12.130 --> 03:00:13.750
while the matching happens

1897
03:00:14.370 --> 03:00:19.275
if the matching happens fast? So, like, imagine I deposit money into Kraken.

1898
03:00:19.815 --> 03:00:27.801
They do what they're really good at, which is matching buyers and sellers, and they print a Bitcoin transaction that represents the DLC outback. Does anyone have,

1899
03:00:28.280 --> 03:00:30.860
thoughts on that or why it's good, why it might be bad?

1900
03:00:31.721 --> 03:00:32.700
Any hot takes?

1901
03:00:33.240 --> 03:00:35.020
And it doesn't bring you the censorship

1902
03:00:35.415 --> 03:00:41.354
resistant financial markets still, which kind of is the goal here. But it is a, I mean, it is a, like, solution. Like,

1903
03:00:41.734 --> 03:01:00.734
and, honestly, it should be a spectrum. Like, you know, we can have the most decentralized version where it's like, I don't know, like, some, like, actual peer to peer network that we use to negotiate these offers. And if you have the, like, you know, the centralized ones where, you know, deposit the Kraken, spit out a DLC, and you can have things in the middle. So, they're they're all our rivals. You kinda need to try them all out and see which one sticks.

1904
03:01:01.194 --> 03:01:11.870
Yeah. I mean, I I I I I think my my, thinking is, like, evolving on this about minimizing the amount of time that somebody else has custody of your Bitcoin.

1905
03:01:12.455 --> 03:01:16.715
If that's 30 seconds to match a trade, I think that's a pretty acceptable,

1906
03:01:17.735 --> 03:01:18.955
amount of time. If,

1907
03:01:19.470 --> 03:01:21.250
you know, the the exchange in question,

1908
03:01:22.270 --> 03:01:27.710
is doing funky business, people will stop depositing money into their exchange almost immediately. And,

1909
03:01:28.270 --> 03:01:34.545
you just gotta make sure you're not using that same exchange as the Oracle, and you do end up having some of the censorship resistance to,

1910
03:01:35.165 --> 03:01:41.641
at least it's how I've been thinking about. Of course, that requires, like, a large amount of buy in from the existing exchanges, which are pretty,

1911
03:01:42.360 --> 03:01:46.115
vehemently against adopting any sort of Bitcoin tooling, it seems.

1912
03:01:46.495 --> 03:01:58.870
But, maybe maybe someday. Another model would be sort of a a broker model where, you know, there's one Bob and lots of Alice's, and so everyone's like, yeah. That's that's Bob. Like, everyone connects to this one broker,

1913
03:01:59.226 --> 03:02:14.490
and they're sort of a party to every trade. And and Bob doesn't necessarily have to take a position. They could say, well, Alice over here wants to go short Bitcoin, and Alice over here wants to go long Bitcoin. So I sort of net that out. Well and I think that's very similar to the atomic finance model, if I'm not mistaken. Tony, do you wanna speak to that,

1914
03:02:15.050 --> 03:02:17.950
a little bit more? Yeah. So, basically, like,

1915
03:02:19.436 --> 03:02:25.135
how how for us, how it works is, like, basically, we do our matching, like, through an IRC channel, kinda similar to,

1916
03:02:25.755 --> 03:02:29.280
lightning pool and stuff like that. We're joint markets. Right? And,

1917
03:02:30.380 --> 03:02:52.435
basically, like, kind of just like, you know, users are coming on board on the app. You know, it's very seamless on on the front end for them. Just that tap button. But in the back end, what's happening is, like, you know, generating an offer message on IRC channel and then kind of, like, matching that up with a market maker, on the other side. So it's kind of, like, very simple stuff like that. I think, like, remains to be seen kind of, like, what,

1918
03:02:52.994 --> 03:02:59.255
you know, longer term, what the matching stuff will will look like and if we standardize on one thing and stuff like that. But,

1919
03:02:59.715 --> 03:03:00.274
you know, that's,

1920
03:03:01.360 --> 03:03:03.940
I guess, an open question once again. Yeah. Yeah.

1921
03:03:04.320 --> 03:03:09.460
Another thing that I think is, like, really interesting about DLCs is, like, you know, we've already talked about

1922
03:03:09.905 --> 03:03:14.485
contract privacy. So somebody that's a third party can't see what you're betting on,

1923
03:03:15.104 --> 03:03:18.565
without having Alice or Bob reveal that information to them.

1924
03:03:19.140 --> 03:03:28.100
You know, another interesting component of DLCs, I think, that's kind of underrated is how, it's a dual funded protocol. It requires Alice and Bob to,

1925
03:03:28.886 --> 03:03:37.705
put in some of their own Bitcoin. And, Ben, do you wanna speak to just kind of how that sometime that can have a privacy impact at the transact or blockchain level? Yeah. So, like,

1926
03:03:38.641 --> 03:03:52.555
today, like, when chain analysis companies, like, try to figure out, like, what this transaction is, they generally give the assumption that all the inputs in the transaction belongs to the same person. So but with DLCs, it's you're gonna have you and your counterparties inputs in there. So you're gonna break that heuristic. And,

1927
03:03:53.035 --> 03:04:00.720
if they don't know this is DLC, then they might accidentally, like, you know, link your 2 walls together. And now you guys, you know, screw the chain analysis. So good job.

1928
03:04:01.100 --> 03:04:01.260
And,

1929
03:04:01.900 --> 03:04:21.200
it's really nice and it's, great too, because it just goes in like, we just sending Bitcoin to a multisig and out. So it's the exact same off chain footprint as like a dual funded lighting channel. And, so you get this really high nice privacy where it doesn't even look like a DLC always. It could just be like and then once we have Taproot as well, it just looks like a normal payment. So it has, like, really nice, benefits there.

1930
03:04:21.615 --> 03:04:38.630
Yeah. I mean and I I think, any anytime you can obscure that transaction graph, it, again, makes the analysis company's jobs harder, and that should be any sort of dual funded protocol has that property as far as I'm aware. Yeah. And so we we shall be encouraging dual funded lightning channels, things like DLCs,

1931
03:04:39.165 --> 03:04:46.865
especially if you're a privacy advocate and, like, really deeply care about that stuff. So you, you know, make the heuristics that these companies use,

1932
03:04:47.570 --> 03:04:51.910
a little bit harder to analyze where coins are going and why they're going there.

1933
03:04:52.290 --> 03:04:55.810
But, Ben, you also brought up, Taproot, you know, the new,

1934
03:04:56.775 --> 03:05:00.635
upgrade to the Bitcoin network that got shipped in November of, 2021

1935
03:05:00.936 --> 03:05:10.670
or something like that. Could could you, speak to how DLCs might evolve? Or maybe, Tadge? You you wanna chime in there too? How DLCs can evolve in a Taproot world? Maybe start with Tadge.

1936
03:05:11.050 --> 03:05:19.875
Sure. Yeah. Taproot I mean, I I can say Taproot, but then there's also a bunch of other changes people have been talking about, especially in the last couple months on, like, mailing lists where,

1937
03:05:20.415 --> 03:05:22.115
Taproot can help a bit with privacy

1938
03:05:22.495 --> 03:05:22.995
and

1939
03:05:23.700 --> 03:05:27.320
also the fact that Taproot can sort of build these trees of,

1940
03:05:27.780 --> 03:05:28.280
potential

1941
03:05:28.820 --> 03:05:53.726
spending paths in a single output script will let you, you know, have some more, on chain efficiency as well. But there's also other things that we've been looking at that aren't something that, you know, Bitcoin supports now. Like, hey, if you had something like sig hash, any pre route, which is something that people have been looking at for years and, like, hey, you could do different lightning network style stuff like l 2 with this. You could also make, DLCs more transferable.

1942
03:05:54.265 --> 03:05:56.525
So you could sort of pre sign transfer,

1943
03:05:57.226 --> 03:06:01.050
one of the issues with DLCs is once you're in a contract, if your counterparty is gone,

1944
03:06:01.430 --> 03:06:05.510
you're stuck in that contract, right, until it expires. But if you had,

1945
03:06:06.070 --> 03:06:15.270
some other different opcodes as well, you could have it so that you could transfer it to someone else without your counterparty being online because, basically, your counterparty presigns off on any transfer.

1946
03:06:15.989 --> 03:06:17.770
Also with op, CTV,

1947
03:06:18.229 --> 03:06:21.850
there's ways to increase the efficiency as well. And then there's also

1948
03:06:22.445 --> 03:06:23.266
Louis Fournier's post

1949
03:06:23.965 --> 03:06:44.345
a few months ago about, like, changing the signature thing completely. And I was like, wow. That's really, really cool because I don't really know what we do with it. It it doesn't actually make it that much smaller, but it just seems like a very powerful, you know, step towards something else. So there's definitely lots of tools that aren't out yet, but we're looking at and may someday in the future become, you know, come into Bitcoin that would allow,

1950
03:06:44.665 --> 03:06:47.484
even more powerful discrete law contracts kind of type of things.

1951
03:06:47.811 --> 03:06:56.070
I mean, I think I think one of the big things is, Schnorr signatures included in the the Taproot upgrade too. And, Ben, do you wanna speak to how, you know, Schnorr changes,

1952
03:06:56.605 --> 03:07:06.065
DLCs on chain and maybe off chain as well? Yeah. Like, the beauty of, like, Schnorr is it lets you do additive things. And, so today when you're doing, like, a multisig on chain,

1953
03:07:06.430 --> 03:07:13.810
it is very obvious. So, like, 2 of 2 multisig, everyone can see it. With TapR, you can completely hide that and you just do, like, your multisig off chain with these signatures.

1954
03:07:14.386 --> 03:07:59.471
So, today, like, when you do a DLC, you're funding this 2 of 2 multisig. So everyone sees that, like, oh, this is this is obviously the DLC output, and these are the 2 change outputs. With Taproot, they'd all look like the exact same address. And, so you couldn't tell what's going on. And when you close it as well, it's just gonna look like a normal spend, not a multistake spend. So it gives you this really nice, privacy of hiding exactly what's going on. It's not like your DLC is gonna look the exact same as just a normal, like, spend from your blue wallet or something. So you can't really tell anymore what's going on and it's gonna really hurt these, like, chain analysis companies. They're trying to figure out, like, they'll see, like, a 2 of 2 multisig. Like, okay. This is a special transaction. We can tag this. Like, you know, maybe this doesn't follow the common input here. You're sick. But now if they all look the same, they can't do that. They're like, oh, this is just a transaction. We gotta figure it out.

1955
03:08:00.570 --> 03:08:03.945
Yeah. To Taj point, to Taj's point, about CTV,

1956
03:08:04.325 --> 03:08:07.306
I think super exciting stuff potentially for DLCs

1957
03:08:08.645 --> 03:08:10.266
just from a UI UX perspective.

1958
03:08:10.960 --> 03:08:27.490
You know, right now, maybe it takes for a typical options contract in DLCs takes, like, how to sit around for about 60 seconds to generate all the signatures and all that kind of stuff. You know, we try to make it fun on the app, but, like, you know, it's you know, who has time to wait 60 seconds? Right? So, like, you know, if, if that comes into play,

1959
03:08:28.010 --> 03:08:37.655
if CTV comes on board, then, you know, we can shorten that time dramatically to, say, like, a couple seconds or something like that, right, which would be amazing from a UI UX perspective and just make things simpler,

1960
03:08:38.115 --> 03:08:49.869
moving forward. And that that's a really good point. And maybe, Taz, do you do you wanna speak to, like, you know, why why is there such a huge computational Right. Load that comes with DLCs? Yeah. So so the basic thing of, you know, the basic

1961
03:08:50.205 --> 03:08:54.705
thing of how DLCs work, which is kinda dumb, is you precompute

1962
03:08:55.245 --> 03:09:08.125
every single possible thing that can happen. So so for if it's, you know, who wins the Super Bowl? Well, that's just, you know, one or the other. But if it's what are what's the score of the Super Bowl? Well, there could be thousands of different possible scores, and, you know, what's the price of Bitcoin? Well,

1963
03:09:08.585 --> 03:09:13.564
how, you know, how much do you round it to? So there there's potentially many thousands of possible outcomes.

1964
03:09:14.080 --> 03:09:15.780
And instead of having the blockchain

1965
03:09:16.560 --> 03:09:25.595
figure out what happens, the idea is we figure out every possible thing that can happen, store it between Alice and Bob, and then only one thing goes on the blockchain. So there's this trade off of

1966
03:09:25.975 --> 03:09:35.660
how much the Alice and Bob are doing work, how much the sort of end users are storing and doing work versus how much the Blockchain stores? And one of the things I sort of ask and it's philosophical.

1967
03:09:36.200 --> 03:09:38.540
If you can save 1 byte on the Blockchain,

1968
03:09:38.976 --> 03:09:41.955
how many bytes would you be willing to store on your local computer?

1969
03:09:42.815 --> 03:09:47.955
Like a kilobyte, a megabyte, a gigabyte? Right? Because it's hard to there's no right answer. Right? But

1970
03:09:49.450 --> 03:09:51.250
you know, data on the blockchain is very

1971
03:09:52.130 --> 03:10:04.475
it it it feels heavy. It's like, man, I'm putting something on the blockchain. This thing's gonna be around for maybe longer than I am, and everyone's gonna have to validate it and download it and store it, and, like, I wanna really minimize that. And so the trade off with DLC is

1972
03:10:04.860 --> 03:10:09.280
it's, I don't know, a 1000 to 1, whatever. You're having a constant size on chain transaction

1973
03:10:09.660 --> 03:10:35.025
and potentially quite large amount of data between the 2 parties that never sees the chain. And so I I generally think that's good, but but there are trade offs. Right? Maybe it's too slow and like, hey, if we can just put another 20 or 30 bytes on chain, we can take this 60 seconds down to, like, one second. That that could be useful. You know? And you know, there's a market like fees fees and stuff. So so that's sort of one of the big trade offs we're looking at. And the ops CTV could give different ops to change as well there.

1974
03:10:35.405 --> 03:10:39.025
Yeah. I I just realized you've made 2 protocols now that have, like, these,

1975
03:10:39.645 --> 03:10:40.145
infinite

1976
03:10:40.971 --> 03:10:48.495
growing well, no. No. I guess, DLCs, it's not infinite growing storage requirements. But lightning Yeah. So then you close your channel. I guess you you gotta keep adding to the

1977
03:10:49.295 --> 03:10:57.235
database then. Right. But it doesn't but only one thing goes. I mean, they're they're very simp you know, it the DLC definitely came out of the the research and the work on lightning network.

1978
03:10:57.681 --> 03:11:05.665
And they and they you know, the scripts are the same or were you know, so they're very similar in that you wanna push as much data as you can off chain. And

1979
03:11:06.125 --> 03:11:17.030
and sometimes that means you actually have scaling issues on your single computer. But to me, like, a scaling issue on your computer is better than a scaling issue for the whole entire network. Yeah. And I think that that's such a, you know

1980
03:11:17.490 --> 03:11:32.235
maybe you're the originator of this, like, kind of philosophical design point that I also hold of, like, just, like, keep as much off the blockchain as possible. It's better for scalability of the blockchain. It's better for privacy of the participants of the, you know, the the contract in question on the blockchain.

1981
03:11:32.601 --> 03:11:37.101
And, you know, consumer hardware does keep getting better and better, although,

1982
03:11:37.880 --> 03:11:44.365
you know, we keep doing more intricate and intricate things with that consumer hardware. Does any does anyone else have an opinion on, you know,

1983
03:11:44.745 --> 03:12:24.995
on chain stuff versus off chain stuff? I mean, I think a funny thing to bring up is, like, when we were developing the DLC wallet shared bits, like, when we first started, I was like highly unoptimized and be like, we tried to do like a 3 of 5, like Oracle bet on the Bitcoin price that had like a 1,000,000 outcomes or something. And like our me and Chris, like we click like go and are both our computers crashed and we text each other. Like, did you die too? Like, yeah. So like, it is a hard problem to solve and we, you know, we added a lot of optimizations and stuff. Now we're able to do it in like a couple seconds, but we have like high end developer laptops, like Atomic Finances on your iPhone. IPhone. So it's like, this doesn't have this insane chip in memory that you can do at all. And it does blow up a lot of data. Like, I know a couple of them we did,

1984
03:12:25.455 --> 03:12:30.109
or we didn't put in, like, rounding and then we'd have, like, 88, 80 megabyte, like, databases

1985
03:12:30.489 --> 03:12:44.165
for one contract that we're just, like, testing with. And it'd be it wouldn't like, the networking would, like, screw up sometimes, and it's just a hard problem. So it is like a nice thing that if we do get CTV is a huge thing. Cause suddenly you negotiate all these transactions,

1986
03:12:44.470 --> 03:13:04.990
all you do is just basically both produce the same address and that you both get the same as well. You're like, cool. And you send to it and now your DLC's set up. So it saves a lot of that, bandwidth is which is really nice, especially for, like, places that, like, if you're doing, like, over tour where it's, very slow and stuff like that, or if you're just, you know, somewhere in, like, you're from, like, Nigeria or something and don't have 5 g Internet, like, you know, it's a big benefit.

1987
03:13:06.170 --> 03:13:07.471
Yeah. And just another

1988
03:13:07.851 --> 03:13:22.150
plug in there. It's like we ship our SureDVids wallet on the Raspberry Pis on Umbrel. And that's, like, again, where, there's a lot of sensitivity to performance because on low resource devices, which I think, you know, most Bitcoin applications strive to be deployed on,

1989
03:13:22.530 --> 03:13:24.710
the signature computation does become,

1990
03:13:25.171 --> 03:13:29.525
sometimes prohibitive for certain types of contracts that people wanna use.

1991
03:13:29.985 --> 03:13:35.285
My understanding of moving to Tappert and Schnorr is that computation does get quicker,

1992
03:13:35.640 --> 03:13:36.460
which is another,

1993
03:13:37.000 --> 03:13:42.935
benefit of moving to the to Schnorr. But we're not quite there in the DLC specification. We're

1994
03:13:43.255 --> 03:13:48.395
waiting on us getting Taproot rolled out and deployed in the ecosystem before

1995
03:13:48.774 --> 03:14:06.976
we can take advantage of that. And the the, like, Fournier, you know, changing the signature the Oracle signature to we need a term for it, but not a signature at all where it's basically I plus k x. That would probably be a 1000 times faster for the end users or some, you know, something on the order of a like, point multiplication versus

1996
03:14:08.450 --> 03:14:08.950
addition,

1997
03:14:09.330 --> 03:14:12.950
thousand ish times faster. So that that would be a huge improvement, and it's

1998
03:14:13.410 --> 03:14:24.855
still not a 100% sure it's secure because it's just like a post on a mailing list. You're like, that works, I think. Okay. So there's still, like, there's still enormous amounts of things to improve and research in this space, which is really exciting.

1999
03:14:25.210 --> 03:14:41.511
Another, like, I guess, like, going back to the Oracle questions, like, some something that we've been talking about a lot lately is, like, Oracle's attesting to something that's globally known, such as the Super Bowl or what the weather is outside or, you know, what the price of Bitcoin is on exchange. There is, like, you know, globally

2000
03:14:41.971 --> 03:14:43.590
knowable answers to that,

2001
03:14:43.971 --> 03:14:48.391
versus, like, attesting to something that maybe isn't globally known but can be

2002
03:14:48.925 --> 03:15:06.290
used to give a better user experience. Like, maybe how much money specifically Alice and Bob receive in a very specific trade rather than, you know, attesting to what the Bitcoin price is. Does any does anybody have any thoughts there on, you know, if if that, like, warps Oracle incentives at all or,

2003
03:15:07.455 --> 03:15:33.740
any ideas on that? And it kind of talks like you're thinking of like, doing like escrow with DLCs and like, I think that is like a a nice use case for, like, instead of, like, having the escrow, like, be part of your transaction, the 2 or 3 multisig. They're not just an oracle, and they don't know your transaction, so you get some privacy. It probably helps them with regulations and stuff. But, it is kinda weird because, like, if they lie, like, look, they lied. We'd be like, you can't really totally prove it because it's not a public event of, like, you know, did the package come to my house or not? So,

2004
03:15:34.540 --> 03:15:51.591
it it kinda skews the incentives, but I still think it's a good use case. Like, DLCs have real nice benefits over, like, bringing third parties into your transaction. So I think it's, like, a great way to do it. So And another, a conversation I had in the last, like, month or 2 was with a, you know, a a guy that runs a pretty, big Bitcoin,

2005
03:15:52.051 --> 03:15:52.851
company and how,

2006
03:15:53.425 --> 03:16:09.360
DLCs could be used for reoccurring subscriptions too, where you roll the subscription over every month and, the oracle pulls the money almost like you're drawing down a Bitcoin address like a bank account. And, you can cancel the subscription at any time by double spending the transaction.

2007
03:16:10.165 --> 03:16:16.265
The feedback that I've got from that ID on the mailing list is use and lock time. And I I think that's like a

2008
03:16:16.885 --> 03:16:17.385
fair

2009
03:16:18.085 --> 03:16:20.700
rebuttal. I still think there's some noninteractivity

2010
03:16:21.160 --> 03:16:25.561
benefits maybe. But, is it you does anyone have any thoughts on just kind of out of the box,

2011
03:16:26.280 --> 03:16:28.460
Oracle ideas that don't necessarily

2012
03:16:29.186 --> 03:16:40.641
tie directly to betting applications necessarily? Or can can can we take this Oracle specification even further in the DLC ecosystem to enable more use cases on, Bitcoin

2013
03:16:41.020 --> 03:16:42.000
and, have

2014
03:16:42.620 --> 03:16:51.345
Bitcoin and Oracles take over everything? It's a it's a pretty general protocol, but it does seem like, yeah, you ideally, if this is like a public thing and and the oracles

2015
03:16:51.965 --> 03:16:57.665
can't really lie that easily because that you know, and they don't know who's using the data. Because if you're sort of saying, hey.

2016
03:16:58.030 --> 03:17:13.615
This is between Alice and Bob, you need to check whether I got my groceries delivered. The Oracle already knows who's gonna use this data, and so there you've sort of lost a lot of that privacy. So, you know, the it it doesn't help as much there, but it could be used in these things. And there is there are companies like asking, but it's sort of like

2017
03:17:14.050 --> 03:17:21.430
sometimes you lose a little bit of the the purpose of it, but but a lot of times you you still you know, if the software is there, people will probably use it for that as well. Yeah.

2018
03:17:21.825 --> 03:17:40.925
I think we're pretty much out of time, guys. Thank you for coming out. If we're doing DLC demos again, 2:30 at the expo hall, far left, back corner by the big moon. We're giving away these shirts if you manage to get through a a DLC setup. So if you want some, SureDbit swag with company on the front, the math on the back,

2019
03:17:41.465 --> 03:17:44.125
come check us out. And, otherwise, thanks for being a great audience.

2020
03:17:50.400 --> 03:17:51.700
What is up, guys?

2021
03:17:53.735 --> 03:17:57.274
We are here to talk about Bitcoin nodes. We got some of the

2022
03:17:57.735 --> 03:18:01.915
guys behind some of the best node projects in the space up here to discuss it with us.

2023
03:18:03.160 --> 03:18:05.900
By a show of hands, who uses their own Bitcoin node?

2024
03:18:07.320 --> 03:18:08.540
Awesome. The whole room.

2025
03:18:10.295 --> 03:18:11.114
So, I mean,

2026
03:18:11.574 --> 03:18:16.074
this is also getting recorded and broadcast out to lots and lots of people.

2027
03:18:16.534 --> 03:18:19.354
So I think a good just a good place to start is just

2028
03:18:19.940 --> 03:18:27.560
to interact with the to interact with the Bitcoin network, you need to use a Bitcoin node. If you don't use your own node, you're using someone else's node.

2029
03:18:28.295 --> 03:18:31.435
If you're using someone else's node, you're trusting them with your privacy

2030
03:18:31.814 --> 03:18:34.075
and validation of the rules of the network.

2031
03:18:35.095 --> 03:18:41.061
Commonly, when you're using someone else's node, it's like if you use Ledger Live, you're using Ledger's node. It's oftentimes a company.

2032
03:18:41.760 --> 03:18:45.620
Or a mobile wallet. If you're using BlueWallet, you're using BlueWallet's node.

2033
03:18:46.655 --> 03:18:48.755
So with all that said let's get into this discussion.

2034
03:18:49.615 --> 03:18:50.354
We have,

2035
03:18:50.895 --> 03:18:53.715
S2 here from Ronan Dojo.

2036
03:18:54.470 --> 03:18:56.649
We have Keegan here from Start 9.

2037
03:18:57.029 --> 03:19:01.770
We have Jonas here from Nick's Bitcoin, and we have Rud Sol here from Raspi Blitz.

2038
03:19:02.505 --> 03:19:06.525
You might recognize Rud Sol because he's been running the workshop table outside.

2039
03:19:07.545 --> 03:19:08.605
Before I forget,

2040
03:19:09.579 --> 03:19:12.720
we will be auctioning off 3 Rasputi blitzes

2041
03:19:13.420 --> 03:19:23.735
at the end of tomorrow at 3 PM with 50% of funds going to raspi blitz development and 50% going to greater open source development through open sats.

2042
03:19:24.670 --> 03:19:25.330
So, guys,

2043
03:19:26.990 --> 03:19:28.610
where do we start? So

2044
03:19:30.350 --> 03:19:32.756
I I guess I let let's start with Rudolf. Rudolf,

2045
03:19:33.136 --> 03:19:36.436
when you're when you're thinking about the Raspi High Blitz project,

2046
03:19:37.535 --> 03:19:41.640
you know, what what are, like, the priorities that you're thinking about in terms

2047
03:19:42.199 --> 03:19:44.060
of what what to deliver users

2048
03:19:44.920 --> 03:19:46.380
and how to go about that?

2049
03:19:47.479 --> 03:19:50.380
So for for the rest people, that's the thing. The,

2050
03:19:51.015 --> 03:19:53.755
the main focus is to be this more community driven

2051
03:19:54.135 --> 03:19:59.994
kind of node. So because we see it on the GitHub, so we have a lot of forks. We have a lot of stars, people really participating.

2052
03:20:00.640 --> 03:20:02.659
So, and this is a thing something

2053
03:20:02.960 --> 03:20:11.096
for Raspberry Piplitz to be really just open platform. If people want to tinker, if people want to develop, that's that's definitely something we want to be open for.

2054
03:20:11.955 --> 03:20:25.655
Because this whole project started from the lightning hack days we did back in the days in Berlin like they were in the recipe boat and then it did, it developed out into the recipe blitz. And so this we wanna keep this spirit going. That's kind of a thing our main focus.

2055
03:20:26.615 --> 03:20:27.115
Awesome.

2056
03:20:29.016 --> 03:20:32.395
So, I mean, Keegan, you guys have a very different approach there

2057
03:20:32.750 --> 03:20:34.850
with start 9. How do you think about that?

2058
03:20:35.150 --> 03:20:39.330
Yeah. The central thing that we're trying to accomplish is that

2059
03:20:40.235 --> 03:20:51.070
we've kind of identified that Bitcoin as a project will not succeed and retain the properties that it was designed for in namely, you know, censorship resistance, you know, seizure resistance, inflation resistance.

2060
03:20:51.610 --> 03:20:58.511
If the number of properly used nodes is comparatively small to the number of people who use Bitcoin.

2061
03:20:58.955 --> 03:21:00.575
So we are trying to expand

2062
03:21:00.955 --> 03:21:05.694
the number of users of Bitcoin in the proper way, so to speak,

2063
03:21:06.130 --> 03:21:12.870
to the largest set that we can reasonably do. And that means that we have to do a tremendous amount of work on the user experience side.

2064
03:21:13.266 --> 03:21:22.740
So we do a little bit less catering towards the tinkerers. Not that those people like, those people are tremendously important to the community and, you know, not one size of product fits all. But

2065
03:21:23.860 --> 03:21:27.721
if everyone isn't really running their own node but they're still using Bitcoin,

2066
03:21:28.181 --> 03:21:38.364
bitcoin is at risk of various forms of capture. And so it's very important that as many people are running it as possible. And so UX is kind of always at the top.

2067
03:21:38.744 --> 03:21:39.965
Now that does mean

2068
03:21:40.700 --> 03:21:52.215
removing certain decisions from the point of view of the user. But we try very, very hard to make a distinction between user like choices users have to make because they have to just, you know, use a computer

2069
03:21:52.755 --> 03:21:57.495
versus choices they have to make that materially affect the way that they actually use Bitcoin.

2070
03:21:57.910 --> 03:21:58.890
And so if

2071
03:21:59.430 --> 03:22:17.940
and we try to give as many of those decisions back to the user as possible because after all, if we're making decisions for how people are using Bitcoin, in some sense, we might be capturing their ability. We don't want to do that either. So it's this delicate trade off between trying to make it as streamlined as possible but still affording the user decisions,

2072
03:22:18.561 --> 03:22:21.540
to be able to use, Bitcoin in a sovereign way.

2073
03:22:23.226 --> 03:22:28.686
Makes a lot of sense. I mean, I think it's pretty cool that, you know, we do have 4 of the major node projects up here.

2074
03:22:29.145 --> 03:22:30.285
And you guys have,

2075
03:22:30.770 --> 03:22:35.270
com like, you all take completely different trade off balances, I feel like.

2076
03:22:36.770 --> 03:22:46.755
So, Jonas, when you're talking about nix Bitcoin, like, how do you relate to what what these 2 guys just, Yeah. I would I would say we're yet on another end of the spectrum because,

2077
03:22:47.395 --> 03:22:47.895
we

2078
03:22:48.820 --> 03:22:52.280
mostly cater towards tinkering. Our main focus

2079
03:22:52.660 --> 03:22:54.359
emphasis is security,

2080
03:22:54.979 --> 03:22:55.479
privacy

2081
03:22:55.939 --> 03:22:56.760
and customizability.

2082
03:22:58.645 --> 03:23:01.686
The trade off for doing that is that,

2083
03:23:02.565 --> 03:23:08.710
Nix Bitcoin has kind of a steep learning curve and doesn't have a graphical user interface, for example,

2084
03:23:09.810 --> 03:23:12.150
for most of the things that it does.

2085
03:23:13.065 --> 03:23:13.565
But,

2086
03:23:14.105 --> 03:23:17.005
I call this as the most low time preference

2087
03:23:17.465 --> 03:23:18.445
node choice

2088
03:23:18.905 --> 03:23:21.085
because in the beginning you need to

2089
03:23:21.950 --> 03:23:23.410
invest a lot of time.

2090
03:23:24.510 --> 03:23:34.345
It depends on how you use it, but you need to invest some time to get up to speed with it. But then you will, reap the results, which I really think are a superior,

2091
03:23:34.805 --> 03:23:36.825
privacy and security on the system.

2092
03:23:38.000 --> 03:23:42.260
Yeah. I mean, there is a bit of a steep learning curve there, but, you guys are definitely

2093
03:23:43.360 --> 03:23:49.295
a a a unique project in the space. It's definitely really appreciated how much focus there is on on security and reproducibility.

2094
03:23:50.875 --> 03:23:52.976
So, I mean, s 2, you're kind of,

2095
03:23:53.689 --> 03:23:56.990
I feel like you're kind of in the middle. So so Raspberry Pi Blitz,

2096
03:23:59.530 --> 03:24:38.540
I guess, actually, Raspberry Pi Blitz is doing a similar thing. So start 9, the main the main use users of start 9 are actually buying devices directly from you, Keegan. Right? Yeah. That's that's correct. We sell, like, an integrated product. Again, it's about streamlining the entire process, and there are people who are going to have Raspberry Pis that they can repurpose and and, you know, install software too, and that's perfectly fine. But there's, like, an entire category of users that don't even wanna do that. And in my mind, like, we have a 100000000 Bitcoin users today. Like, you know, not even all of those use their or, like, have their own keys, which is, you know, itself a problem, not one that we're directly setting out to solve at the moment. But

2097
03:24:39.065 --> 03:24:57.604
then there's another category of users that may have their own keys, but don't use their own nodes. And we're really just trying to say, like, how can we make it such that we have as few people who are using Bitcoin at an arm's length distance as possible? How can we close the gap between people who are using Bitcoin as a, like, unit of account, so to speak,

2098
03:24:58.305 --> 03:25:20.490
all the way to using Bitcoin in its intended design with the properties that make Bitcoin special. But would you say, like, 9 like, 90% or something of of Embassy users are using the prebuilt? Or Yeah. I'd say most of them. We we don't really have a way to track those metrics Right. Because anybody who builds from like, we don't build any sort of analytics data for privacy and Yeah. I'm just saying my gut. Right? Like, the

2099
03:25:21.030 --> 03:25:30.935
Yeah. I mean, like, my gut instinct is, yeah, like, the the vast majority of them are are purchasing it. Because the the reason I'm going into that is, so, like, with s 2, with Ronin Dojo, Ronin Dojo was

2100
03:25:31.314 --> 03:25:38.020
primarily a build your own project, open source project Yeah. The no layer monetization, and recently, you started selling

2101
03:25:38.399 --> 03:25:44.660
prebuilts. Right. Right. We kinda saw both ends that people want to maybe customize and build their own node

2102
03:25:44.965 --> 03:25:46.265
or they want the convenience.

2103
03:25:47.444 --> 03:25:54.560
So we we wanna kinda offer all of it. But you wanna talk a little bit about, like so, like, Ronin Jojo is a free open source project. Yep.

2104
03:25:55.119 --> 03:25:58.500
But but you want to be sustainable. You don't wanna be,

2105
03:25:59.439 --> 03:26:00.579
dependent on donations.

2106
03:26:00.960 --> 03:26:10.595
Yeah. Yeah. I mean, how do you give software away for free and keep a roof over your head. Right? Right. So we build, products and services around it. You know, essentially, we have a focus on transactional

2107
03:26:17.540 --> 03:26:28.915
Raspberry Pi and build 1, whether they wanna use the either buy a Raspberry Pi and build 1, whether they wanna use the command line interface or if they wanna buy a pre built node and just have it be plug and play.

2108
03:26:29.710 --> 03:26:34.770
You know, we know that there's people who are hungry across this spectrum of nodes and node offerings.

2109
03:26:35.391 --> 03:26:43.285
Yep. I think the support feature is pretty cool. Do you wanna go into that a little bit? Or Yeah. We have a premium support model. So we'll, like, walk people through,

2110
03:26:43.745 --> 03:26:50.529
people need to know how to manage their UTXOs or use Bitcoin privately, and they don't wanna be tracked or surveilled.

2111
03:26:51.149 --> 03:26:58.465
We're happy to provide premium support, and that's just another service we can build around the product so that we can, you know, monetize and,

2112
03:26:59.104 --> 03:27:01.284
continue to give the software away for free.

2113
03:27:01.940 --> 03:27:06.280
Rousseau, how do you feel about monetization? I mean, because you guys sell prebuilts too.

2114
03:27:06.660 --> 03:27:11.995
Does that go to directly fund development? Is that is that is it a similar strategy, or is it

2115
03:27:12.795 --> 03:27:19.055
Yeah. Basically, that's, that's the one way how we can refinance a little bit like the, the cost for development.

2116
03:27:19.370 --> 03:27:25.550
And it's it's and it's an it's also a nice way for people to support the the project like, okay. I buy

2117
03:27:26.010 --> 03:27:29.625
a prebuilt node at the shop. It's a good way to kind of support,

2118
03:27:30.564 --> 03:27:32.024
the the whole kind of development.

2119
03:27:33.125 --> 03:27:33.625
Awesome.

2120
03:27:34.790 --> 03:27:38.010
So, I mean, I don't this question is not necessarily directed at anyone,

2121
03:27:38.950 --> 03:27:39.450
specifically.

2122
03:27:42.045 --> 03:27:50.064
I guess, I mean, since I have all 4 of you on stage, like, do any of you have any concerns about, you know, maybe one node project becoming

2123
03:27:50.750 --> 03:27:55.649
the predominant node project and how do you how do you think about that? I mean, whoever wants to jump in here.

2124
03:27:55.950 --> 03:28:22.695
I think the I think the the more easy it is to migrate between them, the less important that it is that one that it's like that there isn't a dominant one at any given time. Right? Like, what you don't want is a situation where there's a dominant node product and they they lock you in super hard to their ecosystem because that is a means of exerting control that very similar to the way that we see in, like, web 2 so to speak or, like, the the big walled gardens of the giant Internet companies.

2125
03:28:23.235 --> 03:28:23.735
But

2126
03:28:24.596 --> 03:28:44.564
in the absence of that heavy lock in, which Bitcoin itself is pretty good at doing, the entire BIP and lightning standards process makes it significantly easier to migrate between things. Which means that at any given time, if there is a dominant implementation, it's not like they have this sort of, like, stronghold that can't be breached. So they're kinda they're kept honest

2127
03:28:44.870 --> 03:28:48.650
by the fact that users can migrate. I mean, there's so many different,

2128
03:28:49.030 --> 03:28:55.545
applications to, you know, what people want. There's, you know, there's a big spectrum of nodes. Some people might want certain services.

2129
03:28:56.564 --> 03:29:02.870
It's hard to encompass everything in one project. There's always gonna be people who are interested in, like, very hardcore security

2130
03:29:03.330 --> 03:29:05.510
or they want, you know, transactional privacy

2131
03:29:06.050 --> 03:29:08.585
or, you know, it's there's a lot of different applications

2132
03:29:08.966 --> 03:29:17.310
you can host, and, it's hard to pack it all onto one device and to cover the entire spectrum. And then but so so with On Chain Bitcoin, with the regular

2133
03:29:17.689 --> 03:29:19.949
Bitcoin node that you're using with On Chain,

2134
03:29:21.689 --> 03:29:27.595
it's pretty easy to move around and change what software you're running and which which nodes you wanna run.

2135
03:29:28.694 --> 03:29:32.454
There is but a lot of people now, like, one of the main reasons they use

2136
03:29:33.050 --> 03:29:36.350
a who who here runs a lightning node? Use a lightning node?

2137
03:29:37.449 --> 03:29:39.069
Okay. So all of these people,

2138
03:29:39.770 --> 03:29:46.935
there's a degree of lock in with lightning channels. Right? Like, how do do you think do do you guys think there should be, like,

2139
03:29:48.354 --> 03:29:49.415
some kind of

2140
03:29:50.970 --> 03:29:51.470
standardization

2141
03:29:51.850 --> 03:29:52.909
in terms of,

2142
03:29:53.529 --> 03:30:10.920
like, porting those light like, that lightning database without, like, corrupting your state and and getting the penalized transaction and losing funds. Is that should that be a priority in this space, like, for easy migration in that regard? Because I I would say that's probably the number one lock in, especially if we, like, enter,

2143
03:30:11.940 --> 03:30:14.520
like, a sustained fee and high fee environment.

2144
03:30:14.915 --> 03:30:18.695
And next thing you know, like, fees are a 120 sats per byte or something,

2145
03:30:19.395 --> 03:30:25.750
it it would be very expensive to close channels and then reopen somewhere else. So I feel like it it makes it, like, kind of resistant.

2146
03:30:26.130 --> 03:30:29.650
Jonas, do you have an opinion on this? I think this is a good point.

2147
03:30:30.370 --> 03:30:31.990
In the Nix Bitcoin case,

2148
03:30:32.615 --> 03:30:40.620
it is definitely possible to do all this migration, but it's a very manual process that can also go wrong in horrible

2149
03:30:41.160 --> 03:30:41.660
ways

2150
03:30:42.520 --> 03:30:45.020
because it's lightning and lightning is very stateful.

2151
03:30:45.880 --> 03:30:51.475
And, yeah, you you know the problems with with this. So, I think this is one of the the things that,

2152
03:30:52.415 --> 03:30:55.875
are part of the migration, but there are, of course, also

2153
03:30:57.150 --> 03:30:59.811
other things, I would think, like all the interfaces,

2154
03:31:00.270 --> 03:31:08.436
how how have you how have you set up your nodes in node in terms of options. Right? Every node project has a different interface

2155
03:31:08.815 --> 03:31:12.995
and all of this, I don't really think this is portable really,

2156
03:31:13.819 --> 03:31:19.600
like something you could easily do in 5 minutes because this would just having a standard on this would just hold back

2157
03:31:20.060 --> 03:31:20.560
innovation

2158
03:31:20.995 --> 03:31:38.875
in this space because I think it's a lost cause. It's like that I think this part seems to be a lost cause to me at least. I think there's there's 2 questions here that you're asking. There's the your there's the the migrate ability between the node projects, and then there's actually the migrate ability between different lightning implementations. Yeah. That's even If you wanna move from LND

2159
03:31:39.415 --> 03:31:44.155
on the embassy to LND on Ronan Dojo or on to LND on,

2160
03:31:44.855 --> 03:31:45.915
you know, RASPipelets

2161
03:31:46.670 --> 03:31:47.569
or NEX Bitcoin.

2162
03:31:48.350 --> 03:32:19.266
The you're not really having to do any serious lightning channel migrations because the data format is ultimately the same. It's really can we shuffle data from point a to point b. And, like, you probably don't need a standards process for that. You just need to have relatively stable locations that these things need to be in. And never turn on the old node again. Right. And and so, so, yeah. Like, Lightning itself has its own problems with respect to how stable it is in the presence of multiple nodes. But even, like, just cloning your hard drive and trying to set up a second one, it's gonna run you into that problem as well.

2163
03:32:19.885 --> 03:32:33.895
And then this there's the second question that you're asking, which is migrations between different lighting implementations. So LND, seat lighting, eclair, anything else that pops up. Okay, yeah. And that one I'd like to see a lot more standardization,

2164
03:32:34.275 --> 03:32:48.310
but the various teams that are working on that may or may not have the incentive to do so. And similarly to the various node projects it's not necessarily the case that any of us will have the direct incentive other than maybe, you know, sort of any goodwill that we have towards,

2165
03:32:48.770 --> 03:32:51.815
supporting the the ethos of the of the movement.

2166
03:32:53.235 --> 03:32:53.735
But

2167
03:32:54.115 --> 03:32:59.175
it's also can it's very tricky with lightning because so many things can go wrong, because

2168
03:32:59.540 --> 03:33:03.640
of the very delicate game theory and punishment schemes that keep the Lightning,

2169
03:33:04.340 --> 03:33:05.560
incentives honest,

2170
03:33:07.085 --> 03:33:09.585
and and and the the sort of

2171
03:33:10.045 --> 03:33:14.944
very few tools that we used to make that happen, which is why we have Lightning at all right now,

2172
03:33:15.680 --> 03:33:16.740
because of that delicacy,

2173
03:33:17.280 --> 03:33:18.660
it is difficult

2174
03:33:19.440 --> 03:33:28.515
to make it such that people can't screw it up. Right. And as a result, I think a lot of the the node implementations And when I say node, I mean, like, LNDC lightning, etcetera.

2175
03:33:28.895 --> 03:33:32.115
Haven't really given it a lot of, effort because,

2176
03:33:32.700 --> 03:33:40.815
you know, there's a lot of ways to screw it up. People shouldn't be doing it anyway, so why commit effort to it? But I think the longer that we see it, like, in a 120 SOUNDS

2177
03:33:41.455 --> 03:33:42.596
per byte environment

2178
03:33:43.136 --> 03:33:50.195
sustain for years, which we can expect I think if we're gonna be trying to onboard millions of users over the next few years,

2179
03:33:52.189 --> 03:33:59.895
in that sort of a situation, we may not have another choice. And so whether that's people who step up from the community to figure out how to do this, whether it's, you know, the implementations

2180
03:34:00.195 --> 03:34:07.790
themselves that, you know, put effort into it. Like, we have a certain amount of incentive to write migrations from others

2181
03:34:08.170 --> 03:34:10.830
from other node implementations to us. And so correspondingly,

2182
03:34:11.449 --> 03:34:19.444
you know, other implementations might have an incentive to write migrations from our stuff to theirs. And so, like, I think I think we'll see it materialize on a need basis,

2183
03:34:19.745 --> 03:34:22.005
but, you know, it's one of those things that

2184
03:34:22.610 --> 03:34:27.750
necessity is the mother of invention here. Right. Rudolf, I mean, I think you guys actually had

2185
03:34:28.770 --> 03:34:39.935
there was a migration tool or a migration setup with Umbrel. Was that Yeah. We have migration. So if you run-in Umbrel, a Citadel, or a MyNode, you can basically migrate to Respiblitz.

2186
03:34:40.490 --> 03:34:46.270
It will only take your kind of blockchain and the, and the l and d funds and channels.

2187
03:34:46.730 --> 03:34:56.421
If you use any other apps on on on on those, node projects, this data will not get And that's l and d to l and d. Right? You're not Yeah. It's LND to LND. Cross

2188
03:34:56.801 --> 03:35:02.820
name before lightning. The the the the recipe blitz itself has also c lightning, so, you you have both there.

2189
03:35:03.524 --> 03:35:04.325
So the

2190
03:35:04.965 --> 03:35:10.885
so the other kind of all have just l and d, so, that's easy to kind of get over because those ones is,

2191
03:35:11.520 --> 03:35:17.860
you know, just even migrating the main chain data, not just having to do the IBD again and download 450

2192
03:35:18.400 --> 03:35:32.960
gigs of blockchain. Right. You know, it's great to be able to switch between nodes and just, you know, you already have your blockchain data and yeah. I think it's we all have an incentive to help the users switch between easily. Mhmm. So, I mean, out of

2193
03:35:33.340 --> 03:35:38.484
out of all 4 node projects here, star 9 is the only one that

2194
03:35:39.345 --> 03:35:43.765
offers users the ability to run non Bitcoin apps on the node.

2195
03:35:45.020 --> 03:35:52.936
And, like, jumping off of what Rusol was mentioning about, obviously, not being able to migrate from apps that don't exist on Raspberry Pi Blitz.

2196
03:35:53.555 --> 03:35:56.855
Do you how do you think about that in terms of both,

2197
03:35:59.250 --> 03:36:06.550
you know, lock in or, like, a soft lock in where they they already have their files set up? They already have you know, maybe they're using

2198
03:36:07.045 --> 03:36:09.225
their self hosted photo sharing

2199
03:36:10.484 --> 03:36:23.540
and then also having that as their main Bitcoin node. Like, is that is that a concern? Or I guess they could just move to just a new Bitcoin node and keep the star 9 for everything else. I'm just answering my own question. There is absolutely nothing,

2200
03:36:24.016 --> 03:36:27.995
that stops people from using multiple versions of these sorts of things,

2201
03:36:29.495 --> 03:36:31.995
to manage different parts of their lives.

2202
03:36:32.930 --> 03:36:38.050
We our mission is a little bit more broad than Bitcoin in general. I think we see a lot of these,

2203
03:36:38.930 --> 03:36:51.835
freedom infringements in other parts of our lives. I think the one that might resonate with a lot of people in this room is, like, Twitter banning people who happen to be having the the incorrect view of the day, which may shift by the day.

2204
03:36:52.479 --> 03:37:03.925
And so you might have, like, competing projects like Mastodon, which are have been around for a while, but they just haven't experienced wide deployments because, you know, we have not put the effort into having a peer to peer deployment,

2205
03:37:05.824 --> 03:37:13.810
that that is made easy for people. And so we we wanna be able to bring that to as many aspects of people's digital lives as possible and Bitcoin is one section of it.

2206
03:37:14.270 --> 03:37:18.235
But, you know, there's nothing there's absolutely nothing that stops someone from, like,

2207
03:37:18.615 --> 03:37:26.155
running, you know, 2 different node implementations and, you know, the star 9, embassy 1 being for their non bitcoin stuff and, you know, their

2208
03:37:27.260 --> 03:37:47.030
whatever other implementation that they're using for their bitcoin stuff. Right. So I wouldn't necessarily say that it's, like, soft lock in on a, like, cross app basis. Right. You might have some soft lock in in the sense that if, you know, you are running an app that one of the other implementations doesn't have, then, you know, that's that is a locking of sorts. But we

2209
03:37:48.131 --> 03:37:50.711
we generally take the position that any

2210
03:37:51.091 --> 03:37:53.270
application that is on our,

2211
03:37:54.484 --> 03:37:55.305
on our node

2212
03:37:55.925 --> 03:38:14.846
has to be open source. Right? It doesn't necessarily have to be fast, but it needs to have the source absolutely available. And that is what helps people be able to actually break those lock ins. Right? Because they know the data formats. They can be like, okay. I want me to go scrape this out and move it over. Would you even would you even frame start 9 as a Bitcoin node, or is it it's like a

2213
03:38:15.466 --> 03:38:16.445
a self hosting

2214
03:38:17.641 --> 03:38:18.141
everything

2215
03:38:18.761 --> 03:38:23.801
with Bitcoin? It's a personal private server, and we named it the embassy not on a whim.

2216
03:38:24.280 --> 03:38:27.385
We kinda think about it as sovereign territory and foreign land.

2217
03:38:27.865 --> 03:38:32.685
Right? Where the Internet is this kind of like wild west and this is kind of like your your,

2218
03:38:33.145 --> 03:38:35.085
you know, castle, your your embassy,

2219
03:38:35.625 --> 03:38:36.925
your your location

2220
03:38:37.790 --> 03:38:44.130
that you have sovereign control over even though sort of outside of the walls, it may not be as safe.

2221
03:38:45.125 --> 03:38:46.585
So, I mean, part of,

2222
03:38:48.405 --> 03:38:54.439
part of the reason why this idea of lock in with nodes, I think most of you would agree with me,

2223
03:38:54.899 --> 03:38:59.000
is a concern that maybe one of the node projects becomes

2224
03:39:00.056 --> 03:39:03.676
malicious or nonaligned with users or, you know, starts

2225
03:39:04.056 --> 03:39:14.680
releasing you know, like like the fork wars we had, right, where they maybe you know, we didn't have these node projects at the time. Most people were just running Bitcoin Core on their computer themselves.

2226
03:39:16.505 --> 03:39:19.165
If one of if one of the major node implementations

2227
03:39:19.705 --> 03:39:23.404
was pro Segwit 2x and they sent out an update to everybody

2228
03:39:24.870 --> 03:39:26.890
and switched them towards that,

2229
03:39:27.590 --> 03:39:29.930
that could obviously become a major issue.

2230
03:39:31.265 --> 03:39:33.364
But at the same time, because of lightning

2231
03:39:33.904 --> 03:39:35.845
so there was this ethos in Bitcoin

2232
03:39:36.305 --> 03:39:37.364
that it was like,

2233
03:39:37.824 --> 03:39:43.101
don't update right away. First of all, no auto updates, period. Because if you have auto updates, someone can,

2234
03:39:43.960 --> 03:39:58.825
issue you an auto update, and that auto update could be malicious. Yeah. Like, I to to briefly add on to that. If you self host your stuff but the operating systems or the apps have the ability to force updates on you, you your self hosting isn't doing a lot. Right.

2235
03:39:59.351 --> 03:40:08.070
Self hosting is supposed to afford you a sense of control, and forced updates undermine that. Right. It's a it's an attack vector. It's a centralized attack vector. So then

2236
03:40:08.775 --> 03:40:12.875
but at the and and there was this the ethos went farther than that. It was like

2237
03:40:13.415 --> 03:40:17.676
and I I still think it's that way today, at least on base chain, which is, you know,

2238
03:40:18.300 --> 03:40:19.840
there's no rush to update.

2239
03:40:20.300 --> 03:40:24.399
You can be a couple versions behind. In a lot of ways, that could be more prudent,

2240
03:40:25.886 --> 03:40:31.426
while while review is happening on on on new nodes or new, you know, new node versions,

2241
03:40:33.950 --> 03:40:41.730
or at least, you know, maybe have some people that are still running older versions. You know, people run really old versions of Bitcoin and still backwards compatible.

2242
03:40:42.035 --> 03:40:43.735
But then on the lightning side,

2243
03:40:44.275 --> 03:40:45.415
you know, there's situations

2244
03:40:45.875 --> 03:40:48.615
where it's like, if you don't update right now,

2245
03:40:49.235 --> 03:40:54.360
there's major fund loss risk. Like, I remember I was here in Miami for the HRF event,

2246
03:40:56.440 --> 03:40:57.660
and I was on stage.

2247
03:40:58.335 --> 03:41:02.495
And I got off the state I got off stage, and Stefan came up to me, and he was like

2248
03:41:03.615 --> 03:41:05.555
I I think it was 2 lightning implementations.

2249
03:41:06.320 --> 03:41:11.221
I don't I definitely, LND was one of them because I was running LND, and it was, like, update immediately,

2250
03:41:11.681 --> 03:41:14.900
you know, attack in the wild. You can lose funds right now.

2251
03:41:15.556 --> 03:41:16.775
And I was on stage,

2252
03:41:17.315 --> 03:41:27.000
and my node wasn't accessible to me. And just for, like, a week, I just obviously didn't update because I couldn't. And then I got home and didn't lose any money, so it worked out. But

2253
03:41:28.101 --> 03:41:31.641
is there an argument to be made that on the lightning side,

2254
03:41:33.065 --> 03:41:34.045
because it's so

2255
03:41:34.346 --> 03:41:34.846
new

2256
03:41:35.306 --> 03:41:39.390
that there should be auto updates? Like, how do you guys think about it? Like, Jonas, what do you think about that?

2257
03:41:40.430 --> 03:41:42.210
No. Auto auto updates

2258
03:41:42.590 --> 03:41:46.050
are are, are not a good thing, of course, for

2259
03:41:47.945 --> 03:41:51.965
beta software, perhaps like Lightning or experimental in some sense,

2260
03:41:52.745 --> 03:41:53.806
you need to

2261
03:41:54.740 --> 03:41:59.240
use frequent updates, you need to take care of your funds, of course.

2262
03:42:00.100 --> 03:42:02.200
Running a node isn't easy today.

2263
03:42:02.735 --> 03:42:07.555
It will take some time until it will be easy. And one of the parts that make it hard is that you need to keep

2264
03:42:07.935 --> 03:42:10.195
up to date with updating your

2265
03:42:10.815 --> 03:42:11.315
software

2266
03:42:11.760 --> 03:42:13.300
as well. And back to

2267
03:42:13.840 --> 03:42:20.500
the Bitcoin code even in that case I wouldn't be so sure whether it makes sense to run old Bitcoin

2268
03:42:20.865 --> 03:42:26.885
versions because you never know if a new Bitcoin version has some kind of hidden bug fix.

2269
03:42:27.985 --> 03:42:30.085
So, one of the things that

2270
03:42:31.069 --> 03:42:37.170
some people do for example is to have like 2 Bitcoin nodes that are connected to each other and

2271
03:42:37.615 --> 03:42:43.475
like, you have one one of them facing the outer world that is an updated node,

2272
03:42:44.175 --> 03:42:52.479
updated to the most recent version, and then you have another node that is just connected to this gateway node and running an older version. And this is for example something

2273
03:42:52.785 --> 03:42:55.604
that you could do, with, Nix Bitcoin.

2274
03:42:56.545 --> 03:42:59.365
Oh, that's interesting. So it's, like, built in that way

2275
03:42:59.745 --> 03:43:02.200
intentionally, or is there is it just

2276
03:43:02.601 --> 03:43:21.020
users can can do that? It's just built customized enough so that you could, that you could build that. Got it. As long as the user has a choice, I think it's you know, that's really important. And, also, if you're in beta or, you know, lightning and doing experimental things, you should put proper warnings and let people know

2277
03:43:21.399 --> 03:43:24.700
that, you know, don't don't put more on there than you're willing to lose.

2278
03:43:25.080 --> 03:43:26.859
But isn't that kind of bullshit warning?

2279
03:43:27.240 --> 03:43:33.125
It is. But if you're in beta, you just you need to do your users justice and let them know and properly

2280
03:43:33.505 --> 03:43:37.604
educate them that they need to pay attention to every update and be aware.

2281
03:43:38.221 --> 03:43:42.320
Fair enough. And this is you know, anytime you're developing something like this, you go

2282
03:43:42.860 --> 03:43:50.025
through long periods of you know, the users need to be aware of all these changes that are being made. Rutzel, how do you feel about this?

2283
03:43:50.726 --> 03:43:57.180
I think if you the question is always the of the the of centralization. Right? Because this is one point the update is coming from.

2284
03:43:57.880 --> 03:43:59.580
So if if you can put in

2285
03:44:00.120 --> 03:44:17.630
another service provider that, that built makes a build for you, somebody, a group that you trust, something like this. This could it could be something a little bit more easy for the user. Maybe pushing hard into into your node is always critical. This is why Rescooblets always has to make a USB card, and it goes through the update, basically.

2286
03:44:18.330 --> 03:44:24.545
But I think when you go into this convenient thing, because in the end, that's what a lot of users want is the easy update,

2287
03:44:25.404 --> 03:44:41.825
then you at least have to think about making it possible to that you can choose your source of updating and you can choose your kind of trust group, and you're not, not everything is targeted to this one company. But so you have, like, multiple update sources? It's like a toggle or something? Yeah. Not exactly. We have to see what system, but, basically,

2288
03:44:42.205 --> 03:44:48.305
just you can choose, like, oh, I always get my build image from there or something. So yeah. So that you really can

2289
03:44:48.740 --> 03:44:59.444
can can have not this one company that can just do this. Yeah. I mean, like, in the newest copy of MCOS in the 0 three o, we actually did introduce preliminary support for alternate marketplaces

2290
03:44:59.824 --> 03:45:01.845
for precisely this reason, which is that

2291
03:45:02.465 --> 03:45:10.570
we are aware there's a certain amount of trade offs that we have to make and, like, certain amount of, like, imperfection we have to accept in the short term, which is that, you know, we're providing

2292
03:45:10.950 --> 03:45:12.250
most if not every,

2293
03:45:12.870 --> 03:45:23.475
update that people are gonna be absorbing. But we're, like, intimately aware of the fact that, like, we could be co opted either, you know, through just, like, leadership changes or, you know, you know, various

2294
03:45:24.091 --> 03:45:46.680
unfriendly organizations that can put us under duress. Like we're aware that that can put our users at risk. And so like I think having these this sort of multi sourced package model similar to the way that, like, app on Ubuntu works or the way that, like, Linux package management works but kind of, like, dressed up in a way that makes that can give better intuition to to users about, like, what it actually is. Because, like,

2295
03:45:47.060 --> 03:45:51.000
you know, people have experiences of buying the same product from different stores.

2296
03:45:51.315 --> 03:45:55.175
Right? And so to the degree that that could be conveyed, I think users can actually

2297
03:45:55.556 --> 03:45:58.535
take responsibility for those sorts of things. Right.

2298
03:46:00.675 --> 03:46:02.689
I mean, I think it'd be kinda cool if you

2299
03:46:03.130 --> 03:46:05.310
just, like, thinking out loud if there was, like,

2300
03:46:07.290 --> 03:46:14.565
a new, you know, new Bitcoin core version comes out, new Bitcoin d comes out, and you have, like, 3 different sources that you pulled from,

2301
03:46:15.025 --> 03:46:16.565
and you can tell that

2302
03:46:17.080 --> 03:46:21.500
that all the hashes are the same. Like, they're the same file for all 3 just at the bare minimum.

2303
03:46:22.600 --> 03:46:24.060
But, like, there is there

2304
03:46:24.760 --> 03:46:26.300
I feel like there's a,

2305
03:46:28.186 --> 03:46:32.765
we want as many people to use their own note as possible. Right? We want it to be as accessible as possible.

2306
03:46:33.145 --> 03:46:35.245
But it kinda it does go up against

2307
03:46:35.705 --> 03:46:36.205
this

2308
03:46:36.780 --> 03:46:38.640
idea that you have

2309
03:46:39.420 --> 03:46:42.080
personal responsibility will never be the easiest one.

2310
03:46:42.540 --> 03:46:48.185
And, like, even without I'm I know I'm sticking on this auto update thing, but even without auto updates, like,

2311
03:46:49.045 --> 03:46:55.060
Umbrel pops up, like, update, and they just press the button. Right? Like, it's still manual at least.

2312
03:46:55.440 --> 03:46:57.700
That's still a benefit. But is there a concern

2313
03:46:58.560 --> 03:47:00.820
is there is do you guys have a concern?

2314
03:47:01.545 --> 03:47:03.805
And, I mean, I'll direct this to Jonas because,

2315
03:47:04.825 --> 03:47:10.899
I mean, I think your users are more experienced. But do you do you have a concern with users of these more convenient

2316
03:47:11.200 --> 03:47:12.340
node packages

2317
03:47:13.200 --> 03:47:13.700
that

2318
03:47:14.560 --> 03:47:20.324
they kind of just, like, blindly follow that they're not necessarily educated users in that regard? Is that a real

2319
03:47:20.705 --> 03:47:21.205
concern?

2320
03:47:22.064 --> 03:47:26.465
I think that's a concern, but that's very hard to prevent, I suppose, because you

2321
03:47:27.490 --> 03:47:39.955
not everyone can read the code and see what what happens in between. You need some kind of oracles that will tell you whether this is good code or not. In the end, you need to trust someone. No one of us reads all the code,

2322
03:47:40.735 --> 03:47:42.755
that they're running. So this problem

2323
03:47:44.380 --> 03:47:47.040
will never go away. You can, I think, reduce

2324
03:47:47.739 --> 03:47:48.460
some of the,

2325
03:47:49.899 --> 03:47:53.359
some of the attack vectors that are there if you, for example,

2326
03:47:54.685 --> 03:48:00.385
have your releases signed by multiple people or even built by multiple people,

2327
03:48:00.845 --> 03:48:02.450
like Bitcoin Core does,

2328
03:48:03.010 --> 03:48:10.710
for example? And this already reduces the attack surface quite a bit, but you will never get rid of this problem entirely.

2329
03:48:11.505 --> 03:48:30.824
Yeah. The price of freedom is personal responsibility. I think our job as the implementations is to provide users ever increasing leverage on the knowledge that they have. Right? So they still have to be the one in the driver's seat. They still have to be the one making decisions. But there are a lot of bullshit decisions when you're trying to set up nodes. Right? There's things that don't really matter

2330
03:48:31.364 --> 03:48:41.720
to your ability to to to work on it. And to the degree that we can eliminate those and make it such that the only decisions they have to make are the ones that materially affect their outcome and what they're what kind of software they're running,

2331
03:48:42.420 --> 03:49:00.300
like, that at least reduces the cognitive load enough that they can actually take an active role in that process. And, like, that's that is an ever improving thing. It's not like any of us has, like, the holy grail of that today. But I think that's the ultimate mission of, like, everybody sitting on this panel right now is, like, can we provide

2332
03:49:00.840 --> 03:49:02.460
higher leverage to users?

2333
03:49:03.595 --> 03:49:04.875
I think that's really well put.

2334
03:49:05.435 --> 03:49:20.290
I mean, because everything will always have trade offs. So you can eliminate trade offs. It's just different trade off balances that you come to come to terms with. And every once in a while, you can push the frontier further. Right? It's like not every trade off is, like, neutral with with respect to value. Right. But,

2335
03:49:20.705 --> 03:49:21.604
like, you know,

2336
03:49:21.905 --> 03:49:31.160
you wanna give them the entire trade off curve if you can. And then, you know, when you can get these sort of free wins and push that frontier forward, just you fucking do it.

2337
03:49:32.900 --> 03:49:33.400
So,

2338
03:49:34.260 --> 03:49:38.920
I mean, we still have a little bit of time left. I kinda I'm curious. I mean, you guys are just

2339
03:49:39.506 --> 03:49:43.285
heads heads down, really focused on on this.

2340
03:49:44.945 --> 03:49:53.250
I guess I'll start with Rutsal. Like, Rutsal, when you think about the evolving node space because I feel like if if if you're a relatively new Bitcoin user,

2341
03:49:54.190 --> 03:50:09.319
you might be under this impression that there's always been all of these independent node teams trying to take different trade off balances and make using your own node more convenient, but it's a relatively recent phenomenon. It's like the last 3 years has really blossomed, and

2342
03:50:09.779 --> 03:50:13.399
I for this panel, I tried to get as many of the node teams as possible.

2343
03:50:14.564 --> 03:50:17.944
And when you start to think about it, it's like maybe there's, like, 7 or 8,

2344
03:50:18.725 --> 03:50:19.864
like, major ones.

2345
03:50:20.564 --> 03:50:32.455
But, fortunately, we got these 4 these 4 legends over here. So, Rizal, when you think about, like, this evolving node space, what do you like, what's the what's your biggest concern? Like, what keeps you up at night?

2346
03:50:33.495 --> 03:50:33.975
Yeah.

2347
03:50:34.375 --> 03:50:38.715
So you can see we have this one very dominant, node distribution out there,

2348
03:50:39.415 --> 03:50:42.790
and it would not be, again, it would not be the problem if,

2349
03:50:43.750 --> 03:50:47.530
if it would be free and open source because then if if it comes to dominant

2350
03:50:47.875 --> 03:50:55.415
and people don't like it, they can always talk often, then you we can you can have multiple competing projects and you choose which one you you go.

2351
03:50:56.100 --> 03:50:57.160
So a little bit,

2352
03:50:57.540 --> 03:50:59.240
this this this is a concern,

2353
03:51:00.260 --> 03:51:01.480
but just a concern,

2354
03:51:02.500 --> 03:51:03.720
when it comes to,

2355
03:51:04.740 --> 03:51:05.480
how to say,

2356
03:51:06.245 --> 03:51:15.145
as long as migration is there, I'm I can sleep good. So that that's fine. It's good to for onboarding, I think it's perfect thing to have the solutions out there. So

2357
03:51:16.360 --> 03:51:17.740
Jonas, what's your biggest concern?

2358
03:51:19.721 --> 03:51:24.221
I don't think I have very big concerns in in the node space right now.

2359
03:51:24.975 --> 03:51:32.835
It's cool that people run nodes. It's cool that people run a lot of nodes. More people should run nodes, run their own nodes, run their own software, use more CoinJoin,

2360
03:51:33.280 --> 03:51:36.340
use more lightning, etcetera. And these node projects,

2361
03:51:37.760 --> 03:51:44.104
help doing that, which is much better than not doing any of those things. So I think,

2362
03:51:45.045 --> 03:51:48.345
I'm rather happy, and, I'm looking forward to the future,

2363
03:51:49.125 --> 03:51:54.220
than the opposite. I love it. Jonas isn't concerned now. Now I feel better about it.

2364
03:51:55.000 --> 03:51:55.500
Keegan,

2365
03:51:55.880 --> 03:51:56.780
biggest concern?

2366
03:51:57.455 --> 03:51:59.875
See, I am concerned but it's my job to be concerned.

2367
03:52:01.615 --> 03:52:08.670
I the thing that keeps me up is really whether or not we can make our product easy enough to use to onboard the next people. Because here's the thing,

2368
03:52:09.051 --> 03:52:15.085
like, with a dollar collapse happening whether it's in slow or fast motion, like, people are gonna be looking for alternatives.

2369
03:52:16.185 --> 03:52:21.965
And if people jump to Bitcoin and Bitcoin doesn't have a beefy enough infrastructure in terms of central decentralization,

2370
03:52:22.971 --> 03:52:23.790
then Bitcoin's

2371
03:52:24.490 --> 03:52:24.990
own

2372
03:52:25.450 --> 03:52:28.351
properties are kind of at risk. And so

2373
03:52:28.891 --> 03:52:36.625
more people running nodes is and and not just running nodes, but, like, running them in a, like, self sovereign way where they're really exercising their own agency

2374
03:52:37.245 --> 03:52:39.905
is, like, paramount to the survival of Bitcoin.

2375
03:52:40.270 --> 03:52:40.770
And

2376
03:52:41.391 --> 03:52:48.610
the if you don't if we don't find a way to make it easy enough, or if we find or in the effort to make it easy enough,

2377
03:52:48.965 --> 03:52:52.425
we rob users of too many important choices,

2378
03:52:53.364 --> 03:52:54.505
then, like, the whole

2379
03:52:55.364 --> 03:53:06.796
this whole movement doesn't really work the way it is supposed to. So, like, I am every day when I wake up, I'm, like, okay. What is too hard? And how can we make it easier that doesn't, like,

2380
03:53:07.575 --> 03:53:09.995
fundamentally remove the user from the driver's seat.

2381
03:53:10.936 --> 03:53:19.370
That's too biggest concern. I mean, I would basically bounce off of that. You know, I'm just concerned that convenience, there's gonna be too many sacrifices made.

2382
03:53:19.750 --> 03:53:31.575
And, you know, while we want it to be easy and abstract things away, we also want to make sure that users are properly educated and have you know, know that the choices that they're making have certain consequences.

2383
03:53:32.250 --> 03:53:34.910
And so I think, you know, education is very important.

2384
03:53:35.450 --> 03:53:41.229
There's not enough good node education out there. There needs to be, you know, a lot more videos, guides.

2385
03:53:41.796 --> 03:53:48.695
It needs to be made easier, but people still need to understand the basics of how this stuff functions. So I think, you know, education

2386
03:53:49.075 --> 03:53:50.455
definitely needs to increase

2387
03:53:50.870 --> 03:53:56.410
and we don't like he was saying, we gotta be careful the sacrifices that we make in the name of convenience.

2388
03:53:57.855 --> 03:53:59.075
So all of your projects,

2389
03:54:00.495 --> 03:54:07.636
essentially, in practice, what you're looking at is you're looking at having a a little server, a little computer running at home or your office,

2390
03:54:08.399 --> 03:54:13.300
and that you're oftentimes connecting back to. Like, if you use it on a phone, you're connecting back to it.

2391
03:54:13.840 --> 03:54:16.100
A lot of projects are using Tor to do that.

2392
03:54:17.385 --> 03:54:27.230
But you have this central server, essentially, that you're running in in a physical location that you control. Now everyone has a phone in their pocket. Like, the next thing that everyone always says is

2393
03:54:28.170 --> 03:54:33.945
nodes running on the phone, nodes on the phone. Now is that the future, or is that a pipe dream?

2394
03:54:35.045 --> 03:54:35.865
Full nodes?

2395
03:54:36.325 --> 03:54:40.745
Yeah. So using using your own Bitcoin node on your phone. Right? Just it's it's just

2396
03:54:41.110 --> 03:54:42.970
baked into the phone. Is that actually

2397
03:54:43.510 --> 03:54:58.801
a thing that we could look forward to in, you know, 5 to 10 years, or is that a pipe dream? Yeah. I think I really like this idea because as you can see, Raspberry Pis are very hard to get, and and and not very affordable for a lot of people. And if you look at countries that that have

2398
03:54:59.520 --> 03:55:01.540
operate on on low, income,

2399
03:55:02.960 --> 03:55:10.686
a used smartphone is very easy to get because everybody has it. And and if you could if you can turn this one into into a full node,

2400
03:55:11.145 --> 03:55:19.480
I think just just basically, you have the automatic battery in there so it's already a little bit more secured. So Sync Media, basically, it's it's a good device.

2401
03:55:20.020 --> 03:55:28.306
I'm not exactly sure who's working on this. So there was a friend of mine at a heck day that was kind of looking into this, but decided at that point, no. It doesn't make sense here.

2402
03:55:28.766 --> 03:55:35.186
But I think we may might come more and more closer into the area where where this gets feasible. I mean, with a big SD card,

2403
03:55:36.160 --> 03:55:44.500
I don't know. Still, they they some years maybe, but I think it would be great to to have this in the future. Jonas, you gave me the pipe dream look. Do you think it's a pipe dream?

2404
03:55:45.515 --> 03:55:48.015
No. No? You think that's that's the future?

2405
03:55:48.555 --> 03:55:50.095
I'm not sure if it's the future.

2406
03:55:50.875 --> 03:55:55.110
So on next Bitcoin, we're also thinking about a lot about, Bitcoin infrastructure,

2407
03:55:55.490 --> 03:56:00.695
not just having single nodes because a single node, if it goes down, if it explodes,

2408
03:56:02.035 --> 03:56:03.495
you've lost your funds.

2409
03:56:03.955 --> 03:56:05.255
And, in the Bitcoin

2410
03:56:05.715 --> 03:56:10.140
on chain case, you might have a backup, but in the Lightning case, you're SOL.

2411
03:56:10.760 --> 03:56:11.260
So,

2412
03:56:11.800 --> 03:56:13.739
we're thinking about, deploying

2413
03:56:14.200 --> 03:56:15.899
more things at once,

2414
03:56:16.215 --> 03:56:23.114
a backup server and perhaps a gateway node that, has a VPN such that you can easily connect

2415
03:56:23.510 --> 03:56:25.609
to your node at home that has monitoring.

2416
03:56:26.069 --> 03:56:30.550
So even if your node at home goes down, you will be able to notice and,

2417
03:56:31.095 --> 03:56:33.835
which is also important in in the lightning case.

2418
03:56:34.455 --> 03:56:36.555
So I guess there are just so many

2419
03:56:37.175 --> 03:56:40.475
ways for how to use notes but for for

2420
03:56:41.320 --> 03:56:41.820
the

2421
03:56:42.840 --> 03:56:43.820
the the phone future

2422
03:56:44.200 --> 03:56:56.275
for, Bitcoin nodes I think is still an interesting interesting way to to look at. I think I think phones for layer 1 type stuff is significantly more viable than it is for layer 2. And the reason for that is that

2423
03:56:56.730 --> 03:56:59.470
when you go offline for significant periods of time,

2424
03:56:59.930 --> 03:57:14.675
you can catch up with the rest of the network. But the way that pretty much every layer 2 protocol is designed requires a certain liveness to it. In fact, when we were originally trying to put the first version of the Embassy together, we were trying to narrow down what the essential characteristics

2425
03:57:15.610 --> 03:57:16.830
were that were needed.

2426
03:57:17.210 --> 03:57:25.230
And for, for lightning in particular, and a lot of the layer twos will behave this way, just due to the nature of, like, computer science itself,

2427
03:57:25.636 --> 03:57:26.136
is

2428
03:57:26.516 --> 03:57:27.016
that

2429
03:57:27.556 --> 03:57:30.695
these servers need to be addressable, and they need to be alive generally,

2430
03:57:31.395 --> 03:57:37.240
as much of the time as possible. And because if they're not you are at risk of losing funds.

2431
03:57:37.780 --> 03:57:47.984
If, because your your counterparties might try to cheat you and you have to be able to remain vigilant during times. And phones just aren't necessarily designed with the use case in mind that they're gonna be on 247.

2432
03:57:48.685 --> 03:58:05.726
They're designed to be portable. That and that's tremendously useful for everything that we use phones for. But servers are designed to be alive 100% of the time. They're designed to be addressable 100% of the time. And those are properties that you absolutely need for a lot of these layer twos. Layer ones,

2433
03:58:06.346 --> 03:58:11.619
different story. But Awesome. Yeah. For layer 2 phones, definitely a bit of a pipe dream,

2434
03:58:12.000 --> 03:58:19.380
or at least there'd be needs to be a lot of work done, and it it need to be a very special setup. Or you could have, like, watch towers or some Yeah.

2435
03:58:20.114 --> 03:58:26.375
It it, like, plus minimize third party service or running out of VPS or something like that. You could. Yeah.

2436
03:58:27.270 --> 03:58:32.810
Awesome. Well, we're out of time, guys. This has been great. I wanna thank our our fantastic panelists.

2437
03:58:33.110 --> 03:58:34.970
I wanna encourage all participants,

2438
03:58:35.875 --> 03:58:38.774
everyone in the audience here, everyone watching at home,

2439
03:58:39.635 --> 03:58:56.145
consider using your own node, consider running your own node. I know it sounds overwhelming, but it's it's really not that overwhelming. Get your feet wet. It's relatively cheap to do. At the end of the day, you're you're essentially taking a computer and plugging in an Ethernet and a power cord. So thank you guys. Thank you,

2440
03:58:56.524 --> 03:58:57.745
and, take care

2441
03:59:00.524 --> 03:59:01.345
for the keynote.

2442
03:59:01.650 --> 03:59:07.030
Makes it easier in a way. You can't see anyone, you don't know what to think. Oh, our mics are on. I guess we're going. What is up freaks?

2443
03:59:07.730 --> 03:59:08.790
What is up Miami?

2444
03:59:14.835 --> 03:59:20.270
I wanna start because I'm a proud cohost. Let's give it up for Matt O'Dell for organizing this room here.

2445
03:59:21.450 --> 03:59:22.750
Yeah. Thank you, brother.

2446
03:59:24.170 --> 03:59:25.150
Truly special.

2447
03:59:25.645 --> 03:59:26.386
Yeah. Incredible job, dude.

2448
03:59:27.005 --> 03:59:36.920
This is the largest in person rabbit hole recap we've ever done. Yeah. Woo hoo. Congrats on the history. Somebody note the block, and, we'll write that down somewhere.

2449
03:59:37.620 --> 03:59:40.040
We're joined by Craig Rall, nWizz.

2450
03:59:41.221 --> 03:59:45.395
Steve Barber's supposed to be up here, but he's not here. So if he wanders in,

2451
03:59:45.935 --> 03:59:47.555
send him to get a mic. But

2452
03:59:48.495 --> 03:59:51.795
this is our HR. We have 40 minutes. When we do these live shows,

2453
03:59:52.819 --> 04:00:03.324
we usually do a different format where we have a few topics that we wanna talk about. Matt and I haven't even talked about topics, and then we'll open it up to q and a. Wait. Raise your hand if you have no idea what rabbit hole recap is.

2454
04:00:04.585 --> 04:00:05.725
Awesome. Oh. Welcome.

2455
04:00:06.185 --> 04:00:09.805
Okay. So rabbit hole recap is our weekly news show, weekly

2456
04:00:10.320 --> 04:00:15.780
Bitcoin news show. We've been doing it for over 3 years now. 4 years, September, I believe. Yeah.

2457
04:00:16.160 --> 04:00:27.035
So if you like Bitcoin, you should check that. If you like this, you know, go check it out. Maybe consider it. But, yeah, as Marty said, we're just kind of gonna we're gonna shoot the shit and then we're gonna do a q and a. Yeah.

2458
04:00:27.819 --> 04:00:32.319
Let's give another shout out to Wiz for doing a pirate livestream in this room today.

2459
04:00:34.585 --> 04:00:39.805
Yeah. Thanks, thanks to Jack for retweeting my, pirate livestream at open source stage.

2460
04:00:41.360 --> 04:00:52.785
I think it was an idea I had about 2 in the morning last night. I'm like, why is there no livestream? Let's just go to Target and Best Buy, buy a camera, and plug it in and set it up, and so we did it. Yeah. You

2461
04:00:53.365 --> 04:00:53.865
you

2462
04:00:54.444 --> 04:01:00.530
could spin up your own ISP. I think you can figure out a live stream in 12 hours. It's very impressive. Where's this 2 ISPs now? Boom.

2463
04:01:01.150 --> 04:01:02.370
Well, technically, mempool.space

2464
04:01:02.910 --> 04:01:07.170
is, its own ISP now. Yeah. Okay. So we kinda spun that off into its own

2465
04:01:07.815 --> 04:01:12.476
sub ISP in a way. Why don't we talk about that? You you recently added a mining page to mempool.space.

2466
04:01:12.936 --> 04:01:14.395
Yeah. We went down to Nashville,

2467
04:01:14.855 --> 04:01:17.355
last week with Matt and Rod,

2468
04:01:18.670 --> 04:01:33.325
organizing the Nashville meetup down there. And, we had a really nice crowd about, what, 100 people, maybe more? Yeah. There was a tornado warning. We didn't So a 100 was a good showing. Yeah. It was pouring outside. Yeah. And, but it was a great show. I mean, it was just me,

2469
04:01:33.944 --> 04:01:47.585
Rod, Matt on stage, and we were just trolling each other. We actually forgot there was, like, an audience there, and he was having so much fun. I don't know how many hours we were talking, but it was a great show. But, yeah, he announced the so Wiz is the lead maintain one one of the cofounders of mempool.space

2470
04:01:48.525 --> 04:01:51.665
and one of the co maintainers of the open source mempool project,

2471
04:01:52.600 --> 04:01:58.060
where you can and he has she rented a TV and put it up over there with a live look at,

2472
04:01:58.760 --> 04:02:04.745
his mempool. Yeah. We don't have a booth in the conference this year, so, we just rented a TV and stuck it in the corner over there.

2473
04:02:05.686 --> 04:02:08.665
And we have we have Craig Raw here, who is,

2474
04:02:10.006 --> 04:02:11.065
the lead maintainer

2475
04:02:11.670 --> 04:02:15.930
and the the man behind Sparrow Wallet, which is one of the best

2476
04:02:16.310 --> 04:02:18.890
desktop wallets on the market, fully open stores.

2477
04:02:21.205 --> 04:02:21.945
This is

2478
04:02:22.405 --> 04:02:25.385
his first public appearance ever in the Bitcoin scene.

2479
04:02:26.061 --> 04:02:30.400
Thank you, sir. It is an absolute fucking honor that you are up here with us. Thank you. Well,

2480
04:02:31.181 --> 04:02:38.055
thank you. Thank you. Craig Craig and I were talking backstage. You're comfortable talking about what we were discussing? Sure. Go ahead. So there's

2481
04:02:38.355 --> 04:02:42.055
there's a path to scripters and wallets and simplifying that?

2482
04:02:42.380 --> 04:02:45.040
Yeah. So well, we were just having a quick chat.

2483
04:02:45.420 --> 04:02:55.965
Currently, Bitcoin Core requires if you wanna input your output descriptor into a Bitcoin core wallet, you got to get a receive chain output descriptor and a change chain output descriptor. They're different.

2484
04:02:57.720 --> 04:02:59.819
Andrew Chow has actually put forward a multipath

2485
04:03:00.279 --> 04:03:08.675
version of that, which allows you to have one descriptor and that's useful because if you're going to stamp it into a steel plate, for example, you've got 99%

2486
04:03:09.055 --> 04:03:17.700
of them are the the actual data is the same for the received chain chain. So you might as well just have one descriptor which specifies both both chains.

2487
04:03:18.721 --> 04:03:22.181
So that's a PR that's in Bitcoin Core right right now.

2488
04:03:22.795 --> 04:03:27.774
Sparrow implements it that way and I'm kind of hoping that Sparrow leads the way on that,

2489
04:03:28.795 --> 04:03:29.774
to try and

2490
04:03:31.020 --> 04:03:47.484
maybe get things to move in that direction. But it is as yet an unmerged PR. So hopefully it goes that way. So what does that mean to the end user? It means easier backups essentially? Yeah. So I mean, if you have a multistay, you need to back up all of the public keys. Right? You can't just have the seeds and,

2491
04:03:47.965 --> 04:03:51.620
output descriptor is really the most standard way to do that.

2492
04:03:52.080 --> 04:03:59.061
So, you know, just having one which is easier to put into steel plate, for example, which is is, I I think, an important thing.

2493
04:03:59.476 --> 04:03:59.976
Awesome.

2494
04:04:00.355 --> 04:04:16.735
Yeah. That's true. If you even if you have all your seed plate backups, if you don't have those, public keys, I guess, you couldn't recover the funds. Right? Correct. So, I mean, you know, people often think multisig. If I lose one of my seeds Right. I'm okay. But, actually, you do need the Other public keys. Other keys. Yeah. And then to reconstruct that script.

2495
04:04:17.695 --> 04:04:22.035
So for that, you know, the output of the script is kind of our standard way to do it.

2496
04:04:24.016 --> 04:04:24.516
Awesome.

2497
04:04:25.090 --> 04:04:26.870
So I'll give this PR a thumbs up.

2498
04:04:27.410 --> 04:04:30.229
I hope so. Let's get some review too.

2499
04:04:31.649 --> 04:04:35.555
What do you wanna talk about? Is there any you wanna talk about tokens on Lightning?

2500
04:04:35.935 --> 04:04:36.435
Yeah.

2501
04:04:36.975 --> 04:04:43.330
Yeah. Matt was making fun of me earlier saying I'm a I'm a attention whore. No. I called you a cheerleader is what I called you.

2502
04:04:44.050 --> 04:04:45.190
Why am I a cheerleader?

2503
04:04:45.811 --> 04:04:46.950
I don't know. You just

2504
04:04:47.330 --> 04:04:52.230
you you just made it seem extremely bullish, and I just don't I think it's very bullish. I think it's cool.

2505
04:04:53.395 --> 04:05:03.959
I think what we're talking about is There's a lot of, layer 2, like, ways to do tokens on top of Bitcoin. Right? Like, even back in the day, you had, like, what's it called? Omni protocol. Yeah. Omni protocol. You had,

2506
04:05:04.439 --> 04:05:06.699
something party. Counterparty. Counterparty.

2507
04:05:07.080 --> 04:05:08.300
There's colored Bitcoin,

2508
04:05:08.745 --> 04:05:31.635
then there's, like, liquid. Now there's lightning. You can issue shitcoins on top of Bitcoin in lots of different ways now. Right? Yeah. I mean, you can also just issue shitcoins on top of shitcoins and let that be. Like, if people wanna use Tether, why does it matter if they use Tron? Like, does anyone really care? Like, at the end of the day, you're still trusting the Tether Corporation in the back end. It doesn't really matter what chain it's running on. So why do we care if it's just running on a centralized

2509
04:05:32.575 --> 04:05:34.595
Personally, I think the move was on Bitcoin

2510
04:05:35.360 --> 04:05:36.181
rather than a shitcoin.

2511
04:05:36.720 --> 04:05:40.580
That's why I got excited about it. Like, you can create these tokens within a Taproot

2512
04:05:40.960 --> 04:05:44.101
transaction and then push it up to the 2nd layer and transact

2513
04:05:44.515 --> 04:05:49.415
via lightning. But you brought up something earlier when we're discussing this when it became apparent that Matt was gonna,

2514
04:05:49.954 --> 04:05:59.449
shit on me on stage. I was there. We should talk about it. Does it? I did. Does it, does it create this weird MEV like incentive mechanism on the Lightning Network?

2515
04:06:00.870 --> 04:06:06.915
Where you you have these different assets going through lightning nodes, and does that mess with the incentives of the node topology?

2516
04:06:08.095 --> 04:06:16.740
Yeah. I mean, I don't I don't really I mean, I just recently launched. We had we had the fortune of having Laalu on stage here yesterday to present on it.

2517
04:06:17.360 --> 04:06:20.385
And what? It hit the it hit the dev mailing list

2518
04:06:20.944 --> 04:06:22.725
the day before that, I believe.

2519
04:06:23.425 --> 04:06:24.725
So it's really fresh.

2520
04:06:25.825 --> 04:06:33.550
So I I expect people will, you know, look into it, but, you know, as someone who does run a routing node, run a lightning routing node,

2521
04:06:34.891 --> 04:06:43.926
and I see that we have a lot of you know, Lightning's great. I've Lightning's one of those things where I just go through, like, 4 month cycles where I'm bullish and bearish on Lightning.

2522
04:06:44.600 --> 04:06:52.460
But I've run a Lightning routing node the whole time, and I continue to use Lightning. But there are things that need to be refined on Lightning. It's an unfinished spec. Right?

2523
04:06:53.000 --> 04:06:53.500
And

2524
04:06:54.165 --> 04:06:57.064
I don't know if NFTs on lightning are the thing

2525
04:06:58.325 --> 04:07:02.425
that I get excited about. Like, I think stable coins are interesting. I'm interested

2526
04:07:03.090 --> 04:07:05.109
in hash rate derivatives. Could they be tokenized?

2527
04:07:05.489 --> 04:07:07.109
Stable coin. Yeah.

2528
04:07:07.810 --> 04:07:08.689
Yeah. There's a lot of,

2529
04:07:09.729 --> 04:07:14.695
assets issued on the Liquid network too, and there's this huge divide internally within the liquid federation.

2530
04:07:15.155 --> 04:07:19.255
Should liquid become this thing that, like, eats Ethereum and all these other,

2531
04:07:19.556 --> 04:07:24.650
shitcoin blockchains or should Liquid be a system for cheap and

2532
04:07:25.030 --> 04:07:30.090
fast Bitcoin payments on a layer 2 blockchain? Right? Mhmm. And and it's it's

2533
04:07:30.925 --> 04:07:39.104
really interesting to see how these layer 2 networks and and communities will evolve over time. I mean, the I guess the con rough consensus is, like, why not both?

2534
04:07:39.484 --> 04:07:39.984
But

2535
04:07:40.811 --> 04:07:43.230
it can be a distraction, and you get lots of scams.

2536
04:07:43.610 --> 04:07:48.270
It's it's it's really got its trade offs. Right? Yeah. So, I mean, Marty had a specific,

2537
04:07:51.385 --> 04:07:54.125
when he when he was cheerleading Taro, he had a specific,

2538
04:07:54.585 --> 04:07:58.524
framing, which is that it obsolete shitcoins. It makes every shitcoin obsolete.

2539
04:07:59.690 --> 04:08:06.750
Yeah. Does it? It could potentially. I don't know. It could potentially. Maybe I wasn't. That wouldn't have made the tweet as fire. Right? It could potentially

2540
04:08:07.210 --> 04:08:08.590
get the shit going obsolete.

2541
04:08:10.555 --> 04:08:15.115
Craig, do you have any thoughts on this, or is this signal? Yeah. I mean, obviously, I haven't really had a chance to look into it,

2542
04:08:15.436 --> 04:08:23.029
in any great detail, but, obviously the one of the bounding qualities of the Lightning Network is the amount of liquidity that's locked up into it. So

2543
04:08:23.330 --> 04:08:26.375
if this brings additional liquidity that is a good thing.

2544
04:08:27.095 --> 04:08:27.835
You know,

2545
04:08:28.455 --> 04:08:43.735
are there going to be other second order effects? Hard to say at this point. You know, I think that it's it's we're just starting as a community to kind of look at what's being being being done. I think, you know, it's it's it's interesting, but it's not it's not super interesting in the long term. We obviously have a long term vision of a Bitcoin only future.

2546
04:08:47.815 --> 04:08:57.391
But it may be sort of an interesting diversion on on that path. I know they do. Help us to get there. Who knows? It's a cool part of the of their vision. I will say that as opposed to,

2547
04:08:58.330 --> 04:09:03.426
like, Synonym's proposal where Synonym's proposal essentially has you have to have dedicated

2548
04:09:04.285 --> 04:09:21.811
Lightning channels for whatever shit coin you're transferring. Mhmm. So then that's completely separate liquidity. Like, they it's called the Lightning Network, but it's it's not really interoperable with the Greater Lightning Network. In this proposal, it is pretty cool that, you know, you could just be running a routing node that only sees Sats and doesn't even know

2549
04:09:23.266 --> 04:09:31.285
that that any token is involved, and only the ed edges have to know. So, essentially, like, if Tether was successful on Lightning,

2550
04:09:32.131 --> 04:09:34.070
it could create an incentive where

2551
04:09:34.530 --> 04:09:40.631
there is way more liquidity on the Lightning Network because Tether is not on Tron or Solana or whatever bullshit.

2552
04:09:41.256 --> 04:09:53.910
And those routing nodes in between could end up making way more in fees as a result. Right? Yeah. So I I definitely agree that that is that is definitely a a very cool aspect of it. Yeah. It sounds like you're becoming bullish on Terra live on stage. I mean, you're right.

2553
04:09:55.490 --> 04:09:57.910
I'm just trying to be fair. I'm just trying to be fair.

2554
04:09:59.025 --> 04:10:04.405
I don't think it's gonna obsolete shitcoins, though. Yeah. We, we were, also reminiscing earlier

2555
04:10:04.785 --> 04:10:05.926
of Bitcoin 2019

2556
04:10:06.386 --> 04:10:10.090
when we did the first Yeah. Live RHR. On a picnic table.

2557
04:10:10.470 --> 04:10:16.330
On a picnic table. Bitcoin. Had a fresh face. He looked about 15 years younger wearing the same shoes.

2558
04:10:17.025 --> 04:10:20.405
Mhmm. And it's just crazy to think of how big this pair but

2559
04:10:20.945 --> 04:10:26.245
How how big this, how big this conference has gotten over the last 3 years specifically. Obviously,

2560
04:10:26.690 --> 04:10:28.070
due to the fact that Bitcoin's

2561
04:10:28.690 --> 04:10:29.190
a

2562
04:10:29.730 --> 04:10:32.790
very big theme in the world right now. Bitcoin 2019,

2563
04:10:33.490 --> 04:10:49.020
we're on a picnic table. There was 25 100 people at the conference, maybe even less, like 23100 people at the conference. The main stage for that event was probably around this size, maybe a little bit bigger. Definitely, the actual stage was bigger, but seat wise was probably

2564
04:10:49.880 --> 04:10:57.485
maybe, like, 60% larger than this. Yeah. Like, this used to be the whole Bitcoin conference. Just this room. And then Bitcoin 2020

2565
04:10:57.865 --> 04:10:58.686
was canceled,

2566
04:11:00.025 --> 04:11:04.260
because it was happening in California as COVID hit. And then Bitcoin 2021,

2567
04:11:04.800 --> 04:11:16.565
we were outside in the scorching heat. Yeah. They put O'Leary inside of it. In front of about 400 people with 13,000 people at the event. And now we're on this nice beautiful open source stage and air conditioning

2568
04:11:17.505 --> 04:11:18.325
with probably,

2569
04:11:19.105 --> 04:11:26.490
like, 900 to a 1000 people in here. I'll take it. And we've got a we've got a live 3 years. After too. Yeah. Love you.

2570
04:11:27.591 --> 04:11:29.851
We love you, freaks. We do love you, freaks.

2571
04:11:30.945 --> 04:11:32.965
Yeah. It's crazy. It's the thing. I mean, you had

2572
04:11:33.745 --> 04:11:38.726
Odell Beckham, Serena Williams, and Aaron Rodgers opening the day. Do you know,

2573
04:11:39.105 --> 04:11:40.226
did I tell you that,

2574
04:11:41.090 --> 04:11:41.590
CNBC

2575
04:11:42.290 --> 04:11:45.109
reached out to do an interview with me here,

2576
04:11:45.569 --> 04:11:50.229
and they kept asking for my PR person? I was like, I'm just a humble big winner. Like, I don't have a PR person.

2577
04:11:50.835 --> 04:11:54.375
He, like, planned the whole thing out, and they thought they were booking Odell Beckham Junior.

2578
04:11:54.835 --> 04:11:55.335
And

2579
04:11:55.795 --> 04:11:56.295
then,

2580
04:11:56.755 --> 04:11:57.255
like,

2581
04:11:57.715 --> 04:12:01.660
secondary Odell in Bitcoin. It's made me how quick that happens. That's incredible.

2582
04:12:04.279 --> 04:12:05.660
Number 1 in our hearts.

2583
04:12:06.359 --> 04:12:07.580
Let's fucking go.

2584
04:12:08.040 --> 04:12:18.265
So with all this attention coming to Bitcoin, obviously, this conference, 25,000 people here, I'd like to hear your thoughts, Wiz and Craig, like, in term at the protocol level and

2585
04:12:18.710 --> 04:12:25.770
the the network level in terms of decentralization and usability? How what do you guys think the state of Bitcoin is as a network right now?

2586
04:12:26.615 --> 04:12:29.595
State of Bitcoin? Good question. That's a good question.

2587
04:12:30.215 --> 04:12:33.915
I don't know. I mean, the community is very strong, but there's there's also, like, this,

2588
04:12:35.175 --> 04:12:35.675
mix.

2589
04:12:36.010 --> 04:12:46.225
It's it's like a Venn diagram or something where you've got the Bitcoin, the hardcore Bitcoiners, which are probably in this room, and then you've got the crypto people, and then you've got just the total shit shitcoin scams. Right?

2590
04:12:46.685 --> 04:12:47.185
And

2591
04:12:48.365 --> 04:12:49.425
it's it's

2592
04:12:49.805 --> 04:12:50.625
like, obviously,

2593
04:12:51.165 --> 04:12:57.060
those circles are not the same size, right, as you just described by the size of the comparing the different size of the stages or whatever. And

2594
04:12:57.439 --> 04:12:58.319
even around this,

2595
04:12:58.800 --> 04:13:05.074
conference, there's, like, satellite conference, like, shitcoin or something. I think Solana's doing something here. Yeah. It's it's just,

2596
04:13:05.814 --> 04:13:06.555
yeah, it's

2597
04:13:06.935 --> 04:13:12.061
the community is is evolving, I guess. It's very mainstream. But the real Bitcoin community, the core

2598
04:13:12.760 --> 04:13:13.260
hardcore

2599
04:13:13.561 --> 04:13:16.300
Bitcoin, they're all here. Like, in this room, I feel. Right? I mean

2600
04:13:22.245 --> 04:13:25.226
Yeah. I have to agree with Wiz. I wander around

2601
04:13:25.550 --> 04:13:28.670
and I feel that the Bitcoin conference is here in this hall.

2602
04:13:29.550 --> 04:13:38.285
It's kind of not really happening out there. I mean, that's not may maybe fair because I haven't spent that much much time out there, and I'm sure there are interesting talks.

2603
04:13:38.745 --> 04:13:40.765
But certainly what we've had here,

2604
04:13:41.065 --> 04:13:48.420
thanks to Max, has been some really great talks. It was definitely not just me. There was a massive team that helped me. Sure. I hadn't done it without them.

2605
04:13:49.199 --> 04:13:49.859
I mean,

2606
04:13:50.585 --> 04:13:53.805
I behoove all of you an hour after this.

2607
04:13:54.185 --> 04:13:59.370
I think it's 4 PM to go to the main stage because Mahler's has got a fucking insane announcement. So

2608
04:14:01.290 --> 04:14:04.351
Matt hasn't even told me yet, so it must be pretty big.

2609
04:14:04.811 --> 04:14:06.090
Lip sealed. Yeah. The

2610
04:14:07.635 --> 04:14:11.175
Yeah. I just came back the mining stage, Steve Barber,

2611
04:14:12.035 --> 04:14:13.015
Whit from Compass,

2612
04:14:13.955 --> 04:14:14.455
Bob,

2613
04:14:15.381 --> 04:14:17.881
and a gentleman, Ryan, I believe, from Titan with AJ,

2614
04:14:18.261 --> 04:14:18.920
have, like,

2615
04:14:19.540 --> 04:14:25.345
a further decentralizing mining talk. The mining stage is awesome. Right? I mean, I I've been stuck here,

2616
04:14:26.285 --> 04:14:27.345
and I love it.

2617
04:14:28.685 --> 04:14:34.810
But I I mean, I've I've looked all over that agenda, the agenda for the mining stage for today and tomorrow.

2618
04:14:36.790 --> 04:14:39.290
I mean, like, historically, like, industry days always

2619
04:14:40.535 --> 04:14:52.340
very suit heavy. Mhmm. You know? And this year was the exception because we did highly technical open source conversations here. So that was the rarity in terms of how they set up this conference usually.

2620
04:14:52.800 --> 04:14:59.235
But the GA days on the mining stage are pretty pretty awesome. What was your how many talks did you watch there? What was your favorite?

2621
04:14:59.615 --> 04:15:06.910
I must admit this is my second talk. So the the last one I saw was my favorite. But it I think it's an important discussion like decentralizing mining,

2622
04:15:07.609 --> 04:15:08.109
obviously,

2623
04:15:09.050 --> 04:15:12.830
in the mining industry it's always top of mind. You're seeing this massive migration

2624
04:15:13.445 --> 04:15:18.105
of hash rates to the US and even more specifically to Texas. A lot of massive on grid,

2625
04:15:19.525 --> 04:15:20.905
operations that are

2626
04:15:21.530 --> 04:15:24.910
just inherently centralized. You have people building 500 megawatt

2627
04:15:25.530 --> 04:15:26.030
facilities

2628
04:15:26.490 --> 04:15:28.750
that that are very out in the open.

2629
04:15:29.215 --> 04:15:39.950
And I think what Steve is doing with upstream and the black box to get more individuals mining and his framing with the black box is it may not be as profitable, but people really want it because they want privacy.

2630
04:15:40.330 --> 04:15:42.030
There's this there's this push

2631
04:15:42.410 --> 04:15:45.229
for privacy downstream in the energy sector,

2632
04:15:46.255 --> 04:16:13.010
from from individual Bitcoin miners. Upstream 100%. Gets much more efficient, obviously, because they're closer to the lowest cost power. But downstream is being hardened because people want KYC free Bitcoin. I think that's a really cool move. That's an interesting, comparison between, like, the mining stage and open source stage. Open source can just be like a few shadowy super coders, you know, hacking away on GitHub. You don't you have no idea what their real name is. But to do mining, especially these days, it's extremely

2633
04:16:13.470 --> 04:16:18.770
capital intensive and, you know, you need to wear a suit to raise that kind of capital. Right?

2634
04:16:19.115 --> 04:16:26.505
I don't wear suits. Oh, no. So we have so I guess both me and Marty are gonna be on the mining stage tomorrow separately. I can wear a suit?

2635
04:16:27.131 --> 04:16:31.391
And so Marty's Marty's talk is titled, is ESG an attack on Bitcoin?

2636
04:16:32.091 --> 04:16:34.671
Obviously, Marty doesn't think ESG is an attack on Bitcoin.

2637
04:16:35.665 --> 04:16:37.444
So it should be a very interesting conversation.

2638
04:16:37.824 --> 04:16:45.290
Yeah. I will we'll talk about that tomorrow. And and I'm doing a KYC free home mining with Econo Alchemist and Diverter.

2639
04:16:47.510 --> 04:16:48.890
So there's a lot of good conversations

2640
04:16:49.430 --> 04:16:50.090
this year,

2641
04:16:50.470 --> 04:16:57.825
that I'm excited about. And I I mean, I look. At the end of the day, there's just so much there's so much content that you you have to watch them after the fact Yeah.

2642
04:16:58.285 --> 04:17:09.330
Till you, like, catch them all. Yeah. I did catch a clip of Dave Portnoy talking shit on me. That was fun. But Portnoy, could you Portnoy, he was talking shit about you? Yeah. Funny, though. I actually texted him after,

2643
04:17:09.870 --> 04:17:13.425
trying to convince him to get Barstool's podcast on podcasting 2.0.

2644
04:17:13.885 --> 04:17:22.020
I mean, that seems obvious. Yeah. I think that would be massive not only for podcasting 2.0, but, like, having somebody like Barstool. What did Portnoy say about you? He's,

2645
04:17:22.800 --> 04:17:34.575
was he on stage? Shady when I worked at Barstool. While he was on I was sneaking into the studios late at night. While he was on stage? But the first time I recorded with Marty was in Barstool's merch closet

2646
04:17:35.195 --> 04:17:35.695
with,

2647
04:17:36.235 --> 04:17:39.920
T shirts all around us. Yeah. We literally did. A bottle of Macallan.

2648
04:17:40.380 --> 04:17:52.865
The first what was that? That was, like, episode 29 of the interview series. Yeah. Marty was like, oh, come over to the bar stool studio. Like, this is where our court I was like, I was gonna be the most baller podcast studio ever. I'm just, like, sitting in a fucking glass box and fucking

2649
04:17:53.645 --> 04:17:58.239
t shirts all around me. Hey. Humble beginnings, man. Had a lot of t shirts. Yeah.

2650
04:18:00.140 --> 04:18:03.439
So we have yeah. We we'll keep 15 minutes.

2651
04:18:03.985 --> 04:18:06.245
That's fine then. 15 minutes for q and a.

2652
04:18:07.745 --> 04:18:08.306
What is,

2653
04:18:09.186 --> 04:18:21.516
I got something. If you can't think of anything, you look like you're digging for something in there. Well, that's why I was looking at my phone earlier. Like, is there anything interesting? But if you have something Well, I wasn't able to dig too far into it, but Blockstream and Breeze

2654
04:18:22.056 --> 04:18:24.235
announced Oh, that's cool. The green light integration?

2655
04:18:24.775 --> 04:18:26.750
What, you seem to know more about it than I

2656
04:18:29.310 --> 04:18:35.090
I do. What's going on? So I was talking to Roy about it. Roy's here from Breeze. He's absolutely awesome. So first of all, it's like

2657
04:18:35.695 --> 04:18:38.915
a it's just an announcement of their plans to do it. Mhmm.

2658
04:18:39.295 --> 04:18:47.100
But right now with Breeze, you essentially are running a lightning note on your phone directly on your phone. And if anyone's used Breeze for podcasting 2.0,

2659
04:18:47.640 --> 04:18:52.939
like, your phone gets really hot Really hot. Because it's like it's legitimately running a a lightning note on your phone.

2660
04:18:53.515 --> 04:18:56.575
And it also means that all of their different apps within Breeze,

2661
04:18:57.835 --> 04:19:00.815
whether that's the actual wallet or whether that's podcasting

2662
04:19:01.141 --> 04:19:09.235
or whether that's their point of sale, and he wants to add video streaming, and he wants to add all these different things, they all need to be in the same app because they need a lightning node.

2663
04:19:09.636 --> 04:19:12.615
Now Greenlight is cool because it's an on demand

2664
04:19:13.476 --> 04:19:14.455
cloud node

2665
04:19:14.835 --> 04:19:15.636
that Blockstream

2666
04:19:16.630 --> 04:19:23.130
it's a it's a service that Blockstream runs, and it's trust minimized because the actual keys are on your phone.

2667
04:19:23.670 --> 04:19:28.104
They're not on the server. Now there's obviously some trust still in Blockstream.

2668
04:19:29.045 --> 04:19:32.910
Obvious the main one is that they actually are up, but, also,

2669
04:19:33.290 --> 04:19:36.510
they provide a watchtower service for you because when your node's offline,

2670
04:19:38.090 --> 04:19:43.895
someone can try and broadcast a bad state and steal your Lightning funds. Right? So there's a little bit of trust in Blockstream,

2671
04:19:44.435 --> 04:19:48.454
but if they're not like your channel partner, they shouldn't be able to take your funds. And all these Lightning

2672
04:19:48.851 --> 04:19:52.150
wallets on your phone, they're they're not trustless. There's always

2673
04:19:52.530 --> 04:20:00.715
first of all, it's very hard for anything to be trustless, but they're all, like, trust minimized, taking different trade off balances. Like, even with Breeze. With Breeze, your phone goes

2674
04:20:01.095 --> 04:20:01.595
offline.

2675
04:20:02.135 --> 04:20:04.475
You're now your main channel's open with Breeze.

2676
04:20:04.910 --> 04:20:10.050
You know, they're the only liquidity provider. There's some trust there in Breeze. Now in this setup,

2677
04:20:10.670 --> 04:20:12.770
it's it's really interesting because

2678
04:20:15.485 --> 04:20:17.505
you, yeah, you have the keys on your phone,

2679
04:20:17.966 --> 04:20:26.940
green light is the node, and then he can have all these different Breeze apps that can all connect back to that node and separate them out. So you don't have one big bloated app,

2680
04:20:27.960 --> 04:20:30.141
that does all the things. That's modular.

2681
04:20:30.625 --> 04:20:35.045
Yeah. And I guess, like, this is the first major partner with Greenlight that I know of.

2682
04:20:36.145 --> 04:20:45.910
That's pretty cool. And it also means more c lightning usage like, core lightning usage. Do wanna talk about that? Did we talk about that last week? Talk about it last week. It was an April fools joke. Yeah. Cool. I mean

2683
04:20:46.290 --> 04:20:50.215
We had Kristen Decker up here, and he kept he kept calling it c lightning by accident.

2684
04:20:51.015 --> 04:20:56.475
We, I mean, we talked about it last week. Yeah. We did. We already talked about it. Yeah. I mean, there's a lot of people in the room here.

2685
04:20:58.240 --> 04:21:05.301
The lightning flame wars are interesting, the implementation wars. What are do do you have any thoughts? Yeah. The the the green light logo is yellow. What's up with that?

2686
04:21:05.836 --> 04:21:10.495
That just that just, irks me so hard. That's confusing. Right? Yeah.

2687
04:21:10.875 --> 04:21:14.176
Well, I guess everyone's scared of, you know, making a green bee

2688
04:21:15.000 --> 04:21:16.381
because of bee cache.

2689
04:21:18.360 --> 04:21:20.221
There's one right behind your head over there.

2690
04:21:20.921 --> 04:21:22.945
That's a square. That's a square.

2691
04:21:23.565 --> 04:21:24.545
So it's, like,

2692
04:21:25.645 --> 04:21:31.266
a little bit different. Yeah. A 100%. Yeah. I think b cache is who was here when b cache happened? When the fork happened?

2693
04:21:32.670 --> 04:21:37.710
It's good about Yeah. See, for a lot of people, Bcache just does not even exist. Good. There's no reason to

2694
04:21:42.535 --> 04:21:44.475
so you think they should call it yellow light,

2695
04:21:45.175 --> 04:21:49.675
or should they change the color of the logo? I'm not the marketing person. I don't know.

2696
04:21:51.040 --> 04:21:51.940
Yeah. Yeah.

2697
04:21:52.480 --> 04:22:00.095
I was actually reminiscing with Harry Suttig about that too. Like, when we first met in 2017, like, all the topic was about the 4 cores.

2698
04:22:00.395 --> 04:22:03.935
And it's crazy again to think how far we've come from that.

2699
04:22:04.715 --> 04:22:17.280
It was an important part of Bitcoin history, though. Right? Kinda like, Mt. Gox going bankrupt or or the block size wars, whatever you wanna call it. It proved that Bitcoin is resilient, and it just got stronger afterwards. So

2700
04:22:17.886 --> 04:22:22.226
yeah. It sort of needed to happen at some point, right, to prove that

2701
04:22:22.605 --> 04:22:24.545
Bitcoin could overcome that. That's true.

2702
04:22:25.050 --> 04:22:27.290
Yeah. Like, even 5, 6 years ago, it wasn't,

2703
04:22:28.010 --> 04:22:31.949
maybe this is something we take for granted now. Now we kind of accept that Bitcoin works

2704
04:22:32.250 --> 04:22:33.310
extremely reliably.

2705
04:22:33.785 --> 04:22:35.405
But back then, it was much more,

2706
04:22:36.025 --> 04:22:40.525
maybe experimental or we didn't have as much confidence maybe. It was it was more of

2707
04:22:40.960 --> 04:22:48.820
something to play around with. Mhmm. Now, you know, you've got billionaires just going all in. Yeah. And then you have other billionaires who want to change the code.

2708
04:22:51.056 --> 04:22:55.556
Hashtag change the code. Mhmm. They're gonna change the code. Anybody can change the code.

2709
04:22:55.936 --> 04:22:58.035
Just getting people to run it, that's gonna be hard.

2710
04:22:58.700 --> 04:23:00.479
Well, Greenpeace can go fuck themselves.

2711
04:23:05.260 --> 04:23:06.319
They love it.

2712
04:23:07.145 --> 04:23:07.645
Real

2713
04:23:08.980 --> 04:23:09.480
Bitcoiners

2714
04:23:10.817 --> 04:23:11.317
in

2715
04:23:12.654 --> 04:23:13.154
here.

2716
04:23:14.650 --> 04:23:16.190
What else do you wanna talk about?

2717
04:23:17.210 --> 04:23:24.225
Well, echo I had I I lost the thought that just came back to me piggybacking on this. Fork wars were over how to,

2718
04:23:25.165 --> 04:23:31.905
scale Bitcoin, particularly at the block size level. BCash went into arbitrarily just double the block size, and other people thought Segwit

2719
04:23:32.270 --> 04:23:33.311
would be a more,

2720
04:23:34.670 --> 04:23:36.210
advantageous way to

2721
04:23:37.311 --> 04:23:39.971
to increase the block weight and making some more transactions.

2722
04:23:42.016 --> 04:23:52.950
There he is. I was told to wander up. Okay. Do you have a handheld? Sorry. I'm dressed like Fiat today. So Steve, do you have a handheld mic? Steve, go get a mic. No. I got nothing. Stick your head in there and ask them for a handout. Tell them I can.

2723
04:23:53.490 --> 04:23:55.410
The Bends are here. And We're not

2724
04:23:57.976 --> 04:23:59.415
But The Bends are here. That's,

2725
04:23:59.895 --> 04:24:03.195
I got in a bit of a discussion this week about attack. How's the Bends?

2726
04:24:04.056 --> 04:24:04.795
Is there,

2727
04:24:06.865 --> 04:24:07.365
Bends?

2728
04:24:07.880 --> 04:24:13.180
Look at that. Benz always oh, no. I can't see it. They brought a gaggle. There's a gaggle of Benz.

2729
04:24:18.175 --> 04:24:19.155
Get out of here.

2730
04:24:23.570 --> 04:24:24.870
Get out of here.

2731
04:24:26.210 --> 04:24:28.631
There we go. Steve, don't bring that sign up here.

2732
04:24:29.176 --> 04:24:29.676
No.

2733
04:24:30.215 --> 04:24:36.556
My my little boy is 6 months. His name is Ben. Oh, got it. Fair enough. I stand with Ben's baby.

2734
04:24:39.520 --> 04:24:47.855
Did you get, did you get mobbed after your mining panel? That's what I assumed. I did. Yeah. A lot of, lot of noobs came up to me, so I'd explain Bitcoin from scratch. So

2735
04:24:49.455 --> 04:24:55.775
What, what are your thoughts of this event? How's it going for you? I think it's been great. I, came in a bit late, but,

2736
04:24:56.561 --> 04:24:59.940
a few NFT shields came up to me, but they're, you know, they're nice people.

2737
04:25:01.841 --> 04:25:07.774
Marty loves NFTs, though, and he just wants to buy them. I have no opinion on them. Like, I'm sort of neutral, but

2738
04:25:08.635 --> 04:25:10.814
mining is good. This year is

2739
04:25:11.274 --> 04:25:12.095
nice to see

2740
04:25:13.130 --> 04:25:15.949
like, excitement around mining. So I think,

2741
04:25:16.250 --> 04:25:24.854
the conference guys have done an amazing job with that. So I love them loving what I'm seeing out there in the booth section. Do Do you wanna tell the freaks about our special offer?

2742
04:25:26.274 --> 04:25:28.935
Yeah. I'm, I'm shilling our black boxes.

2743
04:25:29.715 --> 04:25:34.311
If you guys haven't seen them, they're, mining out in the conference with a couple of s nines.

2744
04:25:34.850 --> 04:25:35.570
So, yeah,

2745
04:25:36.290 --> 04:25:38.311
You wanna tell them what a black box is?

2746
04:25:38.770 --> 04:25:40.150
Yeah. Black box,

2747
04:25:41.845 --> 04:25:43.465
it converts your KYC

2748
04:25:44.005 --> 04:25:46.105
Bitcoin to non KYC Bitcoin,

2749
04:25:46.885 --> 04:25:48.300
in the comfort of your home.

2750
04:25:48.700 --> 04:25:51.359
It turns you into your own personal non KYC

2751
04:25:51.660 --> 04:25:52.160
exchange.

2752
04:25:53.100 --> 04:25:56.479
It burns your fiat and makes beautiful Bitcoins.

2753
04:25:57.675 --> 04:25:59.375
So every single one of you

2754
04:26:01.675 --> 04:26:03.615
every single one of you should get one.

2755
04:26:04.075 --> 04:26:11.601
Although, I know it's expensive, so I I put out the plan on how to build your own. So you can just take a single sheet of plywood,

2756
04:26:12.300 --> 04:26:21.910
cut it in the sections that I drew up, and build 1, and run an s 9 off 120 volt in your garage or wherever. And you'll get the sound kill. You'll get all the,

2757
04:26:22.470 --> 04:26:24.570
you get you get to be on the black market,

2758
04:26:25.110 --> 04:26:29.370
like a true Bitcoiner. So go do that. That's why it's called the black box.

2759
04:26:29.910 --> 04:26:30.650
Oh, yeah.

2760
04:26:32.945 --> 04:26:34.705
Oh, and oh, sorry. And and and I

2761
04:26:35.585 --> 04:26:36.545
there is a promo,

2762
04:26:37.025 --> 04:26:40.006
if you go to our web store, type in freaks,

2763
04:26:40.561 --> 04:26:48.020
as a coupon code, you get a further discount off bundle. So so a little bit extra off. It's a promo on right now. So Freaks.

2764
04:26:49.095 --> 04:26:52.395
Steve was in Texas last week. Big recruiting trip. When are you moving?

2765
04:26:53.654 --> 04:26:56.154
It was a bit of a exploratory trip. Yeah.

2766
04:26:56.890 --> 04:26:58.590
There's a lot of action in Texas.

2767
04:26:59.290 --> 04:27:00.590
I'm stuck up in Canada.

2768
04:27:02.409 --> 04:27:05.310
I don't know how I got here. I guess it's a different story, but,

2769
04:27:05.806 --> 04:27:06.785
Canada is,

2770
04:27:07.245 --> 04:27:12.945
not great for business right now. So we were checking out Texas for the oil and gas Bitcoin mining stuff.

2771
04:27:13.965 --> 04:27:14.945
What about Nashville?

2772
04:27:15.949 --> 04:27:16.449
So,

2773
04:27:17.149 --> 04:27:18.290
I wanna go to Nashville.

2774
04:27:18.909 --> 04:27:23.729
I met Peter McCormack last night, and he invited me there. So I might go in August.

2775
04:27:24.436 --> 04:27:26.455
And actually, I heard Nashville is rocking.

2776
04:27:27.315 --> 04:27:42.505
You guys do a good job at your meetups. Yeah. They're awesome. And Thomas, one of my favorite guys at Bitcoin, Marty's a good boy. Fucking awesome. He's from tenant he lives in Tennessee now. And from what I see, it's just a glorious place. Yeah. It's a glorious place. Yeah.

2777
04:27:42.985 --> 04:27:47.005
Well, lots of people are moving there. Right? I mean, you got already, like, the Bitcoin Magazine offices

2778
04:27:47.705 --> 04:27:51.405
headquartered there. Mhmm. And, not to talk to anybody else

2779
04:27:51.760 --> 04:27:53.600
who's living there, but a lot of cool Bitcoiners,

2780
04:27:55.359 --> 04:27:56.739
apparently are moving there.

2781
04:27:57.040 --> 04:27:59.699
Yeah. But all the cooler Bitcoiners in Austin. So

2782
04:28:01.365 --> 04:28:05.705
I'm kidding. People think this conference is bad. Wait for your WEF conference that's coming to town.

2783
04:28:06.965 --> 04:28:16.319
Is that a WEF plus CoinDesk consensus? Yeah. Talk about being tone deaf. WEF and CoinDesk? Yeah. World World Economic Forum. Have you heard of them?

2784
04:28:17.476 --> 04:28:21.175
Who is Klaus Schwab? Who is Klaus Schwab? Nobody knows.

2785
04:28:22.115 --> 04:28:24.615
He's got he's a he's a shady character.

2786
04:28:25.650 --> 04:28:37.016
Is he the emperor, or is he the is he the sith, or the is he the That's the he's the public. Like, we don't know. That's the that's the only question. We don't have to get into that though. We've got 10 minutes and 30 seconds left. We usually open it up to q and a

2787
04:28:37.395 --> 04:28:44.351
at the end here. There's a lot of people. If any of you guys have any questions, do we have any mic stand out, or are we just standing up and screaming that?

2788
04:28:44.730 --> 04:28:45.551
Do the shout

2789
04:28:46.011 --> 04:28:46.511
outs.

2790
04:28:49.370 --> 04:28:56.266
No wonder the vents are here. We That's it. I don't have them on. Why don't you just read the shout out you put in there? Yeah. Ben Yeah.

2791
04:28:58.726 --> 04:29:05.070
I Actually, yeah, I had to reach out to 2 freaks and tell they DM me after. We usually don't do the shout outs at the live show. It's just it's not,

2792
04:29:05.790 --> 04:29:06.770
not enough time.

2793
04:29:07.115 --> 04:29:09.855
What's the most underestimated announcement this week?

2794
04:29:10.315 --> 04:29:10.815
Underestimated

2795
04:29:11.275 --> 04:29:12.575
announcement this week.

2796
04:29:13.115 --> 04:29:16.815
The moment. What is the most underestimated announcement? It hasn't been made yet.

2797
04:29:20.061 --> 04:29:21.920
Are you announcing the announcement now?

2798
04:29:22.301 --> 04:29:26.561
Matt just did. The, What? What is the most underrated announcement? I don't know. Maulers.

2799
04:29:29.005 --> 04:29:30.305
That's hinting here.

2800
04:29:31.165 --> 04:29:35.585
Did you guys talk about the Cash App? I thought that was pretty cool. A lot of easier onboarding,

2801
04:29:36.040 --> 04:29:37.180
easier user experience.

2802
04:29:37.800 --> 04:29:49.405
Seemed like some good stuff. And lightning deposits. Right? Yeah. The dual, like, make it easier to to pay. I mean, we're we've been talking about this a lot, but I actually had a conversation with Danny. He's working on the Cash App wallet, and it's

2803
04:29:50.025 --> 04:29:54.420
it's really cool just how much they've simplified the UX of pointing,

2804
04:29:55.680 --> 04:30:03.995
your your camera at a QR code. It doesn't know if it's a Fiat QR code, an on chain or a lightning code, it just works. It picks up whatever it is and sends what it needs to.

2805
04:30:05.570 --> 04:30:09.590
Let's give a shout out to to Cash App for really pushing the UX barriers

2806
04:30:09.971 --> 04:30:14.391
around Bitcoin usage. Yeah. I mean, Miles was great up there. He fucking killed it. Yeah.

2807
04:30:14.825 --> 04:30:16.205
With with absolute legend.

2808
04:30:16.745 --> 04:30:17.245
Disclaimer.

2809
04:30:17.785 --> 04:30:21.005
They used to be a sponsor. They're a sponsor of the stage. And the stage.

2810
04:30:21.465 --> 04:30:21.965
Yeah.

2811
04:30:23.880 --> 04:30:25.420
Underestimate. Yeah. I mean,

2812
04:30:25.800 --> 04:30:26.920
I always hope maybe

2813
04:30:27.720 --> 04:30:29.100
Aaron Rodgers in StackSats.

2814
04:30:29.880 --> 04:30:35.575
That's boss. How's that make you feel? It's 2 years since stacks stacks ads first came out.

2815
04:30:36.515 --> 04:30:37.975
Now it's just whatever.

2816
04:30:38.970 --> 04:30:42.830
Just everyone's stacks that We're gonna move to bits, though, dude. We're move yeah. Right.

2817
04:30:43.449 --> 04:30:52.574
Yeah. Are obsolete, and we're moving to bits. I was expecting I was expecting another nation state to announce here, so maybe not an underestimate. Well, Sampson had, like, an overestimated

2818
04:30:52.875 --> 04:30:53.375
announcement.

2819
04:30:58.010 --> 04:31:03.149
What was it? I I mean, it was just, it's like an island, like a little island off of Honduras.

2820
04:31:04.649 --> 04:31:05.310
Prospera. Prospera.

2821
04:31:06.006 --> 04:31:07.065
Right. Prospera.

2822
04:31:07.445 --> 04:31:15.810
They're like everyone thought that was gonna be a whole country. I think we need more whole countries. I think El Salvador is out on a proverbial island. We're used to whole countries now. You know?

2823
04:31:16.830 --> 04:31:26.605
It starts with islands, man. It starts with islands. Islands. Gross from there. Fair enough. Fair enough. I mean, I would love for, like, the US or Canada to just come out and be like, we're not gonna do anything.

2824
04:31:27.625 --> 04:31:29.965
Run free with Bitcoin. Use it as you please.

2825
04:31:31.020 --> 04:31:42.145
Which is who was I talking about this with? I was Mark Moss. I was talking about it with Mark Moss yesterday. Like, that's the way it should be. Like, we shouldn't have to wait for permission from the government to use Bitcoin the way we want to. Like, it's

2826
04:31:42.605 --> 04:31:43.585
the way America

2827
04:31:44.285 --> 04:31:55.131
the ideals it was founded on, I think, we should just be able to do it freely. It doesn't strike me as organic to expect countries to, like, states, like, governments to adopt it.

2828
04:31:55.716 --> 04:32:07.369
Doesn't seem Yeah. The incentives and game theory is not exactly Yeah. Exactly. You don't, yeah, you don't want whole nation states adopting. You just want their citizens to be feel comfortable adopting it and use it as they they want to.

2829
04:32:08.710 --> 04:32:20.814
Especially if they have a money pre machine. I guess it was kind of a no brainer for El Salvador, though. Right? Because they were using the US dollar. They didn't even have their own currency. Yeah. And then the Federal Reserve is just printing out that 1,000,000,000,000 of dollars of money, and they're getting inflated

2830
04:32:21.540 --> 04:32:27.800
and no benefits at all. So it's got, like, a very easy decision for them. Right? But most other countries that are printing their own currency,

2831
04:32:28.865 --> 04:32:33.285
it's against their interest to They're slaughtering their own golden goose in a way. Right.

2832
04:32:33.745 --> 04:32:37.585
So I guess for El Salvador, they already that that their golden goose already,

2833
04:32:38.150 --> 04:32:40.250
got slaughtered internally before that,

2834
04:32:40.630 --> 04:32:45.210
so it was a lot easier for them. Do you have any thoughts on this, Greg? Yeah. I mean, I think,

2835
04:32:46.005 --> 04:32:51.145
you know, I think they're certainly early for their time. I don't think we expect any other countries to announce,

2836
04:32:51.524 --> 04:32:58.190
certainly in the next few days. And there are a lot of downsides when a country does this. Right? There's a lot of custodial wallets. There's a lot of,

2837
04:32:59.230 --> 04:33:00.851
you know, kind of

2838
04:33:01.230 --> 04:33:01.730
implementation

2839
04:33:02.270 --> 04:33:02.770
issues

2840
04:33:03.105 --> 04:33:05.926
of trying to build dissent on a wider societal level.

2841
04:33:06.545 --> 04:33:14.940
So as you were saying, Marty, it's almost better in a way that we have this kind of organic growth where it takes time, yes. But by the time that a government eventually

2842
04:33:15.320 --> 04:33:29.310
says, you know, we're gonna use this thing, well, a lot of people are already using it, but using it in the right way or at least able to tell their friends and family, this is how you should do it. Don't just use the government's wallet, but, you know, use your own own wallet. And I think that that's,

2843
04:33:29.871 --> 04:33:40.254
you know, so that's gonna happen anyway. So I'm I'm I'm not too fussed at the rate of country adoption because as you say, I think it's happening anyway. Yeah. Raise your hands if you've been to the Bitcoin bazaar in,

2844
04:33:40.875 --> 04:33:41.695
in the conference.

2845
04:33:43.195 --> 04:33:43.695
Okay?

2846
04:33:44.234 --> 04:33:47.760
Raise your hand if you spent Bitcoin in the Miami area.

2847
04:33:49.020 --> 04:33:53.980
That's pretty awesome. Like, I love that we have both the circular economy here. I love that we have every

2848
04:33:54.715 --> 04:33:56.895
everywhere around this conference, you can pay with Lightning.

2849
04:33:57.516 --> 04:34:07.340
And a bunch of different companies and groups of people have been onboarding businesses in the in the surrounding area. I mean, we were at a bar last night that was onboarded that accepted Bitcoin. Dude, it's crazy.

2850
04:34:08.440 --> 04:34:16.523
My flight from Austin yesterday came in, and there's a few of the On Chain guys on the flight as well. And Tyler, who created the intro to our podcast,

2851
04:34:17.064 --> 04:34:21.541
was going to a hotel right down the street. So we hopped in an Uber. We shared an Uber. And then somebody,

2852
04:34:22.560 --> 04:34:47.234
coming to the prior? Prince, like, was, like, are you guys going to South Beach? This is probably not what you should do if you're a Bitcoiner. He was, like, can I hop in the Uber with you? We're, like, yeah, hop in. And he like, we like split the, he was like, I'll pay you over strike. I was like, yeah. Here's a lightning invoice, and then he paid me in the Uber. It's like as soon as I landed, ran into a Bitcoin or was willing to, like, pay me in sats to split an Uber. It was pretty cool. I think, like, the I have the opposite strategy. When the Uber driver asks me if I'm the Bitcoin, I'm, like, what's that?

2853
04:34:49.635 --> 04:34:50.135
Bytecoin?

2854
04:34:51.475 --> 04:34:55.014
That's why you show them a shitcoin just so you for good offset purposes.

2855
04:34:55.520 --> 04:34:59.860
I I don't own any of that. Tron is the future. He just doesn't do anything to you.

2856
04:35:00.559 --> 04:35:05.395
Yeah. It's it's really cool to superliver. Shout out to, like, Ibex and Oshii who've been going Oshii's

2857
04:35:05.695 --> 04:35:07.395
Michael from Oshii just fucking

2858
04:35:08.014 --> 04:35:14.090
never stops. Yeah. He never stops. Ibex has onboarded 40 merchants. I mean, IBEX and Oshi also work together.

2859
04:35:15.350 --> 04:35:20.010
So it's very complimentary. I mean, one of the most bullish fundamentals of this year period

2860
04:35:20.865 --> 04:35:23.525
is I really feel like there's starting to be real momentum

2861
04:35:23.904 --> 04:35:26.484
on a proper Bitcoin circular economy.

2862
04:35:27.266 --> 04:35:31.809
And I'm being cautious about it because there were false starts

2863
04:35:32.590 --> 04:35:39.408
in the past. I mean, yeah, it was a big meme in, like, 2013, 2014. Hey. What about BitPay adding lightning? Do we care? No. Too late.

2864
04:35:39.826 --> 04:35:43.125
Nicholas and the BTC paid server team obsoleted them, so

2865
04:35:43.826 --> 04:35:44.727
it's so funny.

2866
04:35:45.105 --> 04:35:51.932
Do you have to do KYC before you send them lightning stuff? Do you is it is it, like, a threshold? I've never spent to a BitPay merchant.

2867
04:35:52.951 --> 04:35:55.512
Well, they don't even give you, like, a QR code, do they? They make you

2868
04:35:56.455 --> 04:36:02.555
I mean, they don't give you, like, a Bitcoin address to pay. Do they give you, like, a lightning? I don't know. I have no idea. Yeah. Who cares? Is anybody using BitPay?

2869
04:36:03.750 --> 04:36:08.650
I think a lot of people are. Right? Use BTC Pacer. Raise your hand if you use BitPay at your business.

2870
04:36:10.230 --> 04:36:11.129
Zero. Zero hand. Somebody's pointing at somebody over there. It's like a pretty

2871
04:36:11.836 --> 04:36:18.176
Somebody's pointing at somebody over there. It's like a pretty day it's a pretty day to day to day. Shame. It's kind of a mean it's kind of a mean question.

2872
04:36:19.490 --> 04:36:24.070
Raise your hand if you've have you spent at a BitPay merchant in the last year?

2873
04:36:25.170 --> 04:36:26.230
It's a few hands.

2874
04:36:28.154 --> 04:36:29.855
Did they just give you an invoice?

2875
04:36:38.030 --> 04:36:42.050
PIP 90? What yeah. Got it. So he's saying it's it depends on the merchant.

2876
04:36:42.590 --> 04:36:45.115
So Some just give you a Bitcoin address. Yeah.

2877
04:36:45.576 --> 04:36:54.770
They'll still catch it up. But there's other merchants that just use, BTC pay server, like, you know, to book your your flights or hotel. There's so many places you can go now.

2878
04:36:55.229 --> 04:36:55.729
100%.

2879
04:36:56.110 --> 04:36:56.590
So, guys,

2880
04:36:57.885 --> 04:37:13.318
I mean, we have 2 minutes left. I think we should probably end it with final thoughts. But before we do before you all, like, jump out of your seats and stuff, we have a ride or dive freak here who's going to perform for us, captain youth, in 2 minutes after we do our final thoughts. So,

2881
04:37:14.365 --> 04:37:19.664
I'm very excited about that and, looking forward to that. So, Craig, you wanna start with final thoughts?

2882
04:37:19.965 --> 04:37:21.104
Sure. So, I mean,

2883
04:37:21.730 --> 04:37:23.110
great to be here. And

2884
04:37:24.290 --> 04:37:25.510
I just really

2885
04:37:25.890 --> 04:37:28.506
am inspired by the number of people that I've met and

2886
04:37:29.625 --> 04:37:30.846
feedback that I've got.

2887
04:37:31.545 --> 04:37:34.125
It's great to see in person the kind of passion

2888
04:37:34.506 --> 04:37:36.445
that people have. I'm living in

2889
04:37:36.746 --> 04:37:40.410
one corner of continents in the world where bitcoin is not

2890
04:37:41.270 --> 04:37:43.129
a general topic, let's say.

2891
04:37:43.990 --> 04:37:52.145
And coming out here, you can really experience the kind of passion and enthusiasm that people have in the space, and that gives me energy

2892
04:37:52.541 --> 04:37:54.240
to do what I do. So, yeah,

2893
04:37:54.621 --> 04:37:56.480
it's been great to be here so far.

2894
04:37:57.021 --> 04:37:59.201
Thanks, Craig. Wes, final thoughts.

2895
04:37:59.875 --> 04:38:04.855
Yeah. I mean, it's been, Miami's been great so far. We started off with the beef steak, and that was amazing.

2896
04:38:05.314 --> 04:38:07.414
Beefsteak's always special. Who who went to the beefsteak?

2897
04:38:08.201 --> 04:38:13.500
Yeah. Marty, why is your hand up? Yeah. That's that's the best that's the best bet. Pregnant wife.

2898
04:38:14.602 --> 04:38:21.955
I've had I tweeted, I have beef steak FOMO. I have poor FOMO. Yeah. But you were missed. Everyone that was asking me about you, I had to answer that question, like, a 100 times.

2899
04:38:23.137 --> 04:38:26.969
Thank you for missing me, Franks. Yeah. Yeah. Beefsteak was awesome, and,

2900
04:38:27.450 --> 04:38:32.889
you know, this open source stage was awesome. Like, every talk is these are this is the signal. Right? These are the people that I wanna,

2901
04:38:33.975 --> 04:38:39.113
listen to and hang out with. I don't know what's going on in the other rooms. I'm not paying attention. But

2902
04:38:39.814 --> 04:38:40.795
Yeah. Steve?

2903
04:38:41.560 --> 04:38:45.980
Well, I'm happy to be up here. I I listen to you guys. I do a lot of driving in Canada

2904
04:38:46.281 --> 04:38:50.300
from Calgary to Lloyd to oil wells, whatnot. I listen to you guys all the time. So

2905
04:38:50.676 --> 04:38:52.215
appreciate having me up here.

2906
04:38:52.996 --> 04:39:03.410
Me and Marty were shooting guns on a Texas ranch the other day. It was epic. Steve illegal guns that we wouldn't build, not US illegal, but Canadian illegal. So it was a special experience.

2907
04:39:03.710 --> 04:39:09.506
Steve had a cathartic experience on the gun range on Sunday. I've got picture of him. He's got the biggest shit eating grin on his face.

2908
04:39:10.205 --> 04:39:12.305
FN scar, man. Oh my god.

2909
04:39:13.086 --> 04:39:20.049
There's a Guns and Bitcoin conference coming up. I don't know. Are you guys going to that? Guns and Bitcoin? Oh, yeah. I'm like, I want to. Yeah. I'm speaking at that,

2910
04:39:20.510 --> 04:39:22.129
in a few days. Oh, awesome.

2911
04:39:22.510 --> 04:39:25.490
It's down here in Miami. Right? I mean, they're great dudes over there.

2912
04:39:25.916 --> 04:39:34.736
Yeah. Do you have any oh, yes. That's it. Virginia. Why don't you go first with final thought? And what what are you hoping? I wasn't gonna do final thoughts, but we've been working with the Bitcoin company,

2913
04:39:36.021 --> 04:39:40.760
and we've turned that honey badger they've turned that honey badger that we used to have on our T shirts

2914
04:39:41.060 --> 04:39:44.521
before Marty nuked the store because he was scared we were gonna be ledger hacked.

2915
04:39:46.516 --> 04:39:47.016
And

2916
04:39:47.316 --> 04:39:49.256
proceeds are going to Open Sats,

2917
04:39:49.795 --> 04:40:08.195
them and us. It's a it's a three way split. Yeah. Shout out to my So it's pretty dope. This is the first time I've ever seen it in person. Shout out to my roommate, Braden, out of college who made that design. And shout out to Max who made this 3 d print. It's it came out great, dude. I know you just walked up on stage and I had a hot mic, but it came out fantastic.

2918
04:40:09.295 --> 04:40:10.115
Final thoughts?

2919
04:40:10.760 --> 04:40:15.820
We're gonna win. We're gonna win. Let's fucking go. Thank you, freaks. Here comes captain youth.