1
00:00:00,000 --> 00:00:04,100
Volume lowers the way people put
together the delivery processes 

2
00:00:04,100 --> 00:00:07,700
by guts and Instinct. 
So, how do you go up from there?

3
00:00:07,700 --> 00:00:10,400
I think the next step up from 
there is the East the data that 

4
00:00:10,400 --> 00:00:13,500
comes out of the system to help 
you make the right decisions. 

5
00:00:14,000 --> 00:00:16,800
When I say data-driven networks.
I mean, like don't need eye on 

6
00:00:16,800 --> 00:00:20,200
this Human Experience and let 
the system tell you we should be

7
00:00:20,200 --> 00:00:22,200
able to find out any information
from data. 

8
00:00:26,800 --> 00:00:30,100
Hey everyone. 
My name is Henry Surya be Robin.

9
00:00:31,700 --> 00:00:35,500
And you're listening to the 
tekhelet Juno, the show will be 

10
00:00:35,500 --> 00:00:38,900
bringing you the greatest 
technical leaders practitioners 

11
00:00:39,100 --> 00:00:42,400
and thought leaders in the 
industry to discuss about their 

12
00:00:42,400 --> 00:00:47,200
Journey ideas and practices that
we all can learn and apply to 

13
00:00:47,200 --> 00:00:50,200
build a highly performing 
technical team and to make an 

14
00:00:50,200 --> 00:00:54,900
impact in your personal work. 
So let's dive into our Journal. 

15
00:01:00,000 --> 00:01:02,500
Hello, everyone. 
This Is Henry story of your oven

16
00:01:02,800 --> 00:01:05,500
and back here again with a new 
episode of the tech lead, you 

17
00:01:05,500 --> 00:01:09,100
know, podcast, thanks for tuning
in and spending your time with 

18
00:01:09,100 --> 00:01:11,300
me today, listening to this 
episode. 

19
00:01:11,700 --> 00:01:14,800
If you haven't, please subscribe
to the tekhelet journal on your 

20
00:01:14,800 --> 00:01:17,500
favorite podcast apps and also 
follow technology. 

21
00:01:17,500 --> 00:01:21,200
No social media channels on 
LinkedIn, Twitter and Instagram.

22
00:01:21,700 --> 00:01:24,300
And if you'd like to make some 
contribution to the show and 

23
00:01:24,300 --> 00:01:27,500
support the creation of this 
podcast, Please Subscribe as a 

24
00:01:27,500 --> 00:01:30,700
patron at technology, no dot f 
/, Patron. 

25
00:01:31,300 --> 00:01:35,000
And help me towards producing 
great content every week for 

26
00:01:35,000 --> 00:01:37,900
today's episode. 
I am very happy to share my 

27
00:01:37,900 --> 00:01:40,500
conversation with Kazuki 
kawaguchi. 

28
00:01:41,100 --> 00:01:44,500
Many of you would have heard his
name before, as he is widely 

29
00:01:44,500 --> 00:01:48,300
known as the creator of the 
famous Jenkin CI, the most 

30
00:01:48,300 --> 00:01:52,500
popular, see ICD tool used by 
millions of developers, and I 

31
00:01:52,508 --> 00:01:55,800
guess it's still the leading 
cic, D2 by a mile. 

32
00:01:56,500 --> 00:01:59,900
I personally have always wanted 
to have a chance to speak and 

33
00:01:59,900 --> 00:02:03,200
interact with Kazuki. 
As Jenkins has always been one 

34
00:02:03,200 --> 00:02:06,200
of my favorite developer tools 
since a long time ago. 

35
00:02:06,200 --> 00:02:10,900
When I started my career after 
his stint at cloudbees, Kazuki 

36
00:02:10,900 --> 00:02:15,100
is currently the co CEO and 
co-founder of Lunchable a test 

37
00:02:15,100 --> 00:02:18,600
recommendation engine that uses 
machine learning to speed up CI 

38
00:02:18,600 --> 00:02:22,500
pipelines by selecting the right
tests to run at the right stage 

39
00:02:22,500 --> 00:02:26,900
of your development workflow. 
In this episode kisuke, shared 

40
00:02:26,900 --> 00:02:30,900
about data driven, devops how to
improve developers productivity.

41
00:02:31,300 --> 00:02:35,100
The future of software testing 
and why he created lunchable to 

42
00:02:35,100 --> 00:02:37,600
help us move closer to achieve 
those things. 

43
00:02:38,400 --> 00:02:41,800
In the beginning of the episode.
You can hear from Kazuki, his 

44
00:02:41,800 --> 00:02:44,800
story on how he created Hudson 
during his time. 

45
00:02:44,800 --> 00:02:48,300
At Sun Microsystems to solve his
own problem of frequently 

46
00:02:48,300 --> 00:02:50,800
breaking the build. 
I mean, who never breaks the 

47
00:02:50,800 --> 00:02:54,800
build right, which eventually 
led to become Jenkins and the 

48
00:02:54,800 --> 00:02:56,900
rest. 
Many of us know, is history. 

49
00:02:57,700 --> 00:03:01,400
It was really a fun and great 
conversation with Kazuki and I 

50
00:03:01,400 --> 00:03:04,500
hope that many of you could also
benefit from this episode. 

51
00:03:04,600 --> 00:03:07,700
If you liked it, leave this 
episode of writing a review or 

52
00:03:07,700 --> 00:03:11,600
comment on your podcast app or 
social media channels those 

53
00:03:11,600 --> 00:03:14,500
reviews and comments are one of 
the best ways to help me get 

54
00:03:14,500 --> 00:03:18,100
this podcasts to reach more 
listeners and hopefully they can

55
00:03:18,100 --> 00:03:20,700
also benefit from the contents 
in this podcast. 

56
00:03:21,100 --> 00:03:24,200
So let's get this episode 
started right after our sponsor 

57
00:03:24,200 --> 00:03:26,400
message. 
Are you looking for a new cool 

58
00:03:26,400 --> 00:03:28,100
swag? 
Tackle, it Journal. 

59
00:03:28,100 --> 00:03:31,100
Now, offers you some swags that 
you can purchase online. 

60
00:03:31,200 --> 00:03:35,100
And these wax are printed on 
demand based on your preference 

61
00:03:35,300 --> 00:03:38,300
and will be delivered safely to 
you all over the world where 

62
00:03:38,300 --> 00:03:41,300
shipping is available. 
Check out all the cool swag is 

63
00:03:41,308 --> 00:03:43,200
available by visiting 
technology. 

64
00:03:43,200 --> 00:03:46,600
No, dot f / shop, and don't 
forget to break yourself. 

65
00:03:46,700 --> 00:03:48,800
Once you receive any of those 
tracks. 

66
00:03:53,500 --> 00:03:55,800
Hey everyone, welcome back to 
another new episode of the 

67
00:03:55,800 --> 00:03:58,100
package, you know, podcast today
is guess. 

68
00:03:58,100 --> 00:04:00,000
I'm so excited. 
I'm sure. 

69
00:04:00,000 --> 00:04:02,500
Most of you would have been 
familiar with his name. 

70
00:04:02,700 --> 00:04:05,500
He is actually kosuke. 
Kawaguchi, one of the most 

71
00:04:05,500 --> 00:04:07,400
popular figure in the tech 
industry. 

72
00:04:07,400 --> 00:04:11,500
I would say, if you ever use the
CI server, which is Jenkins. 

73
00:04:11,600 --> 00:04:13,100
I'm sure, you know course. 
Okay. 

74
00:04:13,300 --> 00:04:16,700
He is the creator of it when he 
was working with son, used to be

75
00:04:16,700 --> 00:04:20,300
called Hudson, and then, because
of a few reasons, then it became

76
00:04:20,300 --> 00:04:22,400
Jenkins as a fork of Open 
Source. 

77
00:04:22,900 --> 00:04:27,000
And then kosuke fronted a became
one of the most popular if still

78
00:04:27,000 --> 00:04:30,200
not the most popular CI server 
available in the market today, 

79
00:04:30,500 --> 00:04:35,200
Kazuki also used to be the CTO 
of cloudbees company that runs 

80
00:04:35,200 --> 00:04:39,000
behind the Jenkins that is 
supported for the Enterprise and

81
00:04:39,000 --> 00:04:43,000
also won a few Awards oreilly 
open source, Ward javaone, rocks

82
00:04:43,000 --> 00:04:45,800
toward Rakuten award, and things
like that. 

83
00:04:45,800 --> 00:04:49,200
So he's very famous in this time
because we case actually 

84
00:04:49,200 --> 00:04:51,800
launching his new company and 
product, which is called 

85
00:04:51,800 --> 00:04:54,100
Lunchable. 
I'm sure we'll be talking a lot 

86
00:04:54,100 --> 00:04:56,900
about it later on so cozy. 
Okay, welcome to the show. 

87
00:04:57,100 --> 00:05:01,000
It's great to have you here. 
Thank you very much perfectly. 

88
00:05:01,000 --> 00:05:02,800
Give you more credit than I 
deserve. 

89
00:05:03,100 --> 00:05:05,200
Thank you for that. 
Yeah, actually you are one of 

90
00:05:05,200 --> 00:05:08,700
the person that I would like to 
have a chat because few years 

91
00:05:08,700 --> 00:05:10,500
ago. 
This could be even decades ago, 

92
00:05:10,500 --> 00:05:12,400
right? 
I was so stunned by the Jenkins 

93
00:05:12,400 --> 00:05:14,800
CI server. 
So, I was always wondering why 

94
00:05:14,800 --> 00:05:16,500
this person is creating this 
project. 

95
00:05:16,500 --> 00:05:19,200
It's so cool, and it's free. 
So, during that time when I 

96
00:05:19,200 --> 00:05:21,400
started my career, it was 
really, really cool. 

97
00:05:21,400 --> 00:05:25,000
So really happy to have Of you 
here in the show ring to so 

98
00:05:25,000 --> 00:05:28,300
Kazuki maybe before we start we 
would like to hear more from you

99
00:05:28,300 --> 00:05:30,800
about your career Journey. 
So, of course, there are so many

100
00:05:30,800 --> 00:05:34,200
highlights, but maybe in short, 
if you are able to maybe 

101
00:05:34,200 --> 00:05:38,000
summarize your career Journey so
far, what are the turning points

102
00:05:38,000 --> 00:05:39,600
and maybe major highlights for 
you? 

103
00:05:39,600 --> 00:05:42,600
Personally. 
Yeah, so I grew up in Tokyo. 

104
00:05:43,500 --> 00:05:45,300
That's where I picked up 
programming. 

105
00:05:45,300 --> 00:05:48,800
And then in high school. 
I started selling software made 

106
00:05:48,800 --> 00:05:51,300
the operation did with the, 
you're in the college. 

107
00:05:51,400 --> 00:05:52,900
And then after I graduated, You 
ate it. 

108
00:05:52,900 --> 00:05:57,100
I think all involved in this 
schema language for XML is the 

109
00:05:57,100 --> 00:05:59,200
picture that I want people to 
have in the head. 

110
00:05:59,200 --> 00:06:01,200
It's like it's almost like a 
Star Wars movie. 

111
00:06:01,400 --> 00:06:03,600
So there's like a standard body 
called that we see. 

112
00:06:03,600 --> 00:06:05,900
See, it's like they're building 
a death star. 

113
00:06:06,000 --> 00:06:09,500
So there are the Imperial force.
All the vendors that you for the

114
00:06:09,700 --> 00:06:13,300
energy, small bunch of idiots 
that coming together. 

115
00:06:13,500 --> 00:06:17,300
They have different ideas of how
to define skin language for XML.

116
00:06:17,600 --> 00:06:20,300
So they are like a rebel forces 
and I kind of got the clue to 

117
00:06:20,300 --> 00:06:22,300
the into the river for side. 
I understand. 

118
00:06:22,500 --> 00:06:25,200
Working on it and it because of 
that deviation. 

119
00:06:25,200 --> 00:06:29,100
I landed in California to work 
for some Microsystems. 

120
00:06:29,500 --> 00:06:31,400
Okay? 
Thing XML stuff a little bit 

121
00:06:31,600 --> 00:06:34,500
eventually, the role of, I mean,
that's how it always work, 

