1
00:00:00,000 --> 00:00:05,520
where it's managed, you go like, well, look at that in 10 years time and that could actually be

2
00:00:05,520 --> 00:00:10,960
like compound interest is magic, right? It can work for you. Whereas like, if you just pay your

3
00:00:10,960 --> 00:00:14,960
own salary in 10 years time, you're like, great, cool, I've paid my salary, but you're probably

4
00:00:14,960 --> 00:00:20,320
better off just saying, you know, validation was fun, but you know, fucking maybe maybe I just go

5
00:00:20,320 --> 00:00:30,000
work on my dance for the next 10 years and then welcome to Game of Modes, a weekly podcast from

6
00:00:30,000 --> 00:00:39,200
independent value data teams. Welcome to Game of Modes, a weekly podcast from independent value

7
00:00:39,200 --> 00:00:46,400
data teams surviving bear markets since 2022 still here. We put off last week's episode because of

8
00:00:46,400 --> 00:00:52,640
illness on the podcast. They were shits all around. There was a lot. I was ready to go to be fair,

9
00:00:52,640 --> 00:01:02,240
actually. I was all right. But everybody else was ill. So I had a hot bath and read Master and

10
00:01:02,240 --> 00:01:07,360
Commander. So, oh, God, now you're reading it as well as watching it. I'm reading the series.

11
00:01:08,960 --> 00:01:15,600
The whole series, like the whole the books, that exists. 20 bucks on eBay. That is a great

12
00:01:15,600 --> 00:01:23,920
deal. That's a lot of content. How many books is that? 19. Although there's actually two more books.

13
00:01:23,920 --> 00:01:28,480
There's actually two more books. There's a 20th, I think, and then he died while writing the 21st.

14
00:01:29,200 --> 00:01:34,000
So there you go. It sounds like you need the bundle of holding in your life. Yeah. You ever

15
00:01:34,000 --> 00:01:39,360
heard of this? What's that? The bundle of holding. The bundle of holding is like, it's like a humble

16
00:01:39,360 --> 00:01:45,200
bundle where you pay like $5 for like 30 books. And sometimes it's, and it's by the authors. The

17
00:01:45,200 --> 00:01:50,240
authors often do it, right? Sometimes you get stuff. I tend to get all of them just because I'm a

18
00:01:50,240 --> 00:01:54,880
data hoarder. Yeah, I was going to say that that kind of feels like a hoarding thing. I remember

19
00:01:54,880 --> 00:02:00,480
getting so excited the first time I saw that humble bundle. And then they became a burden to me.

20
00:02:00,480 --> 00:02:04,000
And then they became a burden to me. I was like, I can just sleep with these. I've done it all these

21
00:02:04,000 --> 00:02:11,520
games. I need to play them. Wait, explain the humble bundle. The humble bundle. Humble bundle.

22
00:02:11,520 --> 00:02:18,400
Humble bundle is, it's originally for games where you pay like, you get to choose what you pay,

23
00:02:18,400 --> 00:02:24,480
goes to charity, and you get like seven games. So you get to pay $5 for seven games. And often,

24
00:02:24,480 --> 00:02:28,400
there's like good stuff in it, right? But it means that you end up ultimately having this massive

25
00:02:28,400 --> 00:02:32,400
backlog of games that you're not actually interested in playing because you paid extra for

26
00:02:32,400 --> 00:02:36,560
like just a couple of games that you wanted. Yeah, good model, right? Because you're like,

27
00:02:36,560 --> 00:02:41,840
I hate games. And then, you know, the next time you have a long train journey, yes, I know.

28
00:02:41,840 --> 00:02:46,400
Don't fucking say it. Next time on a long train journey, I'm just playing XCOM 2 again, aren't

29
00:02:46,400 --> 00:02:51,920
I? Of course I am because I play XCOM 2. That's what I do on the train. When I'm like, Hey,

30
00:02:51,920 --> 00:02:57,600
which version of lemmings are we going to play today? Do you actually play them? No, it just

31
00:02:57,600 --> 00:03:03,520
seems like the type of thing that would be in a humble bundle. It's like, for a word. Yeah,

32
00:03:03,520 --> 00:03:09,200
actually, hey, worms 2 is a fucking great game. That one stands up. Test of time.

33
00:03:09,200 --> 00:03:14,960
That got me through lockdown. No, worms are no worms are we getting words? Well, part no,

34
00:03:14,960 --> 00:03:21,840
not world party. Worms WMD. Oh, yeah, WMD. Playing that with the lads every Thursday.

35
00:03:21,840 --> 00:03:27,680
That's great. What was that? Captain King. Is it Captain King? I don't know that one.

36
00:03:27,680 --> 00:03:34,160
It's a real early game, like fucking back in the day. It's like before games were games.

37
00:03:34,160 --> 00:03:38,880
This is Captain King. Before games were games. Real man.

38
00:03:42,240 --> 00:03:48,720
So to our viewers who are expecting, this shit had to poke at you.

39
00:03:49,600 --> 00:03:54,880
Really looking forward to our skip episode today, but he's not coming. So yeah.

40
00:03:54,880 --> 00:03:58,720
And we had some confusion on the timings and dad had to go out for cigarettes.

41
00:03:58,720 --> 00:04:03,680
So it's going to be next week. Yeah, there was a scheduling conflict due to some

42
00:04:05,040 --> 00:04:10,880
calendar snafus. So typical gone shit, but that'll be here next week. So you'll be able to enjoy that.

43
00:04:11,840 --> 00:04:18,640
Yeah, and we'll be as incisive as ever, I believe. So are we going to do a, I think we should do,

44
00:04:18,640 --> 00:04:22,480
are we going to do an awards show? Because that was appetised, right? We said,

45
00:04:22,480 --> 00:04:28,080
so the problem was for those listening, right? We, as professionals, we are, we're very professional,

46
00:04:28,080 --> 00:04:33,200
obviously. We had a set of topics and also we have also done some previous years. So,

47
00:04:34,160 --> 00:04:44,240
you know, posited on the group chat, some topics to the lads, and there was a deafening silence

48
00:04:44,240 --> 00:04:49,360
of not getting a shit. Now, I appreciate that we have had what even fucking year are we in?

49
00:04:49,360 --> 00:04:54,240
We have had nearly three years of bear market at this point.

50
00:04:54,800 --> 00:04:59,920
You know what it is, the fray and the excitement maybe is not that I understand that, but no,

51
00:04:59,920 --> 00:05:05,760
no, it's appointed by lack of energy. That's all. It's not that it's not that it's that the eco is

52
00:05:05,760 --> 00:05:12,000
so fucking broad now that it's impossible to be on top of it all. And like, if we're out here trying

53
00:05:12,000 --> 00:05:16,960
to like pick things, I mean, we're only picking things out of our own little world. And, you know,

54
00:05:16,960 --> 00:05:24,560
I just don't have the energy to go and like educate myself on all of the other bullshit so that we

55
00:05:24,560 --> 00:05:29,920
can be like, you know, some kind of accurate. If that makes any sense, I think we're just giving

56
00:05:29,920 --> 00:05:36,640
awards to just random shit. I would agree with that. Yeah, it feels like as we've all expanded

57
00:05:36,640 --> 00:05:43,280
more, there are less things that you can really pinpoint as award worthy, which makes it tough.

58
00:05:43,280 --> 00:05:50,240
Which makes it tough. It's not as fun. Like our own sphere of the ecosystem is probably just a small

59
00:05:50,240 --> 00:05:55,840
fraction. Like we're into the things we're into and we're not all into the same things. And like,

60
00:05:55,840 --> 00:06:01,680
I might think something's great and you might never have fucking heard of it. So, you know,

61
00:06:01,680 --> 00:06:05,680
that would be a fault of this podcast. I would say that we are failing with this podcast though.

62
00:06:05,680 --> 00:06:10,880
Would it not? No, not real. This is sort of the forum. This is the forum. I mean, we're not fucking,

63
00:06:10,880 --> 00:06:17,280
we're not a podcast of researchers. We don't sit there just like researching all day. So, we're

64
00:06:17,280 --> 00:06:24,560
working, doing fucking work. And only sort of, you know, when you're working, you're only interested

65
00:06:24,560 --> 00:06:30,480
in the things that make you money and are like, you know, business pertinent to business. You're

66
00:06:30,480 --> 00:06:37,280
not on Twitter 25 hours a day fucking scrolling through shit making notes. We still make money.

67
00:06:37,280 --> 00:06:45,680
Oh, yeah, there's money to be made. Yeah. Yeah, true. So I mean, I don't print it. I don't paint it.

68
00:06:45,680 --> 00:06:51,440
Don't print it. Don't make it. Yeah, fair enough. It's been some time. It's been some time.

69
00:06:52,320 --> 00:06:57,920
It's been some time. I think I think the problem I have more with the with the award show is it's

70
00:06:57,920 --> 00:07:03,520
been quite some time really since all of our eggs as a company, at least in the crypto,

71
00:07:03,520 --> 00:07:08,080
because we still obviously do other stuff weren't kind of in one basket. So it's kind of just like,

72
00:07:08,080 --> 00:07:14,800
well, you know, there's only we were we were we were always doing fewer chains. And for the longest

73
00:07:14,800 --> 00:07:19,520
time, only one's making us any money. So it's kind of like, well, we're interested in other things.

74
00:07:19,520 --> 00:07:25,440
But, you know, DVT stuff, cool. Does it make us any money? No, you know, it just costs a server

75
00:07:25,440 --> 00:07:29,280
costs every month, you know. So there's a whole bunch of things like that, I think, where it's

76
00:07:29,280 --> 00:07:34,080
like things you're interested in. But like, you can't not sure you can slap an award on something

77
00:07:34,080 --> 00:07:39,840
that's that's not a good business decision. Although that would eliminate a lot of things

78
00:07:39,840 --> 00:07:43,760
in this case. That's not a business decision. You can't give that an award. Okay, well,

79
00:07:44,800 --> 00:07:51,600
what are we going to do then? Fair point. To against myself there on DVT, though,

80
00:07:52,240 --> 00:07:56,480
on DVT, at least it's kind of interesting. It is kind of interesting.

81
00:07:56,480 --> 00:08:02,080
Yeah. Yes, you're right. It doesn't make any money, but it is kind of interesting.

82
00:08:02,080 --> 00:08:03,520
It does make more of a public service.

83
00:08:04,880 --> 00:08:10,400
More of a public service, which is funny, because, you know, that would be a good argument

84
00:08:10,400 --> 00:08:15,200
if you were working in an area where some people weren't quite literally printing money.

85
00:08:16,880 --> 00:08:22,080
So I don't know, like, it's yeah, I remember the other day, friend of the podcast hit us up

86
00:08:22,080 --> 00:08:26,400
in the group and it's like, you guys are going to be keeping up your camera. If it was light

87
00:08:26,400 --> 00:08:32,800
or SSV cluster or, you know, nodes, and we're like, yeah, man, it was SSV. It was like, yeah, man,

88
00:08:33,600 --> 00:08:38,720
we're committed to keeping those things running. And then later on he messaged and he's like,

89
00:08:38,720 --> 00:08:44,480
oh yeah, so I've put up a validator on yours guys nodes. And I'm like, cool. And he's like,

90
00:08:44,480 --> 00:08:48,160
yeah, I've bought enough SSV to last seven years or something. And I'm like,

91
00:08:48,880 --> 00:08:51,040
I don't think any of us even charge fees.

92
00:08:51,040 --> 00:08:54,560
I, how do you charge?

93
00:08:54,560 --> 00:08:57,200
How do you even charge fees?

94
00:08:57,200 --> 00:09:01,280
You set the amount of SSV that you want to charge when you start to set the thing up.

95
00:09:01,280 --> 00:09:03,920
And I, the thing I just put zero one or something like that.

96
00:09:05,760 --> 00:09:09,440
Because I am paying the fees for it. So I'm pretty sure.

97
00:09:09,440 --> 00:09:13,200
Okay. So there is some sort of fee. How much are you paying? Is it tell you?

98
00:09:13,200 --> 00:09:17,600
It's one SSV per node per year.

99
00:09:17,600 --> 00:09:22,080
Okay. So we all must have put in one SSV. It must have required something.

100
00:09:22,080 --> 00:09:25,360
You can put zero. You can put zero, but everyone put in one.

101
00:09:25,360 --> 00:09:27,920
Geez, I must be flush with SSV now.

102
00:09:27,920 --> 00:09:31,760
I don't think I have any SS. Oh, well, I guess we will have some SSV.

103
00:09:31,760 --> 00:09:32,800
Don't know how to claim it.

104
00:09:32,800 --> 00:09:35,120
I think it's periodically paid out. I'm not sure though.

105
00:09:35,120 --> 00:09:39,680
Oh, I can know this man. That was, that was one of those ones where it was set up using

106
00:09:39,680 --> 00:09:45,280
quite a bit of automation when we were having a sleep regression. And, you know, anything that

107
00:09:45,280 --> 00:09:50,080
could have been done, anything that was done where it is like the servers and it has alerting

108
00:09:50,080 --> 00:09:54,400
in front of it and blah, blah, blah. That was all done with automated deployment stuff.

109
00:09:54,400 --> 00:09:59,600
So I'm happy and cool that that all works. And it's got dashboards and whatnot.

110
00:09:59,600 --> 00:10:04,160
But everything that was done via that SSV UI, which is also not great,

111
00:10:04,720 --> 00:10:08,880
it was just a case of like, put in the numbers.

112
00:10:08,880 --> 00:10:16,560
But I think it was like literally me in a chat with Shorts, who'd be like,

113
00:10:16,560 --> 00:10:19,600
what are all these numbers mean? Shorts being like, oh, well, yes, here's how you do it.

114
00:10:19,600 --> 00:10:26,000
And I'm just like, let's imagine that I am tired and really stupid right now.

115
00:10:26,000 --> 00:10:32,000
What number do I put in box B is like, I literally don't put in five.

116
00:10:32,000 --> 00:10:35,760
And I'm like, I've put in five and hit enter. Shorts is like, no,

117
00:10:35,760 --> 00:10:41,440
no, that's the one number you couldn't put in. That's the last number you should have.

118
00:10:42,000 --> 00:10:45,680
You always put, if you don't put one, you always put seven because seven is lucky

119
00:10:45,680 --> 00:10:49,200
and it makes the blockchain go faster. And I'm sorry, I broke the whole blockchain.

120
00:10:49,200 --> 00:10:55,200
I literally just had that conversation with Zenrock like three days ago,

121
00:10:55,200 --> 00:11:00,000
where we hop on a call and I'm like, okay, imagine I've never used a terminal before

122
00:11:00,000 --> 00:11:06,240
and I have a newborn and I'm really tired and I have like eight. Now let's continue and try

123
00:11:06,240 --> 00:11:10,400
and figure this out. And the guy was like, sweet. And then it was like, I swear to God,

124
00:11:10,400 --> 00:11:14,800
it was the single smoothest like paired programming session I've ever had in my life.

125
00:11:14,800 --> 00:11:18,720
The paired programming, but like paired working through something. My God, it was glorious.

126
00:11:19,440 --> 00:11:21,680
Treating me like an idiot and everything is deeply.

127
00:11:21,680 --> 00:11:23,120
That's not a fantastic thing.

128
00:11:23,120 --> 00:11:28,480
Zenrock was particularly confusing in some respects, maybe just because it's different.

129
00:11:28,480 --> 00:11:31,440
Irrequiring Kubernetes definitely didn't help.

130
00:11:31,440 --> 00:11:33,520
And how did you use Kubernetes?

131
00:11:35,280 --> 00:11:37,920
Is this recent history we're talking about or a while ago?

132
00:11:37,920 --> 00:11:39,840
No, this was literally like three days ago.

133
00:11:39,840 --> 00:11:41,280
Oh, there's a binary is now.

134
00:11:41,280 --> 00:11:44,160
We have binaries. Well, so you don't have to use helm anymore.

135
00:11:44,160 --> 00:11:50,640
Yeah. So this is for their, their distributed signing, not for the validator.

136
00:11:51,600 --> 00:11:53,760
Oh, right. Oh, fucking.

137
00:11:53,760 --> 00:11:57,760
Yeah. So is this like their version of Horcrux or something?

138
00:11:59,120 --> 00:12:06,320
Kind of, but not really. It'd be more like their version of SSV where it's all separate people

139
00:12:07,200 --> 00:12:10,720
signing keys effectively. But it's not, again, it's not for the validator.

140
00:12:10,720 --> 00:12:13,120
It's for kind of like a different side of their product.

141
00:12:15,280 --> 00:12:15,760
Interesting.

142
00:12:17,200 --> 00:12:21,280
Yeah. I was like, I stically note that on their website, they use the word decentralized multiple

143
00:12:21,280 --> 00:12:24,720
times and they don't sign sources and even define the word decentralized.

144
00:12:26,000 --> 00:12:30,560
My goodness. I mean, what does that mean?

145
00:12:31,280 --> 00:12:34,080
I wonder if somebody was writing a paper on what that was, I mean,

146
00:12:34,080 --> 00:12:37,120
lots of people are writing words on all that writing words and what that paper means,

147
00:12:37,120 --> 00:12:38,480
writing papers and what that word means.

148
00:12:39,280 --> 00:12:41,280
But I don't even know what you're saying then.

149
00:12:41,920 --> 00:12:43,040
Fuck if I do, mate.

150
00:12:44,320 --> 00:12:49,840
So last night, you can look forward to this because you go get through a whole bunch of

151
00:12:49,840 --> 00:12:53,680
sleep regressions and then you can do potty training and you're going to sound as fucking

152
00:12:53,680 --> 00:12:54,640
incoherent as I do.

153
00:12:55,600 --> 00:13:02,800
We are, we are just, just got over a sleep regression and I'm still currently sleeping

154
00:13:02,800 --> 00:13:10,240
on the floor of the office during the night. And my partner comes and swaps with me at 3am

155
00:13:10,240 --> 00:13:16,400
and I come and take the morning shift when your man fucking starts to wake up.

156
00:13:16,400 --> 00:13:24,800
So last night, Kelly said that the baby was great last night, slept most of the night,

157
00:13:24,800 --> 00:13:31,840
you know, good night. And meanwhile, on the floor of the office, I fielded about fucking 50

158
00:13:31,840 --> 00:13:37,680
page page duty fucking alarms. She came at 3am and I'm like, fuck off.