122
00:06:34,500 --> 00:06:36,400
right? 
The Empire wins. 

123
00:06:36,700 --> 00:06:40,100
And then I started working more 
on the Java Enterprise editions.

124
00:06:40,100 --> 00:06:42,900
And that's when I started 
working on this software, you 

125
00:06:42,900 --> 00:06:46,400
mention that they didn T become 
Jenkins, but the sound of the 

126
00:06:46,400 --> 00:06:49,300
company kept going down, their 
business, wasn't doing very 

127
00:06:49,300 --> 00:06:51,900
well. 
So I think it was nine or ten 

128
00:06:51,900 --> 00:06:54,300
years. 
It got acquired by Oracle site 

129
00:06:54,300 --> 00:06:56,100
experience, three months of 
Oracle. 

130
00:06:56,100 --> 00:06:59,400
And then I left by then hot 
summers really doing pretty 

131
00:06:59,400 --> 00:07:00,600
well. 
So I thought okay. 

132
00:07:00,600 --> 00:07:02,000
Let's see. 
What I can do. 

133
00:07:02,000 --> 00:07:06,200
Is it so I could accompany 
became proud of these are we 

134
00:07:06,207 --> 00:07:10,000
have a lot of fun and that 
lasted until 2010. 

135
00:07:10,200 --> 00:07:12,900
That's where I had an 
opportunity to learn as a CTO 

136
00:07:12,900 --> 00:07:15,300
and it was really my first 
experience of startup. 

137
00:07:15,400 --> 00:07:21,300
That was a lot of fun and then I
guess 2019 so shortly before the

138
00:07:21,300 --> 00:07:25,400
hole underneath Happened. 
Thanks ton of the company and 

139
00:07:25,400 --> 00:07:28,800
then that's where I'm working. 
Day-in day-out, probably still 

140
00:07:28,800 --> 00:07:31,300
office in California. 
Thanks for sharing. 

141
00:07:31,300 --> 00:07:34,400
That it's pretty interesting 
that the way you working 

142
00:07:34,400 --> 00:07:38,300
initially on schema language. 
So tell us more like how did you

143
00:07:38,300 --> 00:07:41,500
end up working with Hudson 
during that time initially was 

144
00:07:41,500 --> 00:07:44,200
called Hudson? 
Because see, I was, I think, 

145
00:07:44,200 --> 00:07:46,100
probably still in the early 
stage. 

146
00:07:46,200 --> 00:07:49,700
I think there was probably one 
other CI server available, which

147
00:07:49,700 --> 00:07:52,300
is called cruise control. 
What was the intention behind? 

148
00:07:52,400 --> 00:07:56,000
Behind Hudson. 
So around that time some was a 

149
00:07:56,000 --> 00:07:58,000
big company and in your big 
company. 

150
00:07:58,000 --> 00:08:01,500
People don't seem to be working 
as hard as let's say. 

151
00:08:01,500 --> 00:08:05,000
They are in small companies. 
So they show up to the office. 

152
00:08:05,000 --> 00:08:08,700
I don't know 9:10 a.m. 
And then like by 6:00 p.m. 

153
00:08:08,700 --> 00:08:10,700
The office is completely 
deserted. 

154
00:08:10,800 --> 00:08:13,900
So, that was Unthinkable from 
where I originally came from 

155
00:08:14,100 --> 00:08:16,300
another world. 
I have a lot of time and then I 

156
00:08:16,300 --> 00:08:20,100
did enjoyed writing programs. 
So it's like I have a lot of 

157
00:08:20,100 --> 00:08:22,300
Open Source projects going on at
that time. 

158
00:08:22,700 --> 00:08:23,900
Hundreds of them. 
Probably. 

159
00:08:24,100 --> 00:08:26,900
In fact, I have this Vlog series
called projects that they in an 

160
00:08:26,900 --> 00:08:29,800
often created a koala little 
Library here and there day and a

161
00:08:29,808 --> 00:08:33,000
possibility, but there are a few
other motivations. 

162
00:08:33,500 --> 00:08:36,200
So one was that I mentioned that
I was working for Java 

163
00:08:36,200 --> 00:08:39,400
Enterprise Edition group. 
That's a middleware that 

164
00:08:39,400 --> 00:08:42,100
someone's creating. 
It's a standard so that the 

165
00:08:42,100 --> 00:08:44,500
other people can build 
application on top of it. 

166
00:08:44,600 --> 00:08:47,400
It's a platform, right? 
And then realize that one day I 

167
00:08:47,408 --> 00:08:49,500
looked around and nobody. 
Well. 

168
00:08:49,500 --> 00:08:52,400
Nobody might be too strong a 
statement, but the most of the 

169
00:08:52,600 --> 00:08:56,000
He are working on producing that
platform was not actually using 

170
00:08:56,000 --> 00:08:59,600
that phone to do anything. 
So not seem like to go against 

171
00:08:59,600 --> 00:09:02,900
the second including principal. 
So I feel like, okay, I gotta 

172
00:09:02,900 --> 00:09:06,300
write some after these use a 
stack that our team produces to 

173
00:09:06,308 --> 00:09:09,900
see if it's any good back, then,
my day job, as XML and I was an 

174
00:09:09,900 --> 00:09:12,200
engineering. 
This factor for people so team. 

175
00:09:12,500 --> 00:09:16,200
I used to be known as a guy who 
breaks deals because I help you 

176
00:09:16,200 --> 00:09:18,000
commit some changes here and 
there. 

177
00:09:18,000 --> 00:09:20,700
And then the next time somebody 
updates their workspace. 

178
00:09:20,700 --> 00:09:24,300
I things don't even compile. 
So they did a little digging and

179
00:09:24,300 --> 00:09:27,500
pick up a phone and call me. 
Hey, they attach this file last 

180
00:09:27,500 --> 00:09:30,000
time and it doesn't seem to 
compile so I can you check 

181
00:09:30,000 --> 00:09:32,300
what's going on and sure enough?
Like my change wasn't fully 

182
00:09:32,300 --> 00:09:34,500
complete. 
So that was embarrassing. 

183
00:09:34,700 --> 00:09:36,200
At some point. 
I got to fix that. 

184
00:09:36,200 --> 00:09:39,600
So I thought, okay, let's write 
some program that do that. 

185
00:09:39,700 --> 00:09:43,300
So that it catches my mistake 
before my colleagues and then it

186
00:09:43,300 --> 00:09:47,300
just so happens that there was 
this CI software written in in 

187
00:09:47,300 --> 00:09:51,200
Ruby or maybe title, but and I 
really like the way it looks 

188
00:09:51,200 --> 00:09:53,600
like started using it. 
But Just didn't scale. 

189
00:09:53,600 --> 00:09:55,900
So the moment I started putting 
a little bit more curl. 

190
00:09:55,900 --> 00:09:58,500
It's a big crime was, I thought,
okay, it, maybe I can write 

191
00:09:58,500 --> 00:10:00,400
this. 
So that's kind of how it 

192
00:10:00,400 --> 00:10:01,900
started. 
Wow. 

193
00:10:01,900 --> 00:10:04,900
It's really interesting because 
it started as a personal project

194
00:10:04,900 --> 00:10:07,800
to help you to avoid 
embarrassment of pregnancy. 

195
00:10:10,000 --> 00:10:12,000
And actually the concept of CI 
is Elvis. 

196
00:10:12,000 --> 00:10:15,000
Yeah, to actually detect that 
early so that the people either 

197
00:10:15,000 --> 00:10:17,800
can refer to or fix the bill so 
to speak. 

198
00:10:18,000 --> 00:10:22,100
So then once it becomes Jenkins,
what was your contribution in 

199
00:10:22,100 --> 00:10:23,900
order? 
To make it such a successful 

200
00:10:23,900 --> 00:10:26,400
project. 
So why people are picking it up,

201
00:10:26,400 --> 00:10:28,200
massively? 
Sure. 

202
00:10:28,200 --> 00:10:32,400
So in the beginning like I was 
the only user and that went on 

203
00:10:32,400 --> 00:10:35,900
for like I think almost two 
years I was using it in my team.

204
00:10:35,900 --> 00:10:38,500
And by the way that I discovered
that I wasn't the only guy who's

205
00:10:38,500 --> 00:10:41,200
breaking deals all the time and 
everybody else in the team. 

206
00:10:41,200 --> 00:10:42,700
Did. 
I just need to even notice 

207
00:10:42,700 --> 00:10:45,100
those? 
So that was useful or they kept 

208
00:10:45,100 --> 00:10:47,600
giving me this feedbacks. 
Maybe you can do this and that 

209
00:10:47,600 --> 00:10:49,200
and that was really encouraging 
for me. 

210
00:10:49,300 --> 00:10:52,200
So that kept me going by then. 
I knew he liked. 

211
00:10:52,600 --> 00:10:57,300
This theory about what makes 
this thriving, open source 

212
00:10:57,300 --> 00:10:59,500
project. 
Then in my mind, that is the 

213
00:10:59,600 --> 00:11:03,900
kind of guy the people's way. 
So, in other words, often people

214
00:11:03,900 --> 00:11:07,400
who want to participate in open 
source project has clear idea of

215
00:11:07,400 --> 00:11:10,100
what they want to do, like in 
the direction in which they want

216
00:11:10,100 --> 00:11:12,800
to take this project. 
That's really painful, is the 

217
00:11:12,800 --> 00:11:14,800
comments of the people, 
especially the existing 

218
00:11:14,800 --> 00:11:18,100
contributors in the project so 
that they buy into the idea, 

219
00:11:18,100 --> 00:11:21,100
especially the bigger candy. 
So I'm proving changes as a 

220
00:11:21,100 --> 00:11:23,600
general rule of thumb devil. 
A person more interesting, just 

221
00:11:23,600 --> 00:11:26,300
doing things and convincing 
other people that do in the 

222
00:11:26,300 --> 00:11:29,700
season, I think so. 
I thought if he can create this 

223
00:11:29,800 --> 00:11:33,200
massacre technical architecture 
that enables people to 

224
00:11:33,200 --> 00:11:37,800
experiment on their own and then
build things on top of Jenkins, 

225
00:11:38,100 --> 00:11:41,500
collectively as a whole, it 
still looks like changings and 

226
00:11:41,500 --> 00:11:45,100
then if we deal the supporting 
social structures so that the 

227
00:11:45,100 --> 00:11:48,400
people incentivised to bring 
those pieces together into one 

228
00:11:48,400 --> 00:11:51,900
place and kind of collaborate in
some limited degree, so they 

229
00:11:51,900 --> 00:11:55,000
still get the They still get 
back to the Kings when it comes 

230
00:11:55,000 --> 00:11:57,700
to their plugins, collectively 
that we need to move to 

231
00:11:57,700 --> 00:12:00,700
something Direction. 
So I implemented that and it has

232
00:12:00,700 --> 00:12:04,200
the technical Parts activation. 
But also has the social part 

233
00:12:04,400 --> 00:12:08,600
that means maybe that got the 
key contributions and then we 

234
00:12:08,600 --> 00:12:10,500
also the people started writing 
those. 

235
00:12:10,800 --> 00:12:12,600
I also no longer writing a CI 
system. 

236
00:12:12,600 --> 00:12:15,100
I was writing a platform that 
allows other people to write the

237
00:12:15,100 --> 00:12:17,700
Cs systems. 
So that's how I can agree. 

238
00:12:18,400 --> 00:12:22,700
So, in terms of the current 
devops eicd landscape, What's 

239
00:12:22,700 --> 00:12:25,100
your view on this? 
Actually your personal view 

240
00:12:25,100 --> 00:12:27,700
because it has grown so much 
since that date. 

241
00:12:28,000 --> 00:12:32,100
There are so many CIA or cic D, 
tools available these days some 

242
00:12:32,100 --> 00:12:34,000
are popular, some of like open 
source. 

243
00:12:34,000 --> 00:12:36,300
I'm a commercial. 
So what's your view on the 

244
00:12:36,300 --> 00:12:38,400
current see? 
ICD that whoops, landscape? 

245
00:12:38,800 --> 00:12:41,300
Yeah. 
So one thing that I find 