159
00:13:39,920 --> 00:13:41,200
I am.

160
00:13:41,200 --> 00:13:45,280
Spellings were real. That's a lot of fucking page duty action.

161
00:13:45,280 --> 00:13:51,200
There was this fuck of a network that just kept stalling.

162
00:13:52,000 --> 00:13:56,640
Couldn't be neutron because it just stalled once for 24 hours or 28 hours.

163
00:13:56,640 --> 00:13:58,560
I kept fixing it and it kept stalling.

164
00:14:00,000 --> 00:14:02,000
Oh, it was neutron. How did you fix it?

165
00:14:02,000 --> 00:14:06,640
Oh, no, no, no, no, no, sorry. It wasn't, it wasn't neutron. It was a, it was an archive.

166
00:14:06,640 --> 00:14:09,280
It's particularly a pain in the butt.

167
00:14:09,280 --> 00:14:15,920
It's still unclear why, but I've been trying to figure it out with the team.

168
00:14:15,920 --> 00:14:23,120
But anyway, it did just keep stalling. So now I've just put my super special little script

169
00:14:23,120 --> 00:14:27,280
in there to make it not do that anymore by way of just restarting it when it stalls.

170
00:14:28,960 --> 00:14:31,200
So that's the temporary fix at the moment.

171
00:14:31,840 --> 00:14:32,480
When in doubt.

172
00:14:33,200 --> 00:14:38,560
Yeah, I've actually got that script now as like, it goes on all of the servers and just

173
00:14:38,560 --> 00:14:44,320
takes arguments. So it's like, you know, this just instead of having to like copy it across

174
00:14:44,320 --> 00:14:47,920
and put it into, you know, run it in, I don't know, the background or whatever,

175
00:14:48,720 --> 00:14:54,720
you can just, you know, run it straight out of the user bin on every server.

176
00:14:54,720 --> 00:14:56,080
We rewrite it in Rust.

177
00:14:56,080 --> 00:14:57,920
Networks got shit that stalls apparently.

178
00:14:58,480 --> 00:15:02,320
Rewrite it in Rust, put it in a Docker container, call it production ready.

179
00:15:02,320 --> 00:15:03,440
Open source it.

180
00:15:03,440 --> 00:15:07,440
You can put bash scripts into user bin and just use this.

181
00:15:07,440 --> 00:15:12,160
I did that. I actually have something very similar that I did use Docker for.

182
00:15:12,960 --> 00:15:17,200
Docker is not happy when you try and restart a service outside of it. I'll have you know.

183
00:15:17,200 --> 00:15:19,280
In fact, it's very unhappy about that.

184
00:15:19,280 --> 00:15:21,920
Now if you think about it more than a second and why?

185
00:15:22,480 --> 00:15:22,800
Yeah.

186
00:15:22,800 --> 00:15:25,760
I Docker makes it easy to reproduce.

187
00:15:25,760 --> 00:15:27,040
Yeah, basically.

188
00:15:27,040 --> 00:15:30,560
But I didn't think about the fact that Docker, the kind of the purpose of it is to

189
00:15:30,560 --> 00:15:32,800
not interfere with the services outside of it.

190
00:15:32,800 --> 00:15:36,160
And so I was debugging it for like, probably a day like, what the hell?

191
00:15:36,160 --> 00:15:40,480
I know this works. I know it works. I just know it works. It doesn't work.

192
00:15:40,480 --> 00:15:42,880
And so I just have to run it natively now.

193
00:15:42,880 --> 00:15:51,520
Ah, yes. So my new friend is just having in Ansible a folder filled with fucking

194
00:15:52,160 --> 00:15:55,600
random scripts that I use and then just putting them into the user bin.

195
00:15:56,800 --> 00:15:59,360
And then just using them. It's great.

196
00:16:01,200 --> 00:16:02,960
Handy handy little helpers there.

197
00:16:03,520 --> 00:16:05,920
Maybe I'll call that the role handy little helpers.

198
00:16:05,920 --> 00:16:07,120
Handy little helpers.

199
00:16:07,680 --> 00:16:09,840
The user bin handy little helpers.

200
00:16:09,840 --> 00:16:14,800
Hey, just like I said, just put all those handy little helpers into a rust binary.

201
00:16:14,800 --> 00:16:17,200
Open source it handy little helpers.rs.

202
00:16:18,720 --> 00:16:21,280
Sell consultancy for your handy little helper service.

203
00:16:21,280 --> 00:16:22,480
Give away the secrets, man.

204
00:16:24,480 --> 00:16:25,680
The secret sources system.

205
00:16:25,680 --> 00:16:26,960
We could totally restart.

206
00:16:26,960 --> 00:16:27,680
We all know that.

207
00:16:28,880 --> 00:16:29,200
Yeah.

208
00:16:30,080 --> 00:16:30,720
Secret.

209
00:16:30,720 --> 00:16:31,360
Shelling out.

210
00:16:31,360 --> 00:16:39,360
I remember very early in my career as in like the first time I was really doing any ops work

211
00:16:40,160 --> 00:16:41,360
over 10 years ago.

212
00:16:42,400 --> 00:16:47,040
I was trying to basically get these reproducible things working on some servers.

213
00:16:47,040 --> 00:16:48,560
We're moving to Docker.

214
00:16:48,560 --> 00:16:50,640
This was when Docker was pre version one.

215
00:16:50,640 --> 00:16:51,840
It was really, really early days.

216
00:16:52,480 --> 00:16:57,680
And before Docker compose, before any of that, when Docker compose was in like

217
00:16:57,680 --> 00:17:00,480
Alfred, it was called fig.

218
00:17:00,480 --> 00:17:01,840
That's how long ago this was.

219
00:17:02,640 --> 00:17:09,280
And we were running Ruby on Rails apps and needed to deploy them with a bunch of specific

220
00:17:09,280 --> 00:17:10,560
to Ruby stuff.

221
00:17:11,280 --> 00:17:18,000
And so I wrote this kind of Ruby wrapper for essentially like sort of Docker deployments

222
00:17:18,000 --> 00:17:21,840
remotely that was a little bit inspired by Capistrano.

223
00:17:21,840 --> 00:17:28,000
But because of how there wasn't any good way of actually ultimately doing the final bits

224
00:17:28,000 --> 00:17:32,160
of orchestration that you needed other than just via the command line.

225
00:17:33,120 --> 00:17:35,920
In the end, like because you could obviously, there are ways of interacting with the command

226
00:17:35,920 --> 00:17:40,560
line via Ruby that use libraries that go like, oh, I'll just call this thing for you or whatever.

227
00:17:40,560 --> 00:17:46,400
But then by some use, you're writing abstract object classes to like add additional arguments

228
00:17:46,400 --> 00:17:49,840
to a thing because it takes more arguments than the developers have thought you'd need

229
00:17:49,840 --> 00:17:50,640
or whatever.

230
00:17:50,640 --> 00:17:53,360
You just go like system M out.

231
00:17:54,080 --> 00:18:00,560
And so like it was this like, like the command line interface for this Ruby utility was like

232
00:18:00,560 --> 00:18:01,280
actually all right.

233
00:18:01,280 --> 00:18:04,800
But then when you dug right way down into the code, eventually it was just like

234
00:18:05,840 --> 00:18:08,960
most of the harder Docker stuff was just system out.

235
00:18:08,960 --> 00:18:11,120
Like it could have been done by bash by bash group.

236
00:18:11,680 --> 00:18:13,520
And it was just like one of those like, oh, this is cool.

237
00:18:13,520 --> 00:18:15,280
We can use this for this and that and the other.

238
00:18:15,280 --> 00:18:17,280
And you're just like, just do not look in the internals.

239
00:18:17,280 --> 00:18:18,480
Just do not look in the internals.

240
00:18:18,480 --> 00:18:21,040
You realize I've just written a bash script, but in Ruby.

241
00:18:22,560 --> 00:18:23,040
Yeah.

242
00:18:23,040 --> 00:18:25,840
I was so proud of that for a little while because I was like, oh, well, it kind of works.

243
00:18:26,400 --> 00:18:27,360
I thought about it a bit more.

244
00:18:27,360 --> 00:18:28,720
I said, this is fucking stupid.

245
00:18:29,440 --> 00:18:33,680
But yeah, I quite love bash scripting.

246
00:18:33,680 --> 00:18:34,880
I think it's great.

247
00:18:34,880 --> 00:18:35,360
It's great.

248
00:18:35,360 --> 00:18:36,880
It's pretty hot take.

249
00:18:36,880 --> 00:18:37,120
Yeah.

250
00:18:37,840 --> 00:18:43,200
Like there are so many edge cases I can think of, but I couldn't describe like effectively over

251
00:18:43,200 --> 00:18:46,320
a video where like you think you're doing it right.

252
00:18:46,320 --> 00:18:51,040
And then one small syntactical problem ruins it and your day is effectively ruined.

253
00:18:51,600 --> 00:18:58,240
I have never spent so long trying to understand something than reading the fucking bash manual.

254
00:18:59,920 --> 00:19:00,800
It's fucking.

255
00:19:00,800 --> 00:19:01,120
Yeah.

256
00:19:01,120 --> 00:19:09,680
It's a really long B. There is so much shit in there and C. It just does all this stuff that's weird.

257
00:19:10,560 --> 00:19:13,680
But I don't know when you get it, when you get it humming, it's humming.

258
00:19:13,680 --> 00:19:19,280
But if your bash script is longer than about 20 lines and it's not a build script,

259
00:19:19,280 --> 00:19:20,320
build scripts are the exception.

260
00:19:20,320 --> 00:19:22,320
We allow build scripts, right?

261
00:19:22,320 --> 00:19:24,160
Because they get run every build.

262
00:19:24,160 --> 00:19:26,080
So if they break, we fix them very quickly.

263
00:19:26,080 --> 00:19:29,120
It's not a big deal if you have a big, scary, silly build script.

264
00:19:29,120 --> 00:19:30,960
People freak out about that too much.

265
00:19:31,600 --> 00:19:34,800
But any other situation, your bash script is longer than like.

266
00:19:35,360 --> 00:19:37,520
I don't want to say 30 lines.

267
00:19:38,080 --> 00:19:41,360
I think 30 lines is the length of bash script where I look at it and I go,

268
00:19:41,360 --> 00:19:43,520
that's going to cause problems.

269
00:19:44,080 --> 00:19:44,720
Something like that.

270
00:19:44,720 --> 00:19:49,600
It's about basically like one page without tabbing down in the terminal.

271
00:19:50,800 --> 00:19:57,840
If you just less it and it's about a page, you're like, okay, okay, that's fine.

272
00:19:57,840 --> 00:19:59,120
I'm all right with that.

273
00:19:59,120 --> 00:20:03,520
And if it has like the little arrow down, I'm like, no, no, no.

274
00:20:04,240 --> 00:20:05,920
I think this might be doing too much.

275
00:20:05,920 --> 00:20:10,400
And I start to get that little tingling in the palms of your hands where you know something bad

276
00:20:10,400 --> 00:20:11,760
is going to happen at some point.

277
00:20:12,400 --> 00:20:17,920
So I do have a script that is exactly 99 lines long.

278
00:20:18,720 --> 00:20:20,480
So yeah, I get over the 20.

279
00:20:20,480 --> 00:20:22,400
I think I've got one that's like 400.

280
00:20:22,400 --> 00:20:23,920
Yeah, definitely have longer ones.

281
00:20:23,920 --> 00:20:25,680
This is just the first one I clicked on.

282
00:20:25,680 --> 00:20:25,920
Eek.

283
00:20:26,800 --> 00:20:29,040
In my defense, a lot of it is logging.

284
00:20:30,560 --> 00:20:31,600
Yeah.

285
00:20:31,600 --> 00:20:37,040
I mean, it would have to be 300 lines of logging for you to even get to null the size.

286
00:20:37,040 --> 00:20:44,960
It might actually be for every function, I have the massive manual block of like six lines of

287
00:20:44,960 --> 00:20:46,320
this is what's doing in this function.

288
00:20:46,320 --> 00:20:46,960
So,

289
00:20:46,960 --> 00:20:48,160
Ah, fair enough.

290
00:20:48,160 --> 00:20:50,400
Oh, like actual code comments.

291
00:20:51,120 --> 00:20:51,840
Code.

292
00:20:51,840 --> 00:20:52,400
Yeah.

293
00:20:52,400 --> 00:20:52,880
Yeah.

294
00:20:52,880 --> 00:20:53,120
Yeah.

295
00:20:53,120 --> 00:20:53,600
Okay.

296
00:20:53,600 --> 00:20:58,400
The, the Juno build scripts were probably about 200 lines long back in the day.

297
00:20:58,400 --> 00:21:02,240
But then I guess that was, that was building, building valid genesis file,

298
00:21:02,240 --> 00:21:07,680
building the chain, launching the chain, uploading some smart contracts, making some accounts,

299
00:21:07,680 --> 00:21:10,640
making everything work and then going like, does it all work now?

300
00:21:11,360 --> 00:21:16,240
So that was a kind of, yeah, I would say if you just looked at that, like appropriate nothing,

301
00:21:16,240 --> 00:21:18,080
you'd probably be like, this is fucking insanity.

302
00:21:18,080 --> 00:21:21,760
But then at the same time, like, I think Reese wasn't scared by it when he looked at it.

303
00:21:21,760 --> 00:21:23,920
I don't know what that says about the script.

304
00:21:23,920 --> 00:21:24,800
But, you know,

305
00:21:24,800 --> 00:21:30,800
yeah, maybe tentatively roll back my harshness about the, about the length of the bash scripts.

306
00:21:31,680 --> 00:21:32,160
We'll see.

307
00:21:32,160 --> 00:21:37,840
I do quite enjoy in bash that like most of the exits from blocks, like a case block,

308
00:21:37,840 --> 00:21:39,520
the exit is ESAC.

309
00:21:42,000 --> 00:21:45,520
And if it's like five, for example, just keeps going.

310
00:21:46,480 --> 00:21:46,880
Yeah.

311
00:21:46,880 --> 00:21:48,480
Anyway, it's a lot of mine.

312
00:21:48,480 --> 00:21:49,520
Okey-doke.

313
00:21:51,520 --> 00:21:52,240
Okey-doke.

314
00:21:52,240 --> 00:21:54,960
Moving on.

315
00:21:54,960 --> 00:21:56,000
Moving on.

316
00:21:56,000 --> 00:21:59,920
That's a good, I'm glad that you enjoy your ESACs.

317
00:21:59,920 --> 00:22:04,400
You've got to have something to keep your spirits up in these trying times.

318
00:22:04,400 --> 00:22:04,800
Yeah.

319
00:22:04,800 --> 00:22:05,120
Yeah.

320
00:22:05,120 --> 00:22:08,400
It's the little things that, you know, really make life work.

321
00:22:08,400 --> 00:22:09,280
Like, case backwards.

322
00:22:10,240 --> 00:22:10,480
In fact.

323
00:22:11,520 --> 00:22:11,680
Yeah.

324
00:22:12,800 --> 00:22:14,160
ESAC on the fire.

325
00:22:16,320 --> 00:22:16,640
Shit.

326
00:22:16,640 --> 00:22:19,360
It's like, so it's, oh, hang on.

327
00:22:19,360 --> 00:22:23,120
We've got, we've got a thing for this.

328
00:22:25,600 --> 00:22:29,600
It's, it's pay your taxes time here.

329
00:22:29,600 --> 00:22:33,840
Like, have you reported them and pay them and then you need to pay them for companies,

330
00:22:34,720 --> 00:22:40,560
which means that it's the time of year where I look at our five year financials and remember

331
00:22:41,200 --> 00:22:46,080
just how much, just how much we lost by staking in Cosmos.

332
00:22:47,040 --> 00:22:48,960
And so that's fun as well.

333
00:22:48,960 --> 00:22:55,200
So I think in the chat earlier, Rahm was like, oh, we're still in a bad way.

334
00:22:55,200 --> 00:22:57,520
And it's like, well, you know, it's all relative, right?

335
00:22:57,520 --> 00:23:00,800
Remember, June, June, I was $40 once.

336
00:23:01,440 --> 00:23:06,240
And so, you know, if you, if you stake that June here.

337
00:23:06,240 --> 00:23:13,920
I think, I think gauging overall market sentiment on the price of June is a little bit misplaced.

338
00:23:13,920 --> 00:23:17,280
Well, no, you should probably gauge it on fucking Bitcoin, right?

339
00:23:17,280 --> 00:23:24,080
Yeah. Well, like, you know, anything else, I think, like just a random main point on Salon

340
00:23:24,080 --> 00:23:24,960
are probably better.

341
00:23:25,520 --> 00:23:27,440
Yeah, I mean, I think that's probably true.

342
00:23:27,440 --> 00:23:30,640
Probably like, you know, if you, if I think if you look at like the top 20, like,

343
00:23:30,640 --> 00:23:35,680
you can say, if you look at maybe like Ethereum, Bitcoin, let's say, because they kind of are

344
00:23:35,680 --> 00:23:39,920
in a class of their own in terms of what they do, although correlated, obviously.

345
00:23:39,920 --> 00:23:43,920
And then, you know, some, do you know what they're, and obviously, as soon as I think

346
00:23:43,920 --> 00:23:47,520
about this, they're obviously like a thousand, there'll be a thousand research papers on this,

347
00:23:47,520 --> 00:23:53,840
on how you actually classify what the market's doing in terms of altcoins and also Bitcoin

348
00:23:53,840 --> 00:23:59,920
and Ethereum. I could just look it up. Maybe I will. But I guess, like from our point of view,

349
00:23:59,920 --> 00:24:04,240
the thing that's relevant, things most relevant to the majority of validators, given that it's

350
00:24:04,240 --> 00:24:11,920
purely like, what's it called? Ethereum is just like a margins game.

351
00:24:11,920 --> 00:24:17,600
The altcoins are always going to be where the future of our businesses is validators are, right?

352
00:24:17,600 --> 00:24:23,120
Because they're the only ones that can have an upside to taking on counter-party risk,

353
00:24:23,120 --> 00:24:28,400
essentially. Because the other, the parties are over in the other places.

354
00:24:30,400 --> 00:24:30,880
But yeah.

355
00:24:30,880 --> 00:24:31,840
The parties are over?

356
00:24:31,840 --> 00:24:39,520
Well, it's like trying to elbow into Solana right now, right? You can jump in and pay your