246
00:12:41,300 --> 00:12:45,100
interesting was, when I 
originally did the Incans, what 

247
00:12:45,100 --> 00:12:49,200
key role that we function as a 
place for the collective trees. 

248
00:12:49,500 --> 00:12:52,900
So, in other words, like it was 
used as a means for People in 

249
00:12:52,900 --> 00:12:56,300
the team, the be on the same 
page about the state of things, 

250
00:12:56,500 --> 00:13:01,200
the distance successfully land 
is this trespassing or fading. 

251
00:13:01,500 --> 00:13:04,900
Now that the think I mean, it 
isn't 20 years 21 talking about 

252
00:13:04,900 --> 00:13:07,500
these things you like crazy, but
back then like these things 

253
00:13:07,500 --> 00:13:10,000
involved a phone calls and 
emails and stuff. 

254
00:13:10,100 --> 00:13:12,300
That's often. 
There's the time delays and 

255
00:13:12,300 --> 00:13:14,700
stuff like that that made it 
difficult for people to be 

256
00:13:14,700 --> 00:13:16,600
agreed. 
Whether this problem that they 

257
00:13:16,600 --> 00:13:19,200
are seeing yesterday has already
been fixed or now. 

258
00:13:19,500 --> 00:13:23,500
So in that sense, s CI server 
was Not visible. 

259
00:13:23,500 --> 00:13:26,400
It's almost like a billboard 
that the people would go to see 

260
00:13:26,600 --> 00:13:29,800
and then I think over the last 
10 years the solar completely 

261
00:13:29,800 --> 00:13:32,500
flipped in the other directions,
very evasive. 

262
00:13:32,500 --> 00:13:35,000
If you like, it's almost 
completely invisible. 

263
00:13:35,300 --> 00:13:38,200
Maybe the only interaction 
people have visit is when 

264
00:13:38,200 --> 00:13:41,500
they're fully cast gets this a 
green checkmark the we good to 

265
00:13:41,508 --> 00:13:43,000
go or not. 
Yeah. 

266
00:13:43,000 --> 00:13:45,200
So that was a surprising change 
for me. 

267
00:13:45,600 --> 00:13:47,800
So from there, I think about two
things. 

268
00:13:48,200 --> 00:13:51,200
The one is that when it's 
invisible, you can go up a lot 

269
00:13:51,200 --> 00:13:53,500
more in the complex. 
Sophistication. 

270
00:13:53,900 --> 00:13:57,500
So to me, this is actually 
opportunity when people need to 

271
00:13:57,500 --> 00:14:01,000
understand like what those 
things being there means you 

272
00:14:01,008 --> 00:14:04,800
can't really go too far second 
automatic transmission in a car 

273
00:14:04,800 --> 00:14:08,500
like it still makes you feel 
like there's a distinct gears 

274
00:14:08,600 --> 00:14:11,500
that you'd be shifting. 
But then this Technology 

275
00:14:11,500 --> 00:14:14,000
Innovation happens like a 
continuous variable transmission

276
00:14:14,000 --> 00:14:16,000
completely, get rid of the 
notion that year. 

277
00:14:16,200 --> 00:14:19,100
So when your automated you can 
take on the second next develop 

278
00:14:19,100 --> 00:14:22,200
like Evolution and that's 
something I think about a lot. 

279
00:14:22,300 --> 00:14:26,100
All that's probably like, what 
eventually became intelligible 

280
00:14:26,300 --> 00:14:28,800
other part of it is I think 
there needs to be a little bit 

281
00:14:28,800 --> 00:14:32,000
more on the push back like a 
swinging back until serving 

282
00:14:32,000 --> 00:14:34,000
useful information to the 
developers. 

283
00:14:34,300 --> 00:14:37,400
It's the reason you're running 
these CI processes so that it 

284
00:14:37,400 --> 00:14:41,100
catches something and then 
informs the Mopar to work on 

285
00:14:41,100 --> 00:14:44,000
something and then when that's 
the used to just basically a 

286
00:14:44,000 --> 00:14:47,300
Colombian information, I think 
there's a lot of opportunities 

287
00:14:47,300 --> 00:14:49,500
lost. 
So I think there's opportunity 

288
00:14:49,500 --> 00:14:52,200
for us to do things better. 
And that's where I see the CIA. 

289
00:14:52,400 --> 00:14:54,300
System currently. 
Yeah, I agree. 

290
00:14:54,300 --> 00:14:57,300
Like Ci server currently is more
like a transparent system. 

291
00:14:57,300 --> 00:15:00,200
Hopefully, everyone has been 
running CI server for building 

292
00:15:00,200 --> 00:15:02,900
their software and it became 
part of the norm. 

293
00:15:02,900 --> 00:15:05,000
I would say, in terms of 
software development. 

294
00:15:05,000 --> 00:15:07,500
I think one of your passion is 
actually about developer 

295
00:15:07,500 --> 00:15:10,300
productivity, right? 
So in your view, what is the 

296
00:15:10,300 --> 00:15:13,800
productivity? 
Yes, I'm thinking, mainly from 

297
00:15:13,800 --> 00:15:18,500
the anglos, if I'm a leader of a
team, then I'm thinking about, 

298
00:15:18,500 --> 00:15:21,800
you know, I have a set of people
with different skill, sets and 

299
00:15:21,800 --> 00:15:23,600
different. 
All of experience and service 

300
00:15:23,600 --> 00:15:26,700
stations. 
And I need to rise all the boats

301
00:15:26,800 --> 00:15:29,500
in the make everybody a little 
bit more productive. 

302
00:15:29,700 --> 00:15:33,000
So arm them with more something 
like more information more 

303
00:15:33,000 --> 00:15:34,800
power. 
So that's the angle that I'm 

304
00:15:34,800 --> 00:15:38,500
thinking about the eventually 
that got some became one of the 

305
00:15:38,500 --> 00:15:41,100
key driver for me. 
So that was not how I studied 

306
00:15:41,100 --> 00:15:43,300
it. 
But as he got used inside the 

307
00:15:43,300 --> 00:15:45,300
organization's, I started 
thinking. 

308
00:15:45,500 --> 00:15:48,900
Oh, so what this is doing is 
helping Junior Engineers to be 

309
00:15:48,900 --> 00:15:52,000
more effective just a little bit
and it's all like this one 

310
00:15:52,000 --> 00:15:53,700
software. 
It's going to make them twice as

311
00:15:53,700 --> 00:15:56,600
valuable, but I have very only 
the contribution going there. 

312
00:15:56,600 --> 00:15:58,500
So that became the important 
part. 

313
00:15:58,900 --> 00:16:00,600
Another way. 
I think of this is, you know, in

314
00:16:00,600 --> 00:16:03,800
the movie Alien, who's the lady?
Sigourney Weaver? 

315
00:16:04,300 --> 00:16:07,600
Yeah, so she's actually right 
into this power loader and then 

316
00:16:07,600 --> 00:16:11,400
she fights is the idea. 
So I think of those like, what 

317
00:16:11,400 --> 00:16:14,800
the CI system or this develops 
in general is doing, is that 

318
00:16:14,800 --> 00:16:17,800
kind of like our mean, the 
humans, like amplifying? 

319
00:16:17,800 --> 00:16:22,200
Their muscle is amassing power. 
So it's almost like exoskeleton.

320
00:16:22,300 --> 00:16:26,100
How to do more with less. 
That's I think is what I think 

321
00:16:26,100 --> 00:16:30,100
about the developer productivity
and we are just basically trying

322
00:16:30,100 --> 00:16:33,500
to create more seatbelts because
like we can turn that to change 

323
00:16:33,500 --> 00:16:36,200
this as fast as we want. 
If you don't care about whether 

324
00:16:36,200 --> 00:16:40,000
it works or not, and then it's 
like a Everlasting challenge, I 

325
00:16:40,000 --> 00:16:43,300
mean, testing is a part of it 
but it's also just one part of 

326
00:16:43,300 --> 00:16:45,100
it. 
And there's so many other layers

327
00:16:45,100 --> 00:16:48,200
that we did ion to build 
confidence to the change. 

328
00:16:48,400 --> 00:16:50,200
That's kind of developer 
productivity. 

329
00:16:50,800 --> 00:16:51,300
Yeah. 
Yeah. 

330
00:16:51,300 --> 00:16:52,700
I like the second. 
Go. 

331
00:16:52,800 --> 00:16:56,100
I wasn't thinking it that way. 
So creating seatbelt or maybe 

332
00:16:56,100 --> 00:16:58,900
guardrails, so that you are also
productive. 

333
00:16:58,900 --> 00:17:01,000
But effective, it's not like 
productive. 

334
00:17:01,000 --> 00:17:04,300
As in like churning a lot of 
outputs, but also the right 

335
00:17:04,300 --> 00:17:06,200
output. 
So I like that definitely. 

336
00:17:06,500 --> 00:17:09,400
So as a developer maybe from 
your point of view because you 

337
00:17:09,400 --> 00:17:12,099
have written so many code in 
open source project. 

338
00:17:12,200 --> 00:17:16,200
How should one be conscious 
about improving their developer 

339
00:17:16,200 --> 00:17:18,800
productivity. 
We talk about Enterprise with CI

340
00:17:18,800 --> 00:17:21,400
server and things like that, but
how has individual? 

341
00:17:21,400 --> 00:17:23,400
We should be concerned? 
Yes, about improving our 

342
00:17:23,400 --> 00:17:26,400
productivity. 
Yeah, so when you frame it like 

343
00:17:26,400 --> 00:17:30,700
that productivity, as an 
individual, it almost feels like

344
00:17:30,700 --> 00:17:33,900
how can you grow or like, how 
can you become a better 

345
00:17:33,900 --> 00:17:36,700
engineer? 
And I mean, I can talk about 

346
00:17:36,700 --> 00:17:39,100
that. 
But before I get there, I guess 

347
00:17:39,100 --> 00:17:42,500
a more like a narrowly, this 
developer productivity. 

348
00:17:42,500 --> 00:17:45,400
As I discuss in terms of like 
giving the same person. 

349
00:17:45,400 --> 00:17:48,900
How can we do more? 
I think the kind of key thing 

350
00:17:48,900 --> 00:17:52,600
for me is demand that you be on 
demand TV of From the 

351
00:17:52,600 --> 00:17:56,600
organization that you need the 
exoskeleton the power loader, I 

352
00:17:56,600 --> 00:18:00,000
guess that we have these 
Tendencies and I did, I did to 

353
00:18:00,100 --> 00:18:04,300
build my own tubing. 
We know because we can and they 

354
00:18:04,300 --> 00:18:09,100
trying to do it, we tend to just
before the roller wrong, instead

355
00:18:09,100 --> 00:18:12,000
of spending money, those money 
that we are spending is not even

356
00:18:12,000 --> 00:18:15,400
a wrong, right? 
So, but me, a long time user of 

357
00:18:15,400 --> 00:18:19,700
IntelliJ because the one do my 
hero program or was using it and

358
00:18:19,700 --> 00:18:22,100
that I picked it up. 
I think it was like for her. 

359
00:18:22,300 --> 00:18:24,600
Million bucks per seat or 
something back then. 

360
00:18:24,800 --> 00:18:26,900
And I thought, gosh, this is so 
expensive. 

361
00:18:26,900 --> 00:18:30,100
It's ridiculous. 
So I refused to spend money on 

362
00:18:30,100 --> 00:18:34,000
it, but then I can later, I 
became CTO and like, salespeople

363
00:18:34,000 --> 00:18:39,300
that the salespeople, every one 
of them spend $150 a month, the 

364
00:18:39,300 --> 00:18:41,200
sales force to get anything 
done. 

365
00:18:41,500 --> 00:18:45,100
Alrighty is 100 bucks for 
Perpetual license back then. 

366
00:18:45,200 --> 00:18:47,400
I mean, right now, I think they 
changed it subscription, but 

367
00:18:47,400 --> 00:18:49,600
back then you just pay once and 
then be done. 

368
00:18:49,900 --> 00:18:51,900
I also deeply I didn't want to 
do it. 

369
00:18:52,500 --> 00:18:56,300
Theme music, that's silly. 
So I learnt a lot by writing 

370
00:18:56,400 --> 00:18:59,700
code maybe more. 
So by looking it back in a few 

371
00:18:59,700 --> 00:19:03,100
years later and not give each 
one's work, that chance didn't. 

372
00:19:03,200 --> 00:19:06,900
So there's definitely like the 
body in time testing things, 

373
00:19:07,100 --> 00:19:07,900
more. 
Generally. 

374
00:19:07,900 --> 00:19:11,100
I think it's the idea of 
retrospective when you do it 

375
00:19:11,100 --> 00:19:14,200
with some intentionality, do it 
with some hypotheses. 

376
00:19:14,300 --> 00:19:17,800
I'm going to do it this way this
time because I think of X y&z 

377
00:19:18,000 --> 00:19:21,400
normally open people don't think
about those things and they just

378
00:19:21,400 --> 00:19:24,300
do it because they I feel like 
it without those theories and 

379
00:19:24,300 --> 00:19:27,400
hypotheses and retrospect. 
It's critical to don't know how 

380
00:19:27,400 --> 00:19:29,900
you did it. 
So to me, that's the key thing. 

381
00:19:30,000 --> 00:19:33,900
Like intentionally trying a 
different API design style, like

382
00:19:33,900 --> 00:19:36,900
the desert work, or they can 
working back for, what are the 

383
00:19:36,900 --> 00:19:39,500
assumptions that I made in doing
it this way? 

384
00:19:39,600 --> 00:19:42,700
If you did actually hold or not.
So someone pick a mindset 

385
00:19:42,700 --> 00:19:44,700
almost, I think that's 
important. 

386
00:19:44,900 --> 00:19:47,700
So, another thing more often 
than that, in the context of 

387
00:19:47,700 --> 00:19:51,100
work engineering work is more 
like a finding the right balance

388
00:19:51,100 --> 00:19:53,700
or compromise. 
You don't want to waste 

389
00:19:53,800 --> 00:19:56,700
quote-unquote waste. 
Like the our is looking into the

390
00:19:56,700 --> 00:20:00,300
something deep and you can find 
a the program in 15 minutes. 

391
00:20:00,600 --> 00:20:04,400
So that Balancing Act is 
important skill, but I also find

392
00:20:04,400 --> 00:20:07,700
it useful from time to time. 
Just go deep time. 

393
00:20:07,900 --> 00:20:11,100
You decide to solve the problem,
the hard way, and then go solve 

394
00:20:11,100 --> 00:20:13,400
it in some sense. 
I think it kind of grows the 

395
00:20:13,400 --> 00:20:15,900
muscle. 
Sometimes there is no easier way

396
00:20:15,900 --> 00:20:19,300
out and you have to go straight.
Maybe like no matter what 

397
00:20:19,300 --> 00:20:23,100
obstacle is being able to do 
that, when You need to, I think 

398
00:20:23,100 --> 00:20:25,800
that's really powerful. 
I'm sure they all have this 

399
00:20:25,800 --> 00:20:28,700
feeling of this spend three 
hours debugging, and eventually 

400
00:20:28,700 --> 00:20:32,300
only find the command line that 
needs to be changed, not always,

401
00:20:32,600 --> 00:20:36,100
but from time to time, I think 
it's a good thing kind of Li the

402
00:20:36,100 --> 00:20:39,600
communication and influencing 
others back. 

403
00:20:39,600 --> 00:20:43,000
Then, when I started working for
some programming, a much more 

404
00:20:43,000 --> 00:20:47,000
individual activities with Italy
had this whole system and a 

405
00:20:47,000 --> 00:20:50,600
split it up in like a 303 ways 
and different people generally 

406
00:20:50,600 --> 00:20:52,800
gotten code own. 
Parts. 

407
00:20:52,800 --> 00:20:55,800
They did the thing that way, 
they wanted around the 

408
00:20:55,800 --> 00:20:58,100
interface. 
We Talks by to do things, but 

409
00:20:58,100 --> 00:21:00,100
that was it. 
But now it's a lot more 

410
00:21:00,100 --> 00:21:03,600
collaborative activities. 
I think the communication skills

411
00:21:03,600 --> 00:21:06,000
in the engineering become far 
more important. 

412
00:21:06,200 --> 00:21:08,500
Thanks for sharing your personal
view on this. 

413
00:21:08,700 --> 00:21:11,400
I'm sure the reason why you 
launch lunchable. 

414
00:21:11,400 --> 00:21:13,900
It's also partly to improve this
developer productivity. 

415
00:21:14,500 --> 00:21:17,300
So you mentioned something about
testing and lunchable is 

416
00:21:17,300 --> 00:21:20,300
actually some kind of like that 
tooling armed with machine 

417
00:21:20,300 --> 00:21:23,200
learning model in order to be 
able to To predict something. 

418
00:21:23,200 --> 00:21:24,800
So maybe you can share a little 
bit more. 

419
00:21:24,800 --> 00:21:27,600
What is lunchable especially for
people who haven't heard about 

420
00:21:27,600 --> 00:21:28,600
it. 
Yeah. 

421
00:21:28,700 --> 00:21:30,600
Thanks. 
I want to start with what we do 

422
00:21:30,600 --> 00:21:33,400
today in terms of function 
software and then where I'm 

423
00:21:33,400 --> 00:21:36,700
trying to go, because the latter
is much bigger than the former. 

424
00:21:36,900 --> 00:21:39,700
So I was working on this Jenkins
project. 

425
00:21:39,800 --> 00:21:42,600
That's the project that's being 
alive for a long time. 

426
00:21:43,100 --> 00:21:48,800
We have what 18,000 torso, test 
cases every time I make one line

427
00:21:48,800 --> 00:21:51,400
change. 
I have to wait for one whole 

428
00:21:51,400 --> 00:21:55,400
hour for If that's the path and 
then somebody comes into a cold 

429
00:21:55,400 --> 00:21:58,300
baby, maybe he doesn't like the 
variable name. 

430
00:21:58,300 --> 00:22:02,200
We make some changes and then 
another whole hour of testing 

431
00:22:02,200 --> 00:22:06,100
cycle before I can land this 
change into the master Branch. 

432
00:22:06,500 --> 00:22:09,800
I find that quite painful. 
It's good thing to have a lot of

433
00:22:09,800 --> 00:22:13,300
tests that in fact changing a 
small part in your lord system. 

434
00:22:13,300 --> 00:22:16,300
Then I don't think running all 
the tests are actually 

435
00:22:16,300 --> 00:22:20,100
particularly meaningful. 
There should be a smaller subset

436
00:22:20,100 --> 00:22:23,700
of the Fest that it'd be pretty.
Effective in catching any 

437
00:22:23,700 --> 00:22:27,300
deviations that I might, cause 
that's the reason we have a 

438
00:22:27,308 --> 00:22:30,100
smoke test. 
The idea of the smoke test is 

439
00:22:30,100 --> 00:22:33,200
you have a big test the that 
takes like hours to Ram. 

440
00:22:33,300 --> 00:22:36,000
So it's great. 
I can really small subset and a 

441
00:22:36,000 --> 00:22:37,300
power. 
I don't know if any of these 

442
00:22:37,300 --> 00:22:40,100
tests failed and it's probably 
not even worse the tortoise. 

443
00:22:40,500 --> 00:22:43,600
So that's another way of saying,
okay, sometimes the subset is 

444
00:22:43,600 --> 00:22:46,700
useful. 
Then smoke test is usually like 

445
00:22:46,700 --> 00:22:49,900
a fixed manually, curated set of
tests. 

446
00:22:50,000 --> 00:22:53,000
Actually, if you think about it,
it's not probably York tomorrow.

447
00:22:53,200 --> 00:22:56,400
So one way to think about what 
mountain will is eating is so we

448
00:22:56,400 --> 00:23:00,200
look at the changes that the 
people have applied created and 

449
00:23:00,200 --> 00:23:03,200
then we look at both the tests 
that you have and then we can 

450
00:23:03,200 --> 00:23:05,500
make a prediction that okay? 
For these 10 days. 

451
00:23:05,500 --> 00:23:09,300
You should be running these 
tests in this order to maximize 

452
00:23:09,300 --> 00:23:12,600
the chance that you get, the 
idea right away, right off the 

453
00:23:12,600 --> 00:23:14,600
gate. 
And then depending on very 

454
00:23:14,600 --> 00:23:16,200
easily that can be used 
differently. 

455
00:23:16,500 --> 00:23:19,300
If you're using it for the pull 
request and what that means is 

456
00:23:19,300 --> 00:23:21,800
the chances of you're getting 
the idea. 

457
00:23:22,200 --> 00:23:25,000
Right after the 8, the right 
after creating a request comes 

458
00:23:25,000 --> 00:23:28,200
up, so you don't have to come 
fix it into something else. 

459
00:23:28,400 --> 00:23:30,700
You can immediately start 
working on the fix, and then 

460
00:23:30,700 --> 00:23:33,000
preach another change and then 
welcome it. 

461
00:23:33,000 --> 00:23:35,800
Double more quickly. 
Iterate on it a lot more quickly

462
00:23:36,000 --> 00:23:38,500
in other places. 
And I mention that govern our 

463
00:23:38,500 --> 00:23:42,400
test is bad, but you have actual
real-world software project 1. 

464
00:23:42,400 --> 00:23:44,400
Our test could be actually 
awesome. 

465
00:23:44,700 --> 00:23:48,500
I've seen a full cycle test. 
It's going to take seven days. 

466
00:23:48,600 --> 00:23:51,000
It's ridiculous. 
Let's imagine, like, you find 

467
00:23:51,000 --> 00:23:52,900
one bag and you got it. 
Through the neck. 

468
00:23:52,900 --> 00:23:55,400
You need to be done the whole 
test cycle again, like he can't 

469
00:23:55,400 --> 00:23:57,200
even do it. 
And then those are still 

470
00:23:57,200 --> 00:23:59,600
happening. 
I'm sure like a volleyball Diaz.

471
00:23:59,800 --> 00:24:02,100
Knows the project. 
Just like that. 

472
00:24:02,500 --> 00:24:06,000
So making those spaces money. 
If you can tell people like, 

473
00:24:06,000 --> 00:24:09,800
okay, these are the tests in 
order to get 95% of confidence 

474
00:24:09,800 --> 00:24:11,900
that this test changes duration 
fee. 

475
00:24:12,200 --> 00:24:15,800
And we only need to run like a 
15%, and we can be precise about

476
00:24:15,800 --> 00:24:18,500
these things and that's what we 
do in terms of a. 

477
00:24:18,800 --> 00:24:22,300
So now if I'm a step onto the 
where thats from the deity, This

478
00:24:22,300 --> 00:24:25,600
is, in some sense. 
Just one quotient chord, minor 

479
00:24:25,600 --> 00:24:28,500
optimizations. 
And I'd actually soft migration 

480
00:24:28,500 --> 00:24:31,200
because Nate's, a personally 
painful thing for me. 

481
00:24:31,200 --> 00:24:34,100
And I know a lot of people 
suffer from it, but I think of 

482
00:24:34,100 --> 00:24:37,400
it, I guess essentially a guy 
self-tuning delivery cycle. 

483
00:24:37,500 --> 00:24:40,400
Like I talked about how these 
stick shift evolved into 

484
00:24:40,400 --> 00:24:43,200
automatic transmission into 
continuous variable 

485
00:24:43,200 --> 00:24:45,000
transmission. 
That doesn't even have a year 

486
00:24:45,000 --> 00:24:47,200
ratio. 
Thank you, something similar. 

487
00:24:47,300 --> 00:24:50,600
If you have this automation 
process going all the time 

488
00:24:50,700 --> 00:24:54,600
producing data and Gave you 
Earth in a system itself, should

489
00:24:54,600 --> 00:24:56,600
be able to use those 
information. 

490
00:24:56,900 --> 00:24:59,900
First. 
You can inform people better in 

491
00:24:59,900 --> 00:25:02,000
a second thing. 
I can make the whole delivery 

492
00:25:02,000 --> 00:25:05,000
pipeline self-tuning. 
I'll give you some example, we 

493
00:25:05,000 --> 00:25:07,700
talked about the second one bit 
of information from the CI 

494
00:25:07,700 --> 00:25:09,400
system, you get sometimes 
failed. 