357
00:24:39,520 --> 00:24:46,480
and pay your two Solana, 15 Solana a month just to run your node. But now it's $250 per Solana,

358
00:24:46,480 --> 00:24:50,000
or whatever it is, versus when the start is like 30 cents each, right?

359
00:24:50,000 --> 00:24:55,920
Yeah. Sounds like that needs an adjustment. Is there a lot of Solana validators?

360
00:24:55,920 --> 00:24:59,440
Hundreds, many hundreds, maybe even thousands, many, many, many.

361
00:24:59,440 --> 00:25:02,560
All paying, what did you say, 15 Solana a month?

362
00:25:02,560 --> 00:25:04,400
About 15 a month. Yeah.

363
00:25:04,400 --> 00:25:05,840
So like three grand?

364
00:25:05,840 --> 00:25:11,840
Yeah. You have to pay in order to like validate transactions because in Solana,

365
00:25:11,840 --> 00:25:18,560
a transaction is how you sign. And so for every 0.2 second block, you're doing a transaction.

366
00:25:19,920 --> 00:25:22,480
And every other validator is also doing transaction. It's one of the ways that they

367
00:25:22,480 --> 00:25:27,120
kind of like game the system for there, how much transactions they're getting through

368
00:25:27,120 --> 00:25:30,560
on the network. Because if there's a thousand validators and they're doing a transaction,

369
00:25:30,560 --> 00:25:34,320
then suddenly they're saying they're doing, you know, 5,000 transactions per second.

370
00:25:34,320 --> 00:25:37,440
When all that is doing is moving a block one forward.

371
00:25:38,240 --> 00:25:46,960
Yeah. I remember actually that's similar to say when you looked at the stats on say when they first

372
00:25:47,840 --> 00:25:54,800
were launched, there was like, you know, 40 transactions per block, which is, you know,

373
00:25:54,800 --> 00:26:00,160
120 transactions per second, which was just like the oracle.

374
00:26:00,160 --> 00:26:04,880
Yeah. Yeah. Yeah. It's like

375
00:26:04,880 --> 00:26:05,920
the

376
00:26:05,920 --> 00:26:09,840
120 million blocks. That's a lot of transactions.

377
00:26:09,840 --> 00:26:13,840
Yeah. But the point dance getting in on those established networks is

378
00:26:13,840 --> 00:26:15,200
the knowledge point, right?

379
00:26:15,200 --> 00:26:22,560
Yeah. Yeah. So and, you know, even with like these Cosmos SDK or other altcoin networks,

380
00:26:23,200 --> 00:26:28,880
after the initial launch, it is really hard to break into anyway, even just weeks or a month

381
00:26:28,880 --> 00:26:34,400
after, because most of the initial staking is done in that period. And then it's pretty hard to move

382
00:26:34,400 --> 00:26:38,480
stake from people after they do that. A lot of people just set it and forget it, collect their

383
00:26:38,480 --> 00:26:43,280
rewards or whatever. So I mean, a great example of that is the validator, the so-called skips

384
00:26:43,280 --> 00:26:48,640
validator on the hub right now. They rebranded, I remember what they were before.

385
00:26:49,360 --> 00:26:55,520
Oh, yeah. Something 3S in 3S or something like that. Something like that. Yeah. And they changed

386
00:26:55,520 --> 00:27:03,280
to skip whenever skip rebranded to interchain labs. Interchain ink. Sorry. Yeah. Yeah. Interchain

387
00:27:03,280 --> 00:27:08,400
it. Interchain ink. Yeah. Well, regardless, validator rebranded. Ask next week. Yeah.

388
00:27:08,400 --> 00:27:13,200
Yeah. Validator rebranded and changed the commission to 100%. And very few people have

389
00:27:13,200 --> 00:27:20,800
left and they have 200,000 atoms staked to them. Yeah. I think a few over the years,

390
00:27:20,800 --> 00:27:23,360
like a few people have pulled that move, haven't they? There was that,

391
00:27:23,360 --> 00:27:26,880
um, fuck who was, I can't remember the name of them. They did it and they're like, oh,

392
00:27:26,880 --> 00:27:32,480
it was a mistake. And then we're like, oh, we'll reduce it at like 1% a day for the next 100 days

393
00:27:32,480 --> 00:27:39,920
or something. Yeah. I'm surprised they could ramp it up that quickly because you have like a

394
00:27:39,920 --> 00:27:45,200
maximum day change. You have a maximum change, don't you? With the time? Yeah. The funny thing is,

395
00:27:45,200 --> 00:27:51,840
is that the maximum change applies to going up, not down. Yeah. So they had the ability to change

396
00:27:51,840 --> 00:27:56,480
it all at once. That's funny. I assumed it was bi-directional. So today I learned something

397
00:27:56,480 --> 00:28:00,480
new about the Cosmos SDK. I think that's how it works anyway, from memory. I mean,

398
00:28:01,120 --> 00:28:04,720
the more toxic thing is going up. So you would assume that that would be the way it was

399
00:28:04,720 --> 00:28:10,160
implemented. But I guess I just assumed it was, it was both, but that could, that could need some

400
00:28:10,160 --> 00:28:15,200
fact checking. I could need, I could need just a little bit of fact checking, but that's fine.

401
00:28:15,200 --> 00:28:24,640
Yeah. Anyway, so skip next week. That'll be good. Yeah. There's quite a few things. Actually,

402
00:28:24,640 --> 00:28:32,640
I think it's probably not so bad having them next week anyway, so we can make an appropriate

403
00:28:32,640 --> 00:28:37,360
episode name, give a little bit of advertising, do a little bit more research, because they're into,

404
00:28:38,000 --> 00:28:42,160
they're into quite a few things. And I'm wondering if they still have like, because

405
00:28:42,160 --> 00:28:50,400
they've been into Chain, Inc. I guess the Cosmos stack is their primary, you know, product now

406
00:28:50,400 --> 00:28:55,600
or objective. But I'm just wondering what happens also with all their other products that they have

407
00:28:56,320 --> 00:29:03,360
throughout the Cosmos, which they had been working on previously. So be good to get

408
00:29:03,360 --> 00:29:08,000
some more questions armed up around those types of projects and what that means for them.

409
00:29:08,000 --> 00:29:13,840
Presumably they'll continue on with it. I'm curious how the acquisition worked. Like,

410
00:29:13,840 --> 00:29:18,000
are they acquiring the entire team as an Aqua hire so that they can specifically work on the

411
00:29:18,000 --> 00:29:24,400
Cosmos SDK? Or what? I doubt they're going to talk about it, but I just find those things really

412
00:29:24,400 --> 00:29:30,720
interesting. Well, I noticed some emails are still skip emails and some are interchain, Inc. emails.

413
00:29:30,720 --> 00:29:36,240
So yeah, I don't know. Maybe they've got like a skip team within interchain, Inc. now, like maybe

414
00:29:36,240 --> 00:29:46,160
a division, the skip division. Who knows? We can ask. Speaking of Aqua hires, we also saw a

415
00:29:46,160 --> 00:29:58,400
longstanding validator. That was news. So friends has been, I want to say acquired by

416
00:29:58,400 --> 00:30:06,640
restake validator. I think I'd restake was big, big enough to acquire anybody ready.

417
00:30:07,600 --> 00:30:15,200
That was sort of a surprise. So I don't know that I've ever heard of the actual restake

418
00:30:15,760 --> 00:30:20,880
validator before. And looking at their list of networks that they support, maybe they're

419
00:30:20,880 --> 00:30:25,280
reasonably new to the Cosmos. Right. So it's like sweet and a handful of others, right?

420
00:30:25,280 --> 00:30:36,000
I think I saw some Solana. I'm not sure if I saw sweet and yeah, a grab bag of other

421
00:30:37,360 --> 00:30:46,720
Cosmos SDK networks. But I guess they're making that was their way of making an entry easier

422
00:30:46,720 --> 00:30:53,120
to the to the eco. Just have someone who's already got a few validators around. Yeah. And I see that

423
00:30:53,120 --> 00:31:00,640
that Yuri has actually, no shit. I saw that Yuri has actually joined their team as well from

424
00:31:00,640 --> 00:31:06,880
friends. So maybe like a merger type situation, not a hundred percent sure. Well, friends was

425
00:31:06,880 --> 00:31:12,320
trying to sell like a year ago. I remember reading their pitch deck for why they're selling.

426
00:31:13,440 --> 00:31:17,760
So I do imagine it was acquisition. I think they were trying to get out, right? Why would they

427
00:31:17,760 --> 00:31:23,840
have a deck if they weren't trying to sell? So I bet it's some sort of like golden handcuff

428
00:31:23,840 --> 00:31:27,840
type of thing where they want to maintain the connections for a year or two. And then the

429
00:31:27,840 --> 00:31:33,520
founder of friends will bounce once that's over. How did you happen to cross that? Was it like,

430
00:31:34,400 --> 00:31:42,800
like, did they did they contact you or? No, no. I don't remember. It was shared in like a ZIP group.

431
00:31:42,800 --> 00:31:49,120
In a what group? A business development group. Yeah. Yeah. Interesting.

432
00:31:52,480 --> 00:31:57,200
That was like, I'll buy that for a dollar. Yeah, I was just reading these comments. So