495
00:25:09,600 --> 00:25:11,600
And so, it's something fell. 
What is going to be? 

496
00:25:11,700 --> 00:25:14,800
You click the link, and look at 
how it feels like you have 5 

497
00:25:14,800 --> 00:25:17,400
beta test cases. 
Now what you want to know? 

498
00:25:17,700 --> 00:25:19,400
Okay. 
So severe of these failures. 

499
00:25:19,400 --> 00:25:22,300
Actually like I've known to be a
flaky test like we do, I don't 

500
00:25:22,300 --> 00:25:25,000
have a flaky test program. 
So if somebody can tell you 

501
00:25:25,000 --> 00:25:27,400
that, by the way, these three 
phase is probably not worth 

502
00:25:27,400 --> 00:25:30,400
paying attention to because they
feel the same way left and 

503
00:25:30,400 --> 00:25:33,800
right, but these other two are 
more interesting because those 

504
00:25:33,800 --> 00:25:36,000
are new. 
So those are like an example, 

505
00:25:36,000 --> 00:25:38,600
contextual information. 
And then we told our little bit 

506
00:25:38,600 --> 00:25:41,100
like, a small way, is that makes
it productive. 

507
00:25:41,500 --> 00:25:43,200
So you make some changes and you
break. 

508
00:25:43,200 --> 00:25:46,200
We must enact a dozen, different
test cases because you know you 

509
00:25:46,200 --> 00:25:48,200
update the system. 
You need to update your test 

510
00:25:48,200 --> 00:25:52,000
code and it kind of begrudgingly
do it because we all feel naked.

511
00:25:52,200 --> 00:25:55,000
About the karate, right? 
So like who am I to seal away 

512
00:25:55,000 --> 00:25:59,000
the test but are all these test 
cases actually really useful. 

513
00:25:59,000 --> 00:26:02,600
We kind of ask them over time 
and I don't even know what this 

514
00:26:02,600 --> 00:26:04,900
desk is testing this. 
And that's going to take the 

515
00:26:04,900 --> 00:26:08,100
fashion to make it pass. 
When you add more tests on the 

516
00:26:08,100 --> 00:26:09,900
road. 
Maybe are they overlapping? 

517
00:26:10,200 --> 00:26:14,500
So there should be some critical
eyes to let's say that return on

518
00:26:14,500 --> 00:26:18,300
investment every test case as 
incur, some cost in terms of 

519
00:26:18,300 --> 00:26:21,200
execution time in terms of the 
maintenance and all that. 

520
00:26:21,400 --> 00:26:23,700
So easy. 
It actually producing value to 

521
00:26:23,700 --> 00:26:27,000
justify the cost and we should 
be able to get those information

522
00:26:27,000 --> 00:26:30,700
from the system itself that we 
don't say, that's kind of like 

523
00:26:30,700 --> 00:26:32,900
the complex information talking 
about. 

524
00:26:33,400 --> 00:26:34,700
Now. 
If you look at the whole day of 

525
00:26:34,700 --> 00:26:37,700
a pipeline, it's not even. 
Just like one set of tests. 

526
00:26:37,700 --> 00:26:40,700
He's like, you have a different 
test seat, or maybe sometimes 

527
00:26:40,700 --> 00:26:43,500
you have a different branch 
marketing, strategies all 

528
00:26:43,500 --> 00:26:45,700
designs. 
Those are the seat belts that we

529
00:26:45,700 --> 00:26:48,000
talked about it in some small 
things. 

530
00:26:48,000 --> 00:26:50,500
Like a naive thing is like 
everybody is creating up to 

531
00:26:50,500 --> 00:26:54,600
request and they get theirs. 
Didn't land into the master in a

532
00:26:54,600 --> 00:26:56,700
larger team, it actually breaks 
down. 

533
00:26:57,200 --> 00:27:00,300
So they need to have Team level 
integration branch which sent 

534
00:27:00,300 --> 00:27:02,200
this a landing. 
And the second level of 

535
00:27:02,200 --> 00:27:05,800
integration that I've seen those
places and then they'll test 

536
00:27:05,800 --> 00:27:08,800
unit tests that run quickly. 
So you can run it very close to 

537
00:27:08,800 --> 00:27:10,400
the left side of the development
cycle. 

538
00:27:10,400 --> 00:27:12,600
Very close to where the cotton 
happens. 

539
00:27:12,800 --> 00:27:15,700
Some of the integration tests 
can only run much later because 

540
00:27:15,700 --> 00:27:18,800
it takes five hours to that. 
We can only run it every night. 

541
00:27:19,100 --> 00:27:21,800
So, all these PCS, the build 
guy. 

542
00:27:22,100 --> 00:27:25,000
It's going to go in and okay, 
we're going to do it this way. 

543
00:27:25,200 --> 00:27:28,200
I'm going to put this test here 
to run it every night or maybe 

544
00:27:28,200 --> 00:27:30,600
every week, something and then 
that's it. 

545
00:27:30,600 --> 00:27:33,600
And then once that's in place 
that stays for years because 

546
00:27:33,600 --> 00:27:36,400
nobody, they are see touch it. 
But of course, like there's a 

547
00:27:36,400 --> 00:27:38,600
project become speaker or 
changes. 

548
00:27:38,900 --> 00:27:42,700
What's the optimal strategy to 
do the merging or Verity run? 

549
00:27:42,700 --> 00:27:45,700
The test actually should change.
So you run it every day. 

550
00:27:45,700 --> 00:27:48,300
Is it decorative? 
I need every day or is it better

551
00:27:48,300 --> 00:27:52,000
to run it every 12 days so that 
we have extra cycle that can. 

552
00:27:52,200 --> 00:27:54,000
Used to run different kind of 
test. 

553
00:27:54,100 --> 00:27:57,300
Now what's optimal? 
So people are not actually be 

554
00:27:57,300 --> 00:28:00,700
intentionally making those 
decisions and so the step by if 

555
00:28:00,700 --> 00:28:03,500
he can make it, those ition 
dated Regional waste and then if

556
00:28:03,500 --> 00:28:06,200
you can further step up that 
decision like leave those 

557
00:28:06,200 --> 00:28:10,800
efficient machines, that's the 
world that I want to get the I 

558
00:28:10,800 --> 00:28:13,900
can definitely relate to some of
the problems that you mentioned.

559
00:28:14,000 --> 00:28:16,600
One line change. 
Like whether if it's just a, 

560
00:28:16,600 --> 00:28:20,200
it's a string, right? 
It's like it's harmless like a 

561
00:28:20,200 --> 00:28:23,400
string on a label or something. 
And you run through the whole 

562
00:28:23,400 --> 00:28:26,200
cycle of the build and you wait 
for that until it finishes. 

563
00:28:26,400 --> 00:28:29,400
Only then of course, you are 
sure that it will pass anyway, 

564
00:28:29,600 --> 00:28:32,100
so I understand all these things
that you mentioned. 

565
00:28:32,100 --> 00:28:35,100
But how do you integrate 
lunchable where exactly that 

566
00:28:35,100 --> 00:28:38,400
Lunchable is actually triggered 
and how does it help over the 

567
00:28:38,400 --> 00:28:41,900
time to actually make this kind 
of prediction or judgment for 

568
00:28:41,900 --> 00:28:44,100
you to tweak? 
And then what you should do 

569
00:28:44,100 --> 00:28:46,000
afterwards. 
Maybe you can explain a little 

570
00:28:46,000 --> 00:28:47,900
bit on that side. 
Yeah. 

571
00:28:47,900 --> 00:28:51,900
So the key to make it 
universally useful is the video.

572
00:28:52,100 --> 00:28:53,900
The increase and as much as 
possible. 

573
00:28:53,900 --> 00:28:57,300
So make the surgery yet small as
possible because I know how 

574
00:28:57,300 --> 00:29:00,400
scary for some people to be 
modified is like a delivery 

575
00:29:00,400 --> 00:29:02,600
pipeline. 
It can feel like a snowflake. 

576
00:29:02,800 --> 00:29:06,100
So it created the second, very 
small open source, command line 

577
00:29:06,100 --> 00:29:09,500
tool and that's your agent. 
And then the first thing you do 

578
00:29:09,500 --> 00:29:12,200
is going to be building, a 
binary, you're going to tell us.

579
00:29:12,200 --> 00:29:14,200
Okay. 
Here's the source code that's 

580
00:29:14,200 --> 00:29:16,800
camera turned into build. 
So otherwise known as video 

581
00:29:16,800 --> 00:29:20,400
materials. 
What went into this program like

582
00:29:20,400 --> 00:29:21,900
a git? 
Commit basically. 

583
00:29:22,000 --> 00:29:26,000
Li now at some later point when 
you run the tests you want to 

584
00:29:26,000 --> 00:29:26,800
tell us. 
Okay. 

585
00:29:26,800 --> 00:29:30,900
These are the 15,000 test cases 
and thinking about running and 

586
00:29:31,000 --> 00:29:33,900
the software that I'm going to 
test this field and others are 

587
00:29:33,900 --> 00:29:37,000
still kind of point that back to
the idea bill of materials. 

588
00:29:37,300 --> 00:29:38,600
And then we're going to tell 
you, okay. 

589
00:29:38,600 --> 00:29:41,700
So in that case, another 
parameter is what's your goal? 

590
00:29:42,000 --> 00:29:45,500
So maybe it'll let's create a 
cleaning minute subset of the 

591
00:29:45,500 --> 00:29:48,200
tests or there are different 
ways to say hello. 

592
00:29:48,400 --> 00:29:49,500
And then we're going to say, 
okay. 

593
00:29:49,500 --> 00:29:51,900
So in that case, run the test 
number one. 

594
00:29:52,300 --> 00:29:56,200
It's 7:20 and blah, blah, blah. 
And then we give it in the form.

595
00:29:56,200 --> 00:29:59,100
That's very easy to pass into 
the test Runner. 

596
00:29:59,300 --> 00:30:03,600
You might be using, I don't 
know, like a maiden or nose or 

597
00:30:03,600 --> 00:30:06,800
like every programming language 
has multiple test run or so, 

598
00:30:06,800 --> 00:30:08,600
like, it's incredible number of 
those. 

599
00:30:08,900 --> 00:30:12,800
But usually, it is test tools 
are capable receiving what tests

600
00:30:12,800 --> 00:30:15,200
around because developer needs 
it interactively. 

601
00:30:15,200 --> 00:30:18,800
So, we use that may kinds and 
controlling the substitute test.

602
00:30:19,000 --> 00:30:21,700
And then, after everything is 
said and done, we need to see 

603
00:30:21,700 --> 00:30:26,000
how Oh those tests have behaved.
So you point us to these tests 

604
00:30:26,000 --> 00:30:29,700
keyboards that usually J. 
You need files, this de facto 

605
00:30:29,700 --> 00:30:33,300
standard XML report format. 
And then we look at those to 

606
00:30:33,300 --> 00:30:34,000
see. 
Okay. 

607
00:30:34,000 --> 00:30:38,100
This test has man and think 
about .5 s has failed and that 

608
00:30:38,400 --> 00:30:40,800
about a bra and everything, like
a floor of those, the 

609
00:30:40,800 --> 00:30:43,500
information, on the other hand, 
the internet on your side and we

610
00:30:43,500 --> 00:30:46,100
crunch those numbers. 
FEI tomorrow. 

611
00:30:46,100 --> 00:30:48,600
Our brain, the be a little 
better so that we can make a 

612
00:30:48,600 --> 00:30:50,800
little better prediction. 
That's how it works. 

613
00:30:51,300 --> 00:30:53,700
The imaginable. 
Language and testing framework, 

614
00:30:53,700 --> 00:30:57,600
is this to language-specific 
like title specific programming 

615
00:30:57,600 --> 00:31:00,000
language? 
For example, we have also 

616
00:31:00,000 --> 00:31:02,300
multiple layers of tests. 
Just like you mentioned, you 

617
00:31:02,300 --> 00:31:05,500
have units as functional tests, 
may be UI test, security test, 

618
00:31:05,500 --> 00:31:08,900
performances, can this be tool 
used for all those tests as 

619
00:31:08,900 --> 00:31:11,800
well? 
So no, it does not depend on any