433
00:31:57,200 --> 00:32:02,960
Rama says that skip is interchaining now. Skip doesn't exist anymore. All the investors were

434
00:32:02,960 --> 00:32:11,120
paid out. Skip had skip now has 350 million dollars of interchain foundation funds.

435
00:32:11,120 --> 00:32:15,840
Well, I just kind of raises more questions for me. Like, how were they bought? Were they bought

436
00:32:15,840 --> 00:32:22,480
by the chain or they bought by the cosmos? I didn't vote on that, right? Like, what happened and how?

437
00:32:23,920 --> 00:32:32,160
Skip now has the 350. Does that mean the skip the skip investors got paid out? 350 million?

438
00:32:33,680 --> 00:32:38,320
Or that the new interchain ink is sitting on a treasury of 350 million?

439
00:32:38,320 --> 00:32:42,400
I mean, I guess no offense, but like skip wasn't it would have been if somebody was

440
00:32:43,200 --> 00:32:47,760
if somebody was paid out, it would have been at the the market rate of skip, which would have been

441
00:32:47,760 --> 00:32:52,160
a couple of mill dollars, right? Max, because it's just it's just knowledge and people, right?

442
00:32:53,040 --> 00:32:59,280
Yeah, sure. What I meant more was like, what what's the system for how that worked, right?

443
00:32:59,280 --> 00:33:03,280
Like it wasn't bought using the community funds, right? Right on the actual chain.

444
00:33:03,280 --> 00:33:09,120
Oh, I think I think Rama's answered you in the in the comments, which is that ICF is an independent

445
00:33:09,120 --> 00:33:19,840
organization. Okay, so skip was bought by the ICF. Okay. Yes, ICF is, I think, well, it was a it was

446
00:33:19,840 --> 00:33:25,600
a must. There must have been some money involved, but was also a merger because the original ICF

447
00:33:25,600 --> 00:33:32,080
is now named something different after the merger because it was in IO and now it's interchain ink.

448
00:33:32,080 --> 00:33:38,240
Well, it was interchain it was interchain GMBH because it was based in Germany, wasn't it?

449
00:33:38,240 --> 00:33:42,000
Okay. And now it's a I only know that because I had to reference the

450
00:33:42,000 --> 00:33:46,400
tendermint documentation repeatedly in one of my papers. And so I had to find out what

451
00:33:46,400 --> 00:33:51,440
who the who the who I was referencing what what company and it was, I'm pretty certain it was a

452
00:33:51,440 --> 00:33:56,400
GMBH company. Although that that's probably our date because that would have been last September

453
00:33:56,400 --> 00:34:02,720
when I wrote those references. But I'm damned if I'm going back and reformatting my Bibtex. Oh, no,

454
00:34:02,720 --> 00:34:10,800
no, no, that that file is done. Yeah, just because I can't last shit is is continually changing

455
00:34:10,800 --> 00:34:15,360
because this that and the other doesn't mean my references are going to get messed with that

456
00:34:15,360 --> 00:34:21,920
shit took ages. And they're done. So yeah, I definitely definitely remember the the pain of

457
00:34:21,920 --> 00:34:28,400
referencing the Harvard referencing. It's not it is less bad if you use latex. But

458
00:34:29,840 --> 00:34:36,080
but I didn't for my first draft, I just fucking bashed it out in one caffeinated psychopathic

459
00:34:36,800 --> 00:34:42,720
effort, 20,000 words or whatever in Google Docs and then had to refine it down to 10.

460
00:34:43,840 --> 00:34:49,920
And then reformatting latex, which was stupid. Just right. If okay, so here's right pro tip.

461
00:34:49,920 --> 00:34:55,520
Anybody listening to the podcast, you're going to do any kind of academic work, even undergraduate,

462
00:34:55,520 --> 00:35:03,440
to be perfectly honest, just just start by learning latex and and and just do it in latex

463
00:35:03,440 --> 00:35:08,720
editor. Just don't don't bother wasting your time because you can just get preformatted

464
00:35:10,320 --> 00:35:16,560
Bibtex files of every paper that's published in any kind of non Mickey Mouse journal or even ones

465
00:35:16,560 --> 00:35:24,160
that are independently uploaded to archive. You can just get a Bibtex reference and stick it in

466
00:35:24,160 --> 00:35:29,600
and move on with your life and overleaf is a good way to start. It's free. It's online. You can

467
00:35:29,600 --> 00:35:35,920
access it via your institution. Don't be like this guy and write the whole fucking paper and then

468
00:35:35,920 --> 00:35:41,040
have to refine it and then have to reformat it. It is demoralizing as fuck. Don't do that.

469
00:35:41,040 --> 00:35:46,560
Little D says just use chat GBT to convert to latex.

470
00:35:48,880 --> 00:35:51,440
That's a horrifying suggestion. Please don't do that.

471
00:35:54,800 --> 00:36:02,240
Yes. So on on the subject of chat, GBT, recent subscriber right here, two thumbs up

472
00:36:03,040 --> 00:36:08,720
and have also started using co pilot. And I don't know why I didn't jump on the train earlier.

473
00:36:08,720 --> 00:36:13,120
It's quite handy that shit. It's glorious. It makes everything well, not everything easier.

474
00:36:13,120 --> 00:36:18,560
I think that the real foot gun at this point is having the knowledge to know when things are wrong.

475
00:36:19,520 --> 00:36:26,640
Yeah, that is definitely, definitely a point because it is quite frequently will feed you

476
00:36:26,640 --> 00:36:32,000
some bullshit. But yeah, you know, very confident. I mean, that's the point, right?

477
00:36:32,000 --> 00:36:39,360
Yeah, but it's good for scaffolding. So and it's good for small changes. So, you know, say,

478
00:36:40,000 --> 00:36:47,840
for example, ginger to is quite confusing when you have a large ginger to template.

479
00:36:48,560 --> 00:36:57,280
And say you want to like change or add in like a say you have a really long template and it's

480
00:36:57,280 --> 00:37:01,760
it's got a bunch of loops in there to like bring things in depending on if they're defined and that

481
00:37:01,760 --> 00:37:07,440
type of stuff. And you want to add in like another check, you could just select it all and tell it

482
00:37:07,440 --> 00:37:13,200
to add in another check for this thing. And if you're like pretty precise with your prompt,

483
00:37:13,200 --> 00:37:19,360
it'll do it and do it well. If you're not precise with your prompt, it may do something else.

484
00:37:19,360 --> 00:37:26,560
I mean, it sounds like you just created something very bad, which maybe is the whole point of why

485
00:37:27,280 --> 00:37:32,160
it's fine because it's fine. What do you mean created something bad? Explain yourself.

486
00:37:32,720 --> 00:37:38,880
So you just described nested loops, I think, which, you know, generally pretty well,

487
00:37:39,520 --> 00:37:45,200
ginger is a templating language is not aware of where ginger is now. I used to work in Python.

488
00:37:45,200 --> 00:37:49,280
Yeah, but, you know, is there a different way to do it?

489
00:37:49,840 --> 00:37:54,960
Well, you can obviously abstract out some logic so that you don't have to do nested loops and you

490
00:37:54,960 --> 00:38:01,200
can also do things like list of comprehensions and intermediate functions. Like there are lots of

491
00:38:01,200 --> 00:38:09,920
other ways of breaking out abstractions of things that need computing or checking in kind of because

492
00:38:09,920 --> 00:38:14,240
a lot of what you would be doing is guard clauses. And actually, it sounds like you're

493
00:38:14,240 --> 00:38:18,800
doing unnecessary iteration. And that sounds like exactly the sort of thing that you can probably

494
00:38:18,800 --> 00:38:24,640
get chat GPD to come up with a solution for you. But it's going, it's back to Schultz's foot gun

495
00:38:24,640 --> 00:38:31,680
thing. In fact, it's exactly I am just reiterating at longer length and more confused because I have

496
00:38:32,240 --> 00:38:36,240
worked out a 10 hour day and then gone to a networking thing and then come on the podcast.

497
00:38:36,240 --> 00:38:40,560
And I have no words left. I am just copying Schultz's homework of what he already said,

498
00:38:40,560 --> 00:38:46,080
literally a minute ago. So I'll just say Schultz already said the thing about the foot gun and

499
00:38:46,080 --> 00:38:52,320
the wrong and the okay. So, uh, Cope, oh, it's great for doing dumb shit then if that's what

500
00:38:52,320 --> 00:38:58,160
you're into. I think it's just dependent on the environment you're in, I guess. Well, when you're

501
00:38:58,160 --> 00:39:04,480
templating in Ansible, you only have so many fucking options. And you know, these, I don't see a way

502
00:39:04,480 --> 00:39:09,440
around it. I'd love to have you take a look at it and you can tell me. I think Schultz had it.

503
00:39:09,440 --> 00:39:14,320
Schultz had a point just there before I interrupted him. Well, I was going to go off on a bit of a

504
00:39:14,320 --> 00:39:20,720
segue. So the nulls continue on this topic. I'm totally not doing it. Segue way out. Well, this

505
00:39:20,720 --> 00:39:28,080
is irrelevant to the podcast, but I'm still kind of connected to my, um, my alma mater and chat GPT.

506
00:39:28,800 --> 00:39:36,240
I think it's really damning for oncoming software engineers. Um, they won just the existence of

507
00:39:36,240 --> 00:39:42,080
it means that junior engineers kind of having a hard time getting jobs, but two, they don't know

508
00:39:42,080 --> 00:39:49,200
enough to know not to trust chat GPT and they can't kind of like intuit what's wrong with their answers,

509
00:39:49,200 --> 00:39:56,640
like chat GPT's answers. Um, and I think that that's a serious, um, serious problem that

510
00:39:56,640 --> 00:40:02,240
incoming software engineers have to deal with. Yeah. Fuck it. That's okay. Yeah. That's, I was

511
00:40:02,240 --> 00:40:08,480
literally having a variant of that conversation earlier with, um, because not with the university

512
00:40:08,480 --> 00:40:15,200
links, but I still do consulting and things in like trad tech stuff. And as somebody who's done

513
00:40:15,200 --> 00:40:19,760
a lot of hiring before, I guess, like, especially like former colleagues and whatnot, they've just

514
00:40:19,760 --> 00:40:24,320
gone on the traditional career and engineering career ladder while, you know, we were off being

515
00:40:24,320 --> 00:40:30,960
DGNs over here. Um, but I guess I still, I still just about can, can like resuscitate

516
00:40:30,960 --> 00:40:34,960
somebody else's opinion as my own to, to nod along with these conversations of people who have

517
00:40:34,960 --> 00:40:40,320
responsible real jobs in tech. Um, but that is like something that has come up a fair bit is that

518
00:40:40,320 --> 00:40:45,600
it's that, um, yeah, like that intuition, like you said, that you kind of, you just build up as

519
00:40:45,600 --> 00:40:51,760
like work it like, um, uh, what's the term for journeymen, you know, like when you had craft

520
00:40:51,760 --> 00:40:56,400
people in like olden times, you had like a novice apprentice and then you had a journeyman and

521
00:40:56,400 --> 00:41:01,520
they would literally journey between different master crafts people and like learn from them

522
00:41:01,520 --> 00:41:07,280
and build up their own intuition of how to create the outcome they were looking for, whether that

523
00:41:07,280 --> 00:41:12,960
was a chair or a desk or a horse drawn carriage or whatever. And it was only when they became a, and,

524
00:41:12,960 --> 00:41:19,840
and, and, you know, the, the idea of a master work, you know, it's sort of like, you cannot be

525
00:41:19,840 --> 00:41:24,160
a master crafts person until you come up with your masterwork, right? And it's not possible

526
00:41:24,160 --> 00:41:28,160
unless you go through all the pain of the iterative, iterative steps to build up the,

527
00:41:28,800 --> 00:41:32,480
the reasoning of how to practically do these things. Because there's obviously book learning and,

528
00:41:32,480 --> 00:41:37,280
and yada, yada, yada, but a lot of it is intuitive, especially in the past. And a lot of people have

529
00:41:37,280 --> 00:41:41,920
made the connection between software engineering or programming, you know, programming as it is

530
00:41:41,920 --> 00:41:49,040
outside of a big company, I suppose. And that kind of style of, of learning and progression. And

531
00:41:49,040 --> 00:41:55,040
certainly at least for me, that's the, the progression that I went on from junior to senior

532
00:41:55,040 --> 00:42:01,680
to whatever took that shape. And I saw it in people that I managed and mentored and whatever.

533
00:42:01,680 --> 00:42:05,760
And I think it's quite a good model. And, and, and actually, yeah, and that's the thing I kind of

534
00:42:05,760 --> 00:42:10,000
worry about, like, I suppose, with those sort of things, it's like similar to what you were

535
00:42:10,000 --> 00:42:15,200
saying, Shorsi, is that like, if you, if you don't build that intuition early, then you,

536
00:42:15,200 --> 00:42:20,160
you really don't have a foundation for much to build upon because you're always just building

537
00:42:21,200 --> 00:42:27,520
feedback loops for intuitive processes that are usually below your conscious brain. And then the

538
00:42:27,520 --> 00:42:33,120
bit that the conscious brain is doing is usually the feedback loops around, about learning and

539
00:42:33,120 --> 00:42:40,240
problem solving, which are like how you, how you gather enough information for your brain to then

540
00:42:40,240 --> 00:42:45,280
synthesize the solution. And that's quite a different problem space from the one that your

541
00:42:45,280 --> 00:42:52,720
subconscious is working on. And the subconscious one only gets fed by experience. And chat, chat

542
00:42:52,720 --> 00:42:58,240
gpt is basically short cutting that intuitive leap, it's short cutting that aha moment.

543
00:42:58,240 --> 00:43:05,600
Yeah, exactly. I think that coding book came through an interesting example of that where I

544
00:43:05,600 --> 00:43:11,200
know there's a lot of criticism coding boot camps, but some of the best engineers I've encountered

545
00:43:11,200 --> 00:43:19,840
came from them. And I think that a coding boot camp will be a particularly bad spot for AI usage,

546
00:43:20,320 --> 00:43:26,800
not to their fault, just that I've gone through them as like, kind of as an exercise to see what

547
00:43:26,800 --> 00:43:31,600
it looks like. And a lot of them, you know, they do kind of advanced topics fairly quickly, and

548
00:43:31,600 --> 00:43:37,600
they don't delve deep enough. And so it would be such an easy out to just be like, okay, well,

549
00:43:38,000 --> 00:43:47,200
I'm not seeing this, but how do I, I don't know, convert HTML using CSS to make this widget bigger

550
00:43:47,200 --> 00:43:53,040
as an example. Yeah, so like instead of instead of thinking harder on the on the thing, you just

551
00:43:53,040 --> 00:43:57,520
get something else to do it. Well, but also sometimes it might genuinely be beyond you at that

552
00:43:57,520 --> 00:44:05,440
point. So around the time I got my first job as a programmer, I mainly worked on front end stuff,

553
00:44:05,440 --> 00:44:10,960
and I did some Ruby on Rails stuff. But you know, Ruby on Rails is relatively straightforward

554
00:44:10,960 --> 00:44:14,640
within its own framework, like you can do a lot of back end stuff without having to know

555
00:44:15,520 --> 00:44:19,840
how it all fits together. And I kind of knew I had this like big gap in my knowledge, right? I had

556
00:44:19,840 --> 00:44:27,040
this very applied knowledge of like, decent HTML CSS JavaScript, okay, Ruby, okay. And then

557
00:44:27,040 --> 00:44:32,720
I did one of those, I did one of those, you know, CS 101. There wasn't the MIT course where it might

558
00:44:32,720 --> 00:44:39,600
have been like Udacity back in the day. I can't remember. And I remember doing like the basically

559
00:44:39,600 --> 00:44:42,960
you work through an assignment, the whole course was gradually worked through an assignment,

560
00:44:42,960 --> 00:44:49,840
where you essentially built a first a recreation of the original Google page rank algorithm.

561
00:44:49,840 --> 00:44:57,200
That was what I was working up to. And it was done in Python. Come full circle to what would I

562
00:44:57,200 --> 00:45:02,240
know about Python anyway. And I really, really distinctly remember like the thing that sticks

563
00:45:02,240 --> 00:45:07,520
with me about that process is all the failures, right? Because and what was really interesting

564
00:45:07,520 --> 00:45:11,520
about it is like you were saying shortly about when you get dumped into a topic area where it's

565
00:45:11,520 --> 00:45:17,040
it's actually the gap between where you are and where the topic area is is potentially too wide.

566
00:45:17,040 --> 00:45:23,280
I was working as a developer at that point. And I couldn't, there were some bits of that of that

567
00:45:23,280 --> 00:45:28,240
algorithm, especially more complicated parts, which I actually couldn't couldn't figure out.

568
00:45:28,240 --> 00:45:33,520
And if there had been chat GPT that I probably would have been able to get from a to b and solve it.

569
00:45:34,160 --> 00:45:39,360
But I wouldn't have had any understanding. And what ended up happening was some of the final I

570
00:45:39,360 --> 00:45:45,120
think I did get through it. And then I went on to the follow up and I literally got brickwalled by it.

571
00:45:45,120 --> 00:45:49,680
And I couldn't do the next iteration of it. So I think I finished the CS 101, but I didn't

572
00:45:49,680 --> 00:45:58,160
finish the 252, which was the follow up. And then many several years pass. And then I'm working on

573
00:45:58,160 --> 00:46:02,480
a problem, which is a graph problem when I work for a data consultancy. And I realized I was working

574
00:46:02,480 --> 00:46:08,000
on the problem that I had seen and failed at and never finished like several years before.

575
00:46:08,720 --> 00:46:13,040
And obviously, in that context, I actually kind of by that point did know what I was doing,

576
00:46:13,040 --> 00:46:17,200
solved it because it's part of my working day had to be done. And then just went back and looked it

577
00:46:17,200 --> 00:46:21,600
up out of curiosity and was like, fuck me, no wonder I couldn't figure this out at the time.

578
00:46:22,320 --> 00:46:27,760
But then had, you know, a very belated aha moment looking at it and going, oh, yeah, no,

579
00:46:27,760 --> 00:46:32,320
actually, no, but I see, I see where my reasoning was going with what I've tried to do here. And

580
00:46:32,320 --> 00:46:37,760
it was I was going completely the wrong direction. That's not how you solve this. Fine. But it's that,