620
00:31:11,800 --> 00:31:15,500
programming language and yes, it
can be used with any tests. 

621
00:31:15,800 --> 00:31:19,400
So, quite intentionally I 
decided that at least right now.

622
00:31:19,400 --> 00:31:21,900
I know going to look into what's
the source. 

623
00:31:22,000 --> 00:31:25,600
Code and how its structured, 
there's some tools and some 

624
00:31:25,600 --> 00:31:28,200
approaches in which people pass 
this. 

625
00:31:28,200 --> 00:31:31,900
Let's say the Java programming 
Java source code in the bill to 

626
00:31:31,900 --> 00:31:35,500
syntax tree and try to do this, 
almost like a code analysis 

627
00:31:35,500 --> 00:31:39,500
based approach or the called 
coverage based approach, but 

628
00:31:39,500 --> 00:31:41,400
that's going to be said, not 
really make it a programming 

629
00:31:41,400 --> 00:31:43,400
language. 
We have this incredible 

630
00:31:43,400 --> 00:31:46,400
diversity of how we do things. 
It's actually a program. 

631
00:31:46,400 --> 00:31:48,600
It's really a problem. 
But that's the reality is I 

632
00:31:48,600 --> 00:31:51,900
wanted to make this University 
applicable because the king 

633
00:31:52,100 --> 00:31:55,500
Clarity problem is universal. 
And then the flip side of it is 

634
00:31:55,500 --> 00:31:59,200
I think it's missing some you 
know, like I'm fading to exploit

635
00:31:59,200 --> 00:32:03,000
some performance efficiency that
the machine learning can do. 

636
00:32:03,200 --> 00:32:07,600
But right now frankly squeezing 
like the demeaning last 5% of 

637
00:32:07,608 --> 00:32:09,400
the performance isn't my 
concern. 

638
00:32:09,600 --> 00:32:12,500
I think it's the idea that 
something like this is useful 

639
00:32:12,500 --> 00:32:15,200
that we should be leaving more 
control to the machines. 

640
00:32:15,200 --> 00:32:18,300
That's the idea that we need to 
educate people and people need 

641
00:32:18,300 --> 00:32:20,400
to pick up. 
So that's where we stand. 

642
00:32:20,800 --> 00:32:23,600
And then same thing about this. 
The phase of testing your right 

643
00:32:23,600 --> 00:32:25,800
leg, maybe do anything from 
unique testing. 

644
00:32:25,800 --> 00:32:28,900
The API testing to UI testing 
the whatnot. 

645
00:32:29,000 --> 00:32:32,000
So the general idea is that you 
have this thing. 

646
00:32:32,000 --> 00:32:35,100
You're testing that can be 
attributed to your set of source

647
00:32:35,100 --> 00:32:38,100
code the building materials. 
And then you have this thing 

648
00:32:38,100 --> 00:32:40,700
called something that runs 
against it and produce you. 

649
00:32:40,700 --> 00:32:44,600
The binary result pass or fail, 
then we can fit into this mold. 

650
00:32:44,600 --> 00:32:46,300
So that's why we do like a unit 
Test. 

651
00:32:46,300 --> 00:32:49,400
Example, people tend to run down
a lot so that produce a lot of 

652
00:32:49,400 --> 00:32:51,900
data and more data tends to be a
better. 

653
00:32:52,100 --> 00:32:53,800
All the ill. 
So and seeing different 

654
00:32:53,800 --> 00:32:56,500
performance. 
But and that is also true from 

655
00:32:56,500 --> 00:32:58,600
one product to another right 
now. 

656
00:32:58,600 --> 00:33:01,300
Yeah, you can take this tea, 
anything and then let's see what

657
00:33:01,300 --> 00:33:04,900
it does in your project. 
I mean certainly it will work 

658
00:33:04,900 --> 00:33:07,800
nicely with the software that 
has a lot of tests. 

659
00:33:08,000 --> 00:33:11,000
But what if the software has 
very little test, I'm sure there

660
00:33:11,000 --> 00:33:13,900
are many software these days. 
They don't have enough test 

661
00:33:13,900 --> 00:33:15,400
coverage. 
Yeah. 

662
00:33:15,400 --> 00:33:18,500
So there's a whole other area of
quality affordable. 

663
00:33:18,500 --> 00:33:21,000
You said for custom automating 
tests. 

664
00:33:21,300 --> 00:33:24,200
I'm not Catfight automating is 
hard. 

665
00:33:24,200 --> 00:33:28,100
So I expect that to continue, 
but it's also the automation is 

666
00:33:28,100 --> 00:33:32,000
a very fragmented field like in 
the browser automation requires,

667
00:33:32,000 --> 00:33:34,000
one thing. 
Mobile automation. 

668
00:33:34,000 --> 00:33:37,100
It's a wholly, different game 
and if you're trying to automate

669
00:33:37,100 --> 00:33:40,100
the testing of a video games 
that Center be another thing and

670
00:33:40,100 --> 00:33:43,500
then so on and so forth. 
So again, it's really hard to 

671
00:33:43,500 --> 00:33:46,000
build anything Universal in that
space. 

672
00:33:46,200 --> 00:33:49,700
Yeah, so I leave that fight to 
these people and then when you 

673
00:33:49,700 --> 00:33:52,700
start back in late, more tests. 
Now you have a From program and 

674
00:33:52,700 --> 00:33:54,100
then that's where we can help 
you. 

675
00:33:54,700 --> 00:33:56,500
Right? 
I'm sure you have a number of 

676
00:33:56,500 --> 00:33:59,100
customers who have tried and 
used lunchable. 

677
00:33:59,200 --> 00:34:02,500
Maybe any particular story that 
stood out for you that you can 

678
00:34:02,500 --> 00:34:06,000
share with the audience here. 
How long you will actually help 

679
00:34:06,000 --> 00:34:09,199
that customer to improve their 
productivity or their testing 

680
00:34:09,199 --> 00:34:12,199
cycle? 
Yeah, so I went through this 

681
00:34:12,199 --> 00:34:16,800
conferencing puzzle con. 
So the buzzer is built to that 

682
00:34:16,800 --> 00:34:20,300
came out of the Google. 
It's an increment of your test 

683
00:34:20,300 --> 00:34:23,199
systems. 
So When people have the second 

684
00:34:23,199 --> 00:34:26,900
massive software, they build and
test takes a long time. 

685
00:34:26,900 --> 00:34:29,500
So these people did I turn into 
these tools. 

686
00:34:29,500 --> 00:34:32,500
Now changing a build tool is a 
huge deal. 

687
00:34:32,800 --> 00:34:35,000
In facts. 
Everybody's working Styles. 

688
00:34:35,199 --> 00:34:38,600
So like I say, bother calling is
a place for all the users. 

689
00:34:38,600 --> 00:34:41,900
I guess the key users of the 
puzzle that comes together and 

690
00:34:41,900 --> 00:34:43,600
stop there. 
No, it's someone of the 

691
00:34:43,607 --> 00:34:46,900
presentation. 
There was a speaker was saying 

692
00:34:47,500 --> 00:34:51,800
also in this company. 
We assign for engineers working 

693
00:34:51,800 --> 00:34:53,500
on. 
Two years to take on this 

694
00:34:53,500 --> 00:34:56,800
project and we are almost done, 
but it's still going to take 

695
00:34:56,800 --> 00:34:59,900
half a year or so. 
So I was shocked to hear, God's 

696
00:34:59,900 --> 00:35:04,500
sake, spent eight money years 
back in of the good Engineers. 

697
00:35:04,700 --> 00:35:08,600
This build guys are lollygaggin 
ears and you're still not bam. 

698
00:35:08,600 --> 00:35:11,700
And then the first guy who stand
it up to the questions and all, 

699
00:35:11,700 --> 00:35:13,700
that's amazing. 
You did it so quickly though. 

700
00:35:13,700 --> 00:35:16,800
I was a trick and I was like, 
probably Shock Vac what's going 

701
00:35:16,800 --> 00:35:19,100
on here? 
This is not the time frame that 

702
00:35:19,100 --> 00:35:21,800
I'm used to. 
So, you know, yes. 

703
00:35:21,900 --> 00:35:25,500
I'm thinking legal in touches 
that those guys and then they 

704
00:35:25,500 --> 00:35:28,100
introduced us the another team 
inside the company. 

705
00:35:28,100 --> 00:35:30,200
And so that we started working 
installed. 

706
00:35:30,400 --> 00:35:33,700
So in some sense like this is 
not either or most of the time, 

707
00:35:33,700 --> 00:35:35,200
especially in established 
project. 

708
00:35:35,200 --> 00:35:37,900
These people are in between a 
rock and a hard place has to 

709
00:35:37,900 --> 00:35:41,800
keep things running every day. 
And then it's difficulty that 

710
00:35:41,800 --> 00:35:45,000
increment to be squeezed a 
little bit more value speed like

711
00:35:45,000 --> 00:35:47,200
whatever I love it. 
And you know, your test Hardware

712
00:35:47,200 --> 00:35:49,700
combination might they are doing
embedded development. 

713
00:35:49,800 --> 00:35:51,800
So tomorrow like a new hobby or 
a type error. 

714
00:35:52,000 --> 00:35:53,500
It seemed like the best 
overload. 

715
00:35:53,500 --> 00:35:55,400
Like the increase is I 
multiplied. 

716
00:35:55,700 --> 00:35:59,400
So they need these immediate 
help to get stuff under control 

717
00:35:59,400 --> 00:36:02,900
so that they have Cycles. 
Induction take on larger longer 

718
00:36:02,900 --> 00:36:05,200
project. 
I think they see us as this kind

719
00:36:05,200 --> 00:36:08,200
of here is to buy more time 
because when you're running a 

720
00:36:08,200 --> 00:36:10,400
subset of this, you don't really
need to change anything 

721
00:36:10,400 --> 00:36:12,700
fundamentally different. 
You don't need to spend for 

722
00:36:12,700 --> 00:36:15,700
engineers working on two years 
before you start to see any 

723
00:36:15,700 --> 00:36:18,800
benefit. 
So that was another experience 

724
00:36:19,000 --> 00:36:21,800
and as the can other on the 
totally opposite end. 

725
00:36:21,900 --> 00:36:26,400
The Spectrum there's a team of 
two Engineers working on the web

726
00:36:26,400 --> 00:36:29,200
service and the testing cycle is
spending minute. 

727
00:36:29,300 --> 00:36:33,200
So like a far cry from one 
longer unit tests, but he has a 

728
00:36:33,200 --> 00:36:36,900
lot less to frustrated. 20 
minutes is a difficult time. 

729
00:36:36,900 --> 00:36:39,200
If I'm telling you that your 
next meeting is going to be in 

730
00:36:39,200 --> 00:36:41,700
20 minutes. 
All you're going to do what can 

731
00:36:41,700 --> 00:36:44,900
you do and it's too short to 
work on something new. 

732
00:36:45,200 --> 00:36:47,900
So it's like adjusting this like
a year or next month. 

733
00:36:48,000 --> 00:36:51,600
So you're able to cut them down 
into think 11 or 10 or 

734
00:36:51,600 --> 00:36:52,800
something. 
It's got half. 

735
00:36:53,000 --> 00:36:57,900
So he really liked that that 
creates this much rapid cycle. 

736
00:36:57,900 --> 00:37:00,800
He doesn't need the compact 
sweets as much even said, 

737
00:37:00,800 --> 00:37:03,200
goodbye allowed him to write 
more tests because like 

738
00:37:03,200 --> 00:37:05,500
previously he does very that 
every test. 

739
00:37:05,500 --> 00:37:07,600
He is as it's going to add to 
the time. 

740
00:37:07,800 --> 00:37:10,900
So now as I be motivator, but 
now he doesn't have it. 

741
00:37:11,100 --> 00:37:12,800
So that was a really great story
for me. 

742
00:37:13,400 --> 00:37:16,600
So you have been dealing with 
this problem since I think last 

743
00:37:16,600 --> 00:37:18,900
few years about software 
testing. 

744
00:37:19,100 --> 00:37:21,800
So what do you think the future 
of software testing? 

745
00:37:21,900 --> 00:37:24,100
Like tools like this. 
I think this is probably one of 

746
00:37:24,100 --> 00:37:26,400
a kind. 
I haven't heard such tool before

747
00:37:26,600 --> 00:37:28,800
like I know about basil 
incremental build. 

748
00:37:28,800 --> 00:37:30,500
Like it doesn't build at the 
whole software. 

749
00:37:30,800 --> 00:37:34,200
But to test only a part a subset
of your test cases. 

750
00:37:34,200 --> 00:37:35,700
I think it's still one of a 
kind. 

751
00:37:35,900 --> 00:37:38,900
So what do you foresee the 
future of software testing going

752
00:37:38,900 --> 00:37:40,900
forward? 
Yeah. 

753
00:37:41,000 --> 00:37:42,900
So there is a, I think two 
things going on. 

754
00:37:42,900 --> 00:37:46,600
The one is ensuring quality 
became a lot bigger than 

755
00:37:46,600 --> 00:37:48,900
testing. 
So that's unrealistic. 

756
00:37:48,900 --> 00:37:52,500
When years ago, we are shipping 
packets of Lion's. 

757
00:37:52,500 --> 00:37:55,500
Share of the quality came by 
running tests and making sure 

758
00:37:55,500 --> 00:37:57,700
that things are good before you 
shit. 

759
00:37:57,700 --> 00:38:01,400
Now, for the most of the people,
that's not how we ensure 

760
00:38:01,400 --> 00:38:03,200
quality. 
I mean testing is still a key 

761
00:38:03,200 --> 00:38:07,100
pillar, but now we have other 
means, like feature Flags 

762
00:38:07,300 --> 00:38:11,400
controlling doing a smarter row,
light using monitoring tools 

763
00:38:11,400 --> 00:38:14,800
like the failures before, too 
many customers gets impacted. 

764
00:38:15,100 --> 00:38:17,000
I feel like there's more defense
in depth. 

765
00:38:17,100 --> 00:38:20,100
There's all sorts of factors 
combined like eight of them 

766
00:38:20,100 --> 00:38:23,600
designed to reduce the risk. 
Accepting the fact that some bad

767
00:38:23,600 --> 00:38:26,900
stuff is going to happen. 
So I think there's a lot of that

768
00:38:26,900 --> 00:38:29,900
going on, more of that. 
It's going to happen. 

769
00:38:30,300 --> 00:38:33,100
And then narrowly on the testing
side. 

770
00:38:33,400 --> 00:38:37,200
I think what needs to happen is 
focusing more on the increments.

771
00:38:37,400 --> 00:38:41,200
Again, some was in the business 
of selling this packet software 

772
00:38:41,200 --> 00:38:44,700
and then we are releasing it. 
Every maybe once in three months

773
00:38:44,700 --> 00:38:47,000
or major. 
The Beast is everyone's two 

774
00:38:47,000 --> 00:38:51,100
years and then minor. 
It is like every six months and 

775
00:38:51,100 --> 00:38:53,200
then party. 
Thus every month or something 

776
00:38:53,200 --> 00:38:54,700
like that. 
Then that kinda like a 

777
00:38:54,700 --> 00:38:56,500
timeframe. 
We still operate on. 

778
00:38:56,800 --> 00:38:59,600
So then, having a full test 
cycle that takes two weeks. 

779
00:38:59,600 --> 00:39:01,900
That's kind of okay, like, it's 
been formally. 

780
00:39:01,900 --> 00:39:04,900
Doesn't manageable like you're 
trying to shift every day, like 

781
00:39:04,900 --> 00:39:07,300
the ploy every day. 
You cannot possibly have the 

782
00:39:07,300 --> 00:39:10,900
past two weeks, but the amount 
of tests that you are masks 

783
00:39:10,900 --> 00:39:15,400
could easily run up to those. 
So, I think the way to make this

784
00:39:15,400 --> 00:39:18,000
work is it's almost like movie 
frames. 

785
00:39:18,000 --> 00:39:22,400
If you look at the real stairs, 
a 24 frames per Or second or 

786
00:39:22,400 --> 00:39:26,100
something like that. 
One frame to the next is only 

787
00:39:26,100 --> 00:39:29,600
going to change a little bit. 
But if you try to inspect every 

788
00:39:29,600 --> 00:39:33,000
frame thoroughly then, yellow 
want to have enough time. 

789
00:39:33,300 --> 00:39:35,300
Maybe we can do is a common 
frame per second. 

790
00:39:35,300 --> 00:39:39,700
Not 24, 30 DB creates is not 
show up for limiting, higher 

791
00:39:39,700 --> 00:39:42,800
frequency than you do. 
So, I think the right thing to 

792
00:39:42,800 --> 00:39:47,200
focus on is not to look at one 
frame in the movie, but look at 

793
00:39:47,200 --> 00:39:50,000
30 frames in the movie and 
compare the difference. 

794
00:39:50,300 --> 00:39:53,100
Because if you speed goes up, 
The building is going to go 

795
00:39:53,100 --> 00:39:55,600
down. 
So I think that's the change 

796
00:39:55,600 --> 00:39:58,500
that needs to happen. 
Some people doing it crudely 

797
00:39:58,500 --> 00:40:01,000
like in a hotfix. 
There's a different process. 

798
00:40:01,000 --> 00:40:03,600
Some things are different 
process for hot fixes like this 

799
00:40:03,600 --> 00:40:06,800
expedited Lanes. 
That's like, very good way of. 

800
00:40:06,800 --> 00:40:10,300
Well, the hotfix is small so it 
should be able to do something 

801
00:40:10,300 --> 00:40:12,200
small to put that into 
production. 

802
00:40:12,200 --> 00:40:14,800
So it's the same thing and I 
don't think they're doing it 

803
00:40:14,800 --> 00:40:18,000
consciously, but that needs to 
be Point braced became more. 

804
00:40:18,000 --> 00:40:19,700
They do things. 
Yeah. 

805
00:40:19,700 --> 00:40:20,900
I mean like hot cakes. 
Yeah. 

806
00:40:20,900 --> 00:40:22,800
I must admit I do. 
Also have this kind of 

807
00:40:22,800 --> 00:40:25,200
high-speed Lane where you 
probably don't like the whole 

808
00:40:25,200 --> 00:40:26,900
test. 
Sometimes even you are so 

809
00:40:26,900 --> 00:40:31,300
confident that you just deployed
in whatever so I can see 

810
00:40:31,300 --> 00:40:34,300
definitely with tools like this 
and hopefully in the future more

811
00:40:34,300 --> 00:40:37,100
and more such tools available. 
We can improve this kind of 

812
00:40:37,100 --> 00:40:39,800
hectic way of doing the software
deployment. 

813
00:40:39,800 --> 00:40:42,000
So I think that will be great. 
Definitely. 

814
00:40:42,300 --> 00:40:46,300
So I saw a another talk that you
gave maybe few months ago is 

815
00:40:46,300 --> 00:40:48,600
about data driven, devops, 
right? 

816
00:40:48,700 --> 00:40:50,900
So, what do you mean by data 
driven here? 

817
00:40:51,600 --> 00:40:54,700
I mean, I talked a little bit 
about high like a basic official

818
00:40:54,700 --> 00:40:57,500
manual transmission. 
The automatic, the continuous 

819
00:40:57,500 --> 00:41:02,200
variable transmissions on my 
titties is by and large the way 

820
00:41:02,200 --> 00:41:06,000
people put together the delivery
processes by guts and Instinct. 

821
00:41:06,300 --> 00:41:09,500
So, how do you go up from there?
I think the next step up from 

822
00:41:09,500 --> 00:41:12,500
there is the Easter data that 
comes out of the system to help 

823
00:41:12,500 --> 00:41:15,900
you make the right decisions. 
Is this test failure of the key 

824
00:41:16,200 --> 00:41:19,200
and they experienced person 
who's being these products below

825
00:41:19,200 --> 00:41:21,700
and already knows that all. 
Sometimes it felt. 

826
00:41:21,800 --> 00:41:24,300
Us in that way so that it's a 
tribal knowledge. 

827
00:41:24,500 --> 00:41:27,500
But I say data-driven networks, 
I mean like don't rely on this 

828
00:41:27,500 --> 00:41:30,600
Human Experience and let the 
system tell you we should be 

829
00:41:30,607 --> 00:41:32,600
able to find that kind of 
information from data. 

830
00:41:32,600 --> 00:41:35,500
So that's why then I gave back a
few story. 

831
00:41:35,500 --> 00:41:38,900
So high, the real world team 
will be able to do something 

832
00:41:38,900 --> 00:41:43,000
seemingly very small and easy 
and still managed to get a lot 

833
00:41:43,000 --> 00:41:46,700
of value out of these airports. 
It was one example, the guy 

834
00:41:46,700 --> 00:41:50,300
doing a regular expression 
pattern matching on the last x 

835
00:41:50,300 --> 00:41:53,300
lines of build log. 
Regular expression, of course 

836
00:41:53,300 --> 00:41:55,500
that has to be like the tool 
that we bring in. 

837
00:41:55,600 --> 00:41:58,700
So it's almost got this like a 
smell of Backpage solution right

838
00:41:58,700 --> 00:42:01,000
from the beginning. 
So depending on her staff 

839
00:42:01,000 --> 00:42:05,200
failed, if the infrastructure 
failed, if the CIA build testing

840
00:42:05,200 --> 00:42:10,100
infrastructure fail, then you 
want to notify the CI team, if 

841
00:42:10,100 --> 00:42:13,600
the failure is due to the 
application called or the test 

842
00:42:13,600 --> 00:42:16,800
failures, even or modify the 
application Level first, and 

843
00:42:16,800 --> 00:42:20,400
then, like nothing is worse for 
the c18 for the app developer 

844
00:42:20,400 --> 00:42:23,700
still get notified. 
The failure of the c18 because 

845
00:42:23,700 --> 00:42:27,800
it really hot security. 
So he wanted to defend his own 

846
00:42:27,800 --> 00:42:30,600
playing against this and 
probably be effective. 

847
00:42:30,600 --> 00:42:33,500
I can totally see that. 
So those are all that great 

848
00:42:33,500 --> 00:42:35,300
example. 
In my mind about how are you 

849
00:42:35,300 --> 00:42:39,100
using data to make a little bit 
improvements here and there I'm 

850
00:42:39,100 --> 00:42:42,200
not trying to talk about it like
a number of to request for the 

851
00:42:42,200 --> 00:42:44,400
story points. 
I'm sure those are good for some

852
00:42:44,400 --> 00:42:46,700
things and that's all. 
I mean, but it's more the 

853
00:42:46,700 --> 00:42:50,600
Tactical improvements we can do.
So, that's the kind of story 

854
00:42:50,600 --> 00:42:54,300
behind data-driven. 
So for those kind of scenarios 

855
00:42:54,300 --> 00:42:56,700
then how would you actually 
collect the data? 

856
00:42:56,700 --> 00:43:00,200
Because yeah, it's not 
integrated most likely into our 

857
00:43:00,200 --> 00:43:02,400
tools into our software 
development. 

858
00:43:02,400 --> 00:43:05,700
So how would you try call this 
data and actually use that to do

859
00:43:05,700 --> 00:43:08,600
this retrospection and also 
improve in the future. 

860
00:43:09,200 --> 00:43:13,000
Yeah, so lucky, we are not the 
only people who are suffering 

861
00:43:13,000 --> 00:43:15,600
from the the program. 
The whole world is going through

862
00:43:15,600 --> 00:43:17,600
the coat and coat the Big Data 
thing. 

863
00:43:17,800 --> 00:43:21,300
And so there's a lot of people 
building is getting data from 

864
00:43:21,300 --> 00:43:24,400
whatever. /, Marketing sales, 
Etc. 

865
00:43:24,400 --> 00:43:27,500
Customer interactions. 
And then try to extract useful 

866
00:43:27,500 --> 00:43:30,100
knowledge a little bit. 
So we, since I will trade it 

867
00:43:30,100 --> 00:43:34,500
space, lots of the isolation and
I've seen number of teams over 

868
00:43:34,500 --> 00:43:36,700
the last decade. 
They built their in-house 

869
00:43:36,700 --> 00:43:38,500
Solutions. 
You can spot. 