581
00:46:37,760 --> 00:46:44,000
you know, sometimes, sometimes learning something can be in the post for a very long time. And

582
00:46:44,000 --> 00:46:49,280
maybe this is just me. I'm a very slow learner. So this is like very difficult of like, I don't

583
00:46:49,280 --> 00:46:55,600
understand something. And then like years later, like fucking cosmos pre commits, man, that just

584
00:46:57,600 --> 00:47:02,080
for the longest time, like, well, I was actually working on Juno Core just and then like years

585
00:47:02,080 --> 00:47:06,720
later, you just like, oh, yeah, okay, mem pools. Everybody keeps talking about mem pools. And it's

586
00:47:06,720 --> 00:47:10,720
not when you it's not until a long time later when you're like, but what are the essential

587
00:47:10,720 --> 00:47:15,520
components of building a blockchain? And you're like, you build a blockchain in your head from

588
00:47:15,520 --> 00:47:19,920
first principles, and you always end up with a mem pool. And you're like, you know, there's a lot

589
00:47:19,920 --> 00:47:25,120
of things in life like that is what I'm saying. And if you can shortcut the, the reasoning required

590
00:47:25,120 --> 00:47:29,120
to understand why you need a mem pool, you end up building a blockchain without a mem pool and

591
00:47:29,120 --> 00:47:34,080
just be like, oh, fuck, we need a mem pool. Like, I don't know, that's probably a bad example.

592
00:47:34,080 --> 00:47:40,720
Well, I get it though. It's like, you need to have that difficulty in order to overcome it.

593
00:47:41,280 --> 00:47:45,040
And not being able to let things simmer because you get an instant

594
00:47:45,040 --> 00:47:49,840
gratification answer is not doing yourself like you're doing yourself a disservice,

595
00:47:49,840 --> 00:47:55,120
to a certain extent, like at this point, like, no, I'm not criticizing you directly in any way,

596
00:47:55,120 --> 00:47:57,520
shape or form. I'm not saying that you shouldn't be using chat tbt.

597
00:47:57,520 --> 00:48:02,080
This is like 25 minutes. This has been purely criticizing enough the last 25 minutes.

598
00:48:02,080 --> 00:48:07,440
Yeah, exactly. All for all for using chat for co-pilot and chat tbt.

599
00:48:08,480 --> 00:48:12,240
Now, for us, for us running a business and we need to use as like a periphery of what we're

600
00:48:12,240 --> 00:48:17,920
actually doing, like, who cares? Right? Like, I'm like, we it's solving something.

601
00:48:17,920 --> 00:48:24,000
The work that works. Exactly. Yeah. But for someone that's still building up their core

602
00:48:24,000 --> 00:48:29,840
strengths in order to create their career, that's where I think it's it can be a damning tool.

603
00:48:29,840 --> 00:48:33,600
Yeah, I mean, I'm not trying to make a career in fucking programming, but

604
00:48:34,320 --> 00:48:40,000
I mean, I make a career in degeneracy, baby. Yeah, it suits our purpose. Even if it's doing

605
00:48:40,000 --> 00:48:44,960
the wrong thing, even if I'm doing the wrong thing, it works perfectly for what I need it for.

606
00:48:44,960 --> 00:48:52,320
So, you know, I don't have the benefit of being a programmer for the last fucking 20 years. So,

607
00:48:53,040 --> 00:48:56,960
if I do things a little wrong, fuck it. I like it because it works.

608
00:48:56,960 --> 00:49:02,640
But I use it as well. I have subscribed to it for like the last, I don't know, 12 months, 18

609
00:49:02,640 --> 00:49:07,600
months. I use it mostly for like APIs. I don't like researching API. I'll just be like, Hey,

610
00:49:07,600 --> 00:49:11,440
how do I send this over here? And then it'll be like, boom, I'll be like, cool.

611
00:49:12,320 --> 00:49:18,640
I find it most useful for other people's API for shit documentation. God damn.

612
00:49:18,640 --> 00:49:26,720
I find it most useful for like brainstorming ideas on how to solve a problem anyway. I use it a bit

613
00:49:26,720 --> 00:49:33,680
in VS code for helping me just quickly change shit. But in like, you know, if I got like a more

614
00:49:33,680 --> 00:49:38,880
complex problem with what I'm trying to do, I'll just talk to it for like an hour and say, you

615
00:49:38,880 --> 00:49:44,560
know, start off with my issue and then explore with it the options it thinks is the way to do

616
00:49:44,560 --> 00:49:51,600
things and then maybe come up with a scaffold of how I want to attack that problem and then start

617
00:49:51,600 --> 00:49:56,800
trying to attack it. But I find it quite handy for that type of stuff. Not so much co-pilot,

618
00:49:56,800 --> 00:50:01,040
but definitely chat GPT. Yeah. So I mean,

619
00:50:01,040 --> 00:50:02,800
So you basically pair programming with it?

620
00:50:03,680 --> 00:50:08,480
Yeah, because, you know, I'm not a, I don't have the benefit of years of programming and I'm

621
00:50:08,480 --> 00:50:15,680
just building. So it's quite handy for that. Thinking out a problem, I guess, thinking.

622
00:50:15,680 --> 00:50:22,160
I've got a, out of pure curiosity, this will take longer, but put a little,

623
00:50:23,040 --> 00:50:26,880
put a little mascot or a duck or something on your desk.

624
00:50:26,880 --> 00:50:29,840
And ask the duck. I knew that's where that was coming. I was going to say,

625
00:50:29,840 --> 00:50:32,400
this sounds just like rubber ducky debugging the game.

626
00:50:32,400 --> 00:50:35,920
It would take longer, but see whether you get to the same solution

627
00:50:36,560 --> 00:50:39,600
and how that, whether there's a difference in satisfaction.

628
00:50:41,600 --> 00:50:45,120
I really can't talk today. Satisfaction. I'd be really, really interested because like,

629
00:50:45,120 --> 00:50:51,520
I've got literally got on my desk here, I talked to Totoro and in Totoro's little bag,

630
00:50:51,520 --> 00:50:56,640
I also have the Buddha in case Totoro and cutting it. And you need to,

631
00:50:56,640 --> 00:51:02,640
you need to appeal to a higher, a higher authority. You ask him, you ask the Buddha,

632
00:51:02,640 --> 00:51:06,320
and if you need the highest authority of all, you got president business,

633
00:51:06,320 --> 00:51:09,600
you got president business in case you really need with a little light.

634
00:51:10,160 --> 00:51:11,280
This is what my Tanooki's for.

635
00:51:11,280 --> 00:51:18,720
Exactly. You're just like, president business, could you help me? I can't solve this thing.

636
00:51:18,720 --> 00:51:21,920
Okay. So what is asking the thing going to get for me? Explain.

637
00:51:21,920 --> 00:51:23,920
Oh, right. So the point is you're always,

638
00:51:25,200 --> 00:51:29,280
the solution is always going to come from your hind brain, right? It's going to come from an

639
00:51:29,280 --> 00:51:35,760
intuitive leap. So what you're always trying to do is feed data to your brain to synthesize the

640
00:51:35,760 --> 00:51:43,120
problem and then make the intuitive leap to solve it. So by ideating out loud, you iterate towards

641
00:51:43,120 --> 00:51:48,480
a solution even in the absence of somebody talking back to you. So my thesis here, right,

642
00:51:48,480 --> 00:51:55,440
is that chat GPT is useful, but the majority of the usefulness is your own brain chewing the problem.

643
00:51:55,440 --> 00:51:59,840
And I'm just, I'm just naively curious, I suppose, whether you could get the same result

644
00:51:59,840 --> 00:52:06,080
from describing your problem out loud to an inanimate object and letting your subconscious

645
00:52:06,080 --> 00:52:12,640
figure it out. Because that's what junior developers were taught to do when, when I think

646
00:52:12,640 --> 00:52:19,600
in some instances, yes, and other instances, no, because I don't necessarily have all of the inputs

647
00:52:19,600 --> 00:52:26,640
required to be able to make the intuitive leap. For example, like there might be a technology

648
00:52:26,640 --> 00:52:33,520
or a software that I'm just not aware of and wouldn't be able to arrive at on my own, a method

649
00:52:33,520 --> 00:52:38,800
even that's employed by a particular software or package or something that I don't know about.

650
00:52:40,160 --> 00:52:46,720
I might need to do something, but not think that it's possible with what is already sloshing around

651
00:52:46,720 --> 00:52:53,440
just because I don't have the breadth of knowledge already to arrive at that. But if it's just a logic

652
00:52:53,440 --> 00:53:00,240
problem or something like that within a program, probably, yeah, I would assume that type of stuff

653
00:53:00,240 --> 00:53:05,840
I'd probably just think on anyway, while I'm like taking a shit. So I'd ask the wall, I'd ask the

654
00:53:05,840 --> 00:53:06,960
Dunny.

655
00:53:06,960 --> 00:53:08,320
Always ask the Dunny if you're stuck.

656
00:53:10,240 --> 00:53:15,200
Yes, shits quite often take an hour and a half instead of 10 minutes just because I'm staring

657
00:53:15,200 --> 00:53:17,040
at the corner of the shitter thinking.

658
00:53:17,040 --> 00:53:24,640
And we too could have this problem if you decide to take the exciting career choice of being a

659
00:53:24,640 --> 00:53:48,240
validator.