870
00:43:38,500 --> 00:43:40,600
Those. 
Those are like a dime, a dozen. 

871
00:43:40,900 --> 00:43:44,100
If you ask me, then this might 
sound really selfish but that 

872
00:43:44,100 --> 00:43:47,600
smells like back in the days 
where every company was building

873
00:43:47,600 --> 00:43:51,500
their own CI system, because 
they needed it, but it takes 

874
00:43:51,500 --> 00:43:53,300
time. 
Him trust me, you're going to do

875
00:43:53,300 --> 00:43:55,700
it. 
So I think that's a sign for me 

876
00:43:55,700 --> 00:43:57,700
like this more. 
General solution. 

877
00:43:57,700 --> 00:44:01,000
Is that beer? 
So that's part of the motivation

878
00:44:01,000 --> 00:44:04,000
for me doing on table. 
It's clearly that this is a 

879
00:44:04,000 --> 00:44:07,100
universal problem and the people
solving it on their own. 

880
00:44:07,100 --> 00:44:09,200
They should be able to do better
than that. 

881
00:44:09,600 --> 00:44:12,800
So for people who would like to 
learn and use lunchable. 

882
00:44:12,800 --> 00:44:15,300
Is there some kind of free tier.
Where do they play it? 

883
00:44:15,308 --> 00:44:17,200
Actually? 
I don't know how to run this 

884
00:44:17,200 --> 00:44:19,100
launcher. 
But imagine this a CLI. 

885
00:44:19,100 --> 00:44:23,300
Is it like running on local? 
Yeah, so if you want the long 

886
00:44:23,300 --> 00:44:28,000
table inc.com, you can sign up 
and get the API key within 15 

887
00:44:28,000 --> 00:44:29,700
seconds. 
And then there's public 

888
00:44:29,700 --> 00:44:32,300
documentation. 
And as I said, he only in 

889
00:44:32,300 --> 00:44:35,900
certain that this V things in 
your CI, scale to get this going

890
00:44:36,200 --> 00:44:38,100
and it's free for open source 
project. 

891
00:44:38,100 --> 00:44:41,400
It's also free for small teams, 
and I'm trying to work on 

892
00:44:41,400 --> 00:44:44,300
building like a playable demo 
because the thing is like, 

893
00:44:44,300 --> 00:44:46,700
before you can start seeing the 
impact in your product, and 

894
00:44:46,700 --> 00:44:49,100
takes a little bit of time for 
data to your class. 

895
00:44:49,600 --> 00:44:52,000
So, I have this second point. 
Project. 

896
00:44:52,000 --> 00:44:55,000
The idea is like you go ahead 
and create a request to destroy 

897
00:44:55,000 --> 00:44:58,100
product and we'll show you that 
it's going to pick up the right 

898
00:44:58,100 --> 00:45:00,200
test. 
So I'm sure it will be great if 

899
00:45:00,200 --> 00:45:02,500
it's integrated to open source 
project. 

900
00:45:02,500 --> 00:45:05,400
And you can see over the time 
actually because open-source 

901
00:45:05,400 --> 00:45:07,900
normally has a lot of 
contribution, especially the 

902
00:45:07,900 --> 00:45:10,300
most popular one. 
Of course, probably, it's a good

903
00:45:10,300 --> 00:45:13,300
way to demo the capability of 
the Lunchable, right? 

904
00:45:13,300 --> 00:45:15,700
Yeah, exactly. 
So kansuke. 

905
00:45:15,700 --> 00:45:18,700
Thank you so much for your time 
before we end the conversation. 

906
00:45:18,700 --> 00:45:21,800
Normally I would ask one 
question for all my Guess which 

907
00:45:21,800 --> 00:45:23,400
is about three technical 
leadership. 

908
00:45:23,400 --> 00:45:26,600
Wisdom for all the listeners to 
listen from, what kind of 

909
00:45:26,600 --> 00:45:30,600
advice, would you give to them? 
Yeah, for this other interesting

910
00:45:30,600 --> 00:45:32,400
question that maybe pause a 
little bit. 

911
00:45:32,700 --> 00:45:37,000
I think most technical leaders. 
They are starting point is like 

912
00:45:37,000 --> 00:45:39,700
a leadership by called, that was
the case for me. 

913
00:45:39,800 --> 00:45:42,100
You just like the better code 
more quickly. 

914
00:45:42,400 --> 00:45:45,300
And that's like how you 
influence people around you, and

915
00:45:45,300 --> 00:45:49,100
that's great, but it actually 
only carries useful for you, 

916
00:45:49,100 --> 00:45:52,800
might be able to do it a casita 
instead of Maybe 10x better. 

917
00:45:52,800 --> 00:45:55,300
But by the time you need to 
influence 10 people. 

918
00:45:55,300 --> 00:45:58,700
Like you 10x better coding 
skills, become a wash. 

919
00:45:59,000 --> 00:46:02,700
So I felt like I struggled a lot
from jumping from that to the 

920
00:46:02,700 --> 00:46:05,600
next. 
So I think Nico has in that 

921
00:46:05,800 --> 00:46:08,100
fundamentally. 
Not a scalable enough ways to 

922
00:46:08,100 --> 00:46:11,500
make a difference. 
I think that's fun and to open 

923
00:46:11,500 --> 00:46:14,100
the sky people as like, a sphere
of influence. 

924
00:46:14,400 --> 00:46:18,000
The way as I picking the leader,
you influenced other Engineers 

925
00:46:18,000 --> 00:46:20,300
around. 
You is you make an impact by 

926
00:46:20,300 --> 00:46:21,900
influencing people. 
Around you. 

927
00:46:22,000 --> 00:46:23,700
In some sense. 
They don't really need you. 

928
00:46:23,900 --> 00:46:26,100
They get things done in their 
own ways. 

929
00:46:26,500 --> 00:46:28,800
So what is the body that you can
add? 

930
00:46:29,100 --> 00:46:32,300
One thing that I gravitated? 
There is like a power of 

931
00:46:32,300 --> 00:46:35,500
Storytelling at one point in 
Kirby's. 

932
00:46:35,500 --> 00:46:39,800
I made it my job to go out the 
software development teams and 

933
00:46:39,800 --> 00:46:43,700
pork see how they do things and 
their struggles and create a 

934
00:46:43,707 --> 00:46:47,300
story almost like in that Port 
late of their lives and then I 

935
00:46:47,300 --> 00:46:50,900
bring it back to the company. 
The idea here is I want to help 

936
00:46:50,900 --> 00:46:52,900
you man. 
Every picture here is problem, 

937
00:46:52,900 --> 00:46:55,800
you're solving. 
And then also hoping to get you 

938
00:46:55,800 --> 00:46:58,600
excited in solving those 
people's problems. 

939
00:46:58,900 --> 00:47:02,100
If he can paint a KSC, your 
customers picture. 

940
00:47:02,200 --> 00:47:04,000
It's like it's always better 
than my car. 

941
00:47:04,000 --> 00:47:06,600
Trying this. 
Help the abstract set of people.

942
00:47:06,600 --> 00:47:09,700
That's a power of Storytelling 
and I'd like to think it made 

943
00:47:09,700 --> 00:47:13,300
some impact and then changes how
people do things a little bit 

944
00:47:13,300 --> 00:47:15,600
differently. 
And that's like all you can hope

945
00:47:15,600 --> 00:47:17,800
for but those things are much 
more scalable. 

946
00:47:17,800 --> 00:47:21,100
Like I can write this one piece 
in a few hours and it gets read 

947
00:47:21,100 --> 00:47:22,600
by. 
By 200 people so. 

948
00:47:22,800 --> 00:47:26,900
So coding, it's difficult, but 
the writing more presentation, 

949
00:47:26,900 --> 00:47:29,900
similar, and then along similar 
lines. 

950
00:47:30,300 --> 00:47:33,200
Started thinking about 
empowering more individuals. 

951
00:47:33,200 --> 00:47:37,700
So you're trying to do something
by yourself is useful. 

952
00:47:37,700 --> 00:47:41,000
But again, we'd only scale so 
much at some sides of the 

953
00:47:41,000 --> 00:47:45,000
organizations, like it becomes 
more efficiently spot people who

954
00:47:45,000 --> 00:47:49,100
are trying to do the right thing
and then send more Spotlight and

955
00:47:49,100 --> 00:47:52,300
resources. 
And I can tell people Okay, this

956
00:47:52,300 --> 00:47:56,500
guys doing awesome things, 
that's helped them so that I 

957
00:47:56,500 --> 00:47:59,100
find them in some of the 
rewarding too, but more 

958
00:47:59,100 --> 00:48:02,400
effective dollar. 
Other things that I felt like 

959
00:48:02,400 --> 00:48:06,300
it's more smile. 
Yeah, but those are pretty good.

960
00:48:06,300 --> 00:48:09,300
I really like the storytelling 
part and also, like putting the 

961
00:48:09,300 --> 00:48:12,700
spotlight for good behaviors 
that you want to promote within 

962
00:48:12,700 --> 00:48:14,700
your team. 
I think that really resonate 

963
00:48:14,700 --> 00:48:17,100
with me as well. 
So, thanks kansuke for this, 

964
00:48:17,100 --> 00:48:19,400
lovely chat. 
So, if people want to find you 

965
00:48:19,400 --> 00:48:22,100
online, they want to connect 
with you, or Learn more about 

966
00:48:22,100 --> 00:48:24,600
this launch, a product. 
Maybe where can they find you 

967
00:48:24,607 --> 00:48:28,400
online? 
Yeah, so course, cable or is my 

968
00:48:28,400 --> 00:48:31,700
website and they're all the can 
kidding sir available. 

969
00:48:31,900 --> 00:48:36,200
I'm to boeing.com is our company
website and their own Twitter, 

970
00:48:36,200 --> 00:48:39,600
Facebook, Etc. 
The same as the company and 

971
00:48:39,600 --> 00:48:42,800
Jenkins is also well. 
So yeah, that's how you can find

972
00:48:42,800 --> 00:48:44,600
me. 
So, thanks kansuke. 

973
00:48:44,600 --> 00:48:46,100
I wish you good luck with 
lunchable. 

974
00:48:46,200 --> 00:48:48,600
Hopefully, one day I will be 
able to play around with it as 

975
00:48:48,600 --> 00:48:49,800
well. 
Thank you. 

976
00:48:49,900 --> 00:48:52,300
Yeah, and then we can forward to
You're going back to Singapore 

977
00:48:52,300 --> 00:48:54,700
at some point. 
All right, cool, then we'll see 

978
00:48:54,700 --> 00:48:55,500
you. 
Bye then. 

979
00:48:58,200 --> 00:49:01,600
Thank you for listening to this 
episode and for staying right 

980
00:49:01,600 --> 00:49:04,400
till the end. 
If you highly enjoyed, please 

981
00:49:04,400 --> 00:49:07,200
share it with your friends and 
colleagues who you think would 

982
00:49:07,200 --> 00:49:10,000
also benefit from listening to 
this episode. 

983
00:49:10,300 --> 00:49:13,100
And if you're new to the 
podcast, make sure to subscribe 

984
00:49:13,100 --> 00:49:16,100
and leave me your valuable 
review and feedback. 

985
00:49:16,100 --> 00:49:19,900
It really, really helps me a lot
in order to grow these podcasts 

986
00:49:19,900 --> 00:49:22,400
better. 
You can also find the full show 

987
00:49:22,400 --> 00:49:26,000
notes of this conversation on 
the episode page at technology. 

988
00:49:26,000 --> 00:49:29,300
No, the death website. 
Putting the full transcript 

989
00:49:29,300 --> 00:49:33,000
interesting quotes and links to 
the resources and mentions from 

990
00:49:33,000 --> 00:49:35,800
the conversation. 
And lastly make sure to 

991
00:49:35,800 --> 00:49:39,200
subscribe to the shows mailing 
list on technology, another deaf

992
00:49:39,200 --> 00:49:41,700
to get notified for any future 
episodes. 

993
00:49:42,000 --> 00:49:44,800
Stay tuned for the next 
technique Journal episode. 

994
00:49:44,800 --> 00:49:46,500
And until then. 
Goodbye.

