1
00:00:01,000 --> 00:00:04,759
How'd you like to listen to dot
net rocks with no ads? Easy?

2
00:00:05,320 --> 00:00:09,880
Become a patron For just five dollars
a month you get access to a private

3
00:00:10,000 --> 00:00:14,359
RSS feed where all the shows have
no ads. Twenty dollars a month will

4
00:00:14,400 --> 00:00:18,800
get you that and a special dot
net Rocks patron mug. Sign up now

5
00:00:18,839 --> 00:00:24,760
at Patreon dot dot net rocks dot
com. Hey Carlin Richard here. As

6
00:00:24,760 --> 00:00:30,120
you may have heard, NDC is
back offering their incredible in person conferences around

7
00:00:30,120 --> 00:00:34,640
the world, and we'd like to
tell you about them. NDC Copenhagen is

8
00:00:34,679 --> 00:00:40,320
happening August twenty seventh through the thirty
first. Go to NDC Copenhagen dot com

9
00:00:40,560 --> 00:00:45,719
for more information. NDC Porto is
happening October sixteenth through the twentieth. The

10
00:00:45,759 --> 00:00:50,719
early bird discount for ADC Porto ends
July twenty first. Go to Dcporto dot

11
00:00:50,799 --> 00:00:56,039
com to register and check out the
full lineup of conferences at NDC Conferences dot

12
00:00:56,079 --> 00:01:00,880
com. Hey there, this is
Jeff Fritz, the purple blazer guy from

13
00:01:00,960 --> 00:01:04,359
Microsoft, letting you in on a
little secret about my friend Carl Franklin.

14
00:01:06,079 --> 00:01:08,760
You know, the guy who started
dot net rocks. The first podcast about

15
00:01:08,760 --> 00:01:14,640
dot Net in two thousand and two. The guy who's been teaching Blazer on

16
00:01:14,719 --> 00:01:19,760
YouTube since twenty twenty, Yeah,
that Carl Franklin. Well, Carl's joined

17
00:01:19,840 --> 00:01:23,680
up with the folks from Code in
a Castle to teach a week long hands

18
00:01:23,719 --> 00:01:29,599
on Blazer class. Are you ready
to get this? At a castle slash

19
00:01:29,760 --> 00:01:34,840
villa in Tuscany. It's sort of
a luxury vacation with Blazer learning built in.

20
00:01:37,000 --> 00:01:42,920
Carl's calling it the Blazer Master Class. You'll learn Blazer from the ground

21
00:01:42,000 --> 00:01:47,640
up, finishing the week with the
ability to build and deploy Blazer applications.

22
00:01:48,799 --> 00:01:52,599
Since the training happens for only four
hours in the morning over six days,

23
00:01:53,000 --> 00:01:57,599
you can bring your significant other,
your partner with you and you should right

24
00:01:57,359 --> 00:02:01,920
This part of Italy's absolutely beautiful.
There's so much to see and do,

25
00:02:02,280 --> 00:02:07,840
and in Larion Marco from Code in
a Castle are organizing daily activities both at

26
00:02:07,840 --> 00:02:13,080
the castle and in the area.
The castle is in the Marema, a

27
00:02:13,159 --> 00:02:17,840
less touristed region of Tuscany, offering
both classic Tuscan hill country as well as

28
00:02:17,960 --> 00:02:23,840
easy access to the Etruscan Riviera,
with sublime local food, wine and olive

29
00:02:23,879 --> 00:02:29,599
oil around every corner. Breakfast is
included. Every day there will be two

30
00:02:29,639 --> 00:02:34,400
communal dinners at the castle book ending
the experience, and most other meals and

31
00:02:34,599 --> 00:02:38,800
all activities are included. And did
I mention you'll learn Blazer in person from

32
00:02:38,879 --> 00:02:44,759
Carl Franklin. Listen, space is
limited and for very good reason. This

33
00:02:44,879 --> 00:02:50,520
is quality training in a beautiful setting. Go to code in Acastle dot com

34
00:02:50,879 --> 00:02:58,280
slash Blazer twenty twenty three that's bla
z o R two zero two three to

35
00:02:58,360 --> 00:03:04,000
take advantage of this amazing opportunity to
join Carl in Tuscany for an unforgettable week

36
00:03:04,280 --> 00:03:17,840
of La dolce vita while advancing your
programming skills in this important new technology.

37
00:03:23,360 --> 00:03:25,639
Welcome back to dot net Rocks.
Is Carl Franklin, and this is Richard

38
00:03:25,680 --> 00:03:30,800
Cavill. And uh, we're starting
like a five show recording run, aren't

39
00:03:30,840 --> 00:03:34,560
we. I think we've already done
part of it, just been the next

40
00:03:34,599 --> 00:03:40,039
one days carry us down through into
into July. So I really do enjoy

41
00:03:40,120 --> 00:03:44,879
to any shows with you and our
guests over the years. It's been a

42
00:03:45,199 --> 00:03:49,080
it's been an amazing ride in a
long time. And I have a better

43
00:03:49,080 --> 00:03:52,800
no framework for us all guys.
Oh by yeah, so roll the music

44
00:03:52,879 --> 00:04:08,879
awesome at well Gate is still making
non SSD drives. The current technology for

45
00:04:08,960 --> 00:04:14,199
platter drives that they're using is h
AMR spinning rusts. Yeah, I know

46
00:04:14,439 --> 00:04:18,000
right. H A m R stands
for Why Richard Heat assisted magnetic recording,

47
00:04:18,120 --> 00:04:24,040
right, So they actually heat up
the platters so that you can put more

48
00:04:24,079 --> 00:04:28,079
bits on the metal or something.
We just come up with new tricks ways

49
00:04:28,120 --> 00:04:36,920
to align rust atoms really precisely.
Pretty crazy. Thirty two terabytes they're coming

50
00:04:38,000 --> 00:04:43,519
up to. Wow, they're gonna
give you a thirty two terabyte regular SATA

51
00:04:43,639 --> 00:04:50,040
drive, Yeah, and followed by
a forty terabyte SAT. I don't have

52
00:04:50,199 --> 00:04:54,759
enough stuff, I know, right, isn't that nuts? Yeah? I

53
00:04:54,759 --> 00:04:59,000
think gonna I'm gonna open up a
competitor to uh, you know, Dropbox.

54
00:04:59,040 --> 00:05:00,480
That's what I'm gonna do. You're
just gonna buy like a million of

55
00:05:00,560 --> 00:05:04,480
these things. Oh man, not, that's amazing. Not anyway. I

56
00:05:04,600 --> 00:05:10,240
still do use some of these drives, but only ten terabytes. As hard

57
00:05:10,279 --> 00:05:13,199
as I go, a mere ten
terabytes. Yeah, I think I've got

58
00:05:13,399 --> 00:05:18,240
I've got four twelves in my synology. But it is interesting to consider the

59
00:05:18,279 --> 00:05:23,000
idea that, yeah, you could
triple that easily with four new drives.

60
00:05:23,600 --> 00:05:26,600
I can't imagine they'll be all that
cheap, but it is amazing to see

61
00:05:26,639 --> 00:05:30,279
that they're still innovating in the space. Yep, it is cool. Anyway.

62
00:05:30,399 --> 00:05:32,360
That's when I have for the old
guys. Great talking to us today,

63
00:05:32,480 --> 00:05:36,519
Richard. I grabbed a comment top
of the show eighteen eighteen which I

64
00:05:36,519 --> 00:05:41,000
don't think you'd be surprised, you
know that I went back to David Whitney's

65
00:05:41,079 --> 00:05:46,319
Well, of course that that show
we did at INDC and OSLOW kicked off

66
00:05:46,319 --> 00:05:50,480
a lot of conversation and still does
to this day. I think this would

67
00:05:50,519 --> 00:05:55,199
be like the fourth comment I've read
from that show. So this is from

68
00:05:55,319 --> 00:05:58,560
Joseph hiller Up, who said,
I think the basic idea is great and

69
00:05:58,639 --> 00:06:00,720
needed, but the actual and Holman
will need to be refined to work,

70
00:06:00,759 --> 00:06:05,600
which is how do we pay open
source maintainers? One issue that comes to

71
00:06:05,639 --> 00:06:10,360
mind is how funny would work when
an open source library uses another open source

72
00:06:10,399 --> 00:06:14,240
library. I mean, who gets
paid by whom and how much? So

73
00:06:14,399 --> 00:06:16,759
you know, if the funding model
was based on utilization, that's an interesting

74
00:06:16,800 --> 00:06:23,720
problem. Should should the one project
help fund the other because they are to

75
00:06:24,120 --> 00:06:27,800
have dependency on it. Another is
the funding model would work fine for startups

76
00:06:27,800 --> 00:06:30,439
and the like, but it wouldn't
work a lot and enterprise organizations and need

77
00:06:30,480 --> 00:06:33,639
contracts and possible even vendors to be
located in certain countries when paying out significants

78
00:06:33,639 --> 00:06:36,560
amounts of money for licenses. Yeah, I don't know that that's true.

79
00:06:36,680 --> 00:06:41,319
I think every organization can approach it
the way they want to. It'll be

80
00:06:41,360 --> 00:06:46,079
more about the standards around what you're
expected to do. But I don't see

81
00:06:46,120 --> 00:06:50,920
this as payment. I see this
as donation. Realistically, making contributions just

82
00:06:50,959 --> 00:06:55,480
to keep that thing going. If
you want certainty, hire a team and

83
00:06:55,560 --> 00:07:00,920
run it yourself. But I do
think the discussion is important, and like

84
00:07:00,959 --> 00:07:05,279
you said, the current model is
likely unsustainable, and we're going to talk

85
00:07:05,319 --> 00:07:09,360
about that further. Joshua, I'm
not entirely sure. Now. I don't

86
00:07:09,399 --> 00:07:11,240
know that I should read this last
part because there has nothing to do with

87
00:07:11,279 --> 00:07:13,720
the show, but I'm going to
do it anyway. Okay, here we

88
00:07:13,759 --> 00:07:16,560
go. PS. I hate to
say this for Richard, who's actually wrong

89
00:07:16,639 --> 00:07:21,600
here. Possibly for the first time
ever, VHS was technically a superior format,

90
00:07:21,920 --> 00:07:26,120
just beta a lot for faster speeds
so people were carrying fast speed on

91
00:07:26,160 --> 00:07:29,240
Beta who use the tape in half
an hour, versus a slower speed on

92
00:07:29,240 --> 00:07:31,000
the VHS that would last for hours
when you can pay the same amount of

93
00:07:31,000 --> 00:07:35,079
tape used per secon with uni formats, VHS looked better. Yeah, so,

94
00:07:35,160 --> 00:07:39,759
well, the popularity doesn't necessarily mean
it's the better format. Well,

95
00:07:39,759 --> 00:07:43,000
it's also that Joshua is completely wrong, like, not even close to correct.

96
00:07:43,000 --> 00:07:46,839
He's reversed a bunch of the facts. That the Beta Max format was

97
00:07:46,879 --> 00:07:50,680
physically smaller in the VHS format,
it was more portable. The original versions

98
00:07:50,680 --> 00:07:54,519
of Beta Max, which came out
a couple of years before VHS, had

99
00:07:54,600 --> 00:07:58,759
more length than VHS. You're remembering
the later versions of VHS when they met

100
00:07:58,800 --> 00:08:01,600
a tape thinner and things got longer
and they slowed down the speeds. Beta

101
00:08:01,639 --> 00:08:07,079
Max was higher resolution, it was
faster to seek on. It was better

102
00:08:07,079 --> 00:08:11,879
in every expect except one thing.
Only Sony was allowed to make them.

103
00:08:11,959 --> 00:08:18,040
Sony refused to allow other companies to
manufacture Beta Max players, and so they

104
00:08:18,199 --> 00:08:24,160
failed the inferior format and essentially every
respect VHS, because it was open,

105
00:08:24,560 --> 00:08:28,720
multiple manufacturers made it and so became
the most popular one in the network effect

106
00:08:28,800 --> 00:08:31,799
took a hold. There were more
players, so more movies were released on

107
00:08:31,799 --> 00:08:37,039
it, and so it dominated.
But you're not going to argue technical merit

108
00:08:37,080 --> 00:08:39,279
of VHS over Beta, and be
right if you think VHS was a superior

109
00:08:39,320 --> 00:08:46,120
technology, it wasn't. It was
the winner, and Sony learned once again

110
00:08:46,200 --> 00:08:50,840
because they continue to do this.
If you don't open up a product line

111
00:08:50,879 --> 00:08:54,679
like that to other vendors, you're
going to lose. That being said Joshua,

112
00:08:56,039 --> 00:08:58,840
I think you may already have a
music to Code buy. I'd happily

113
00:08:58,799 --> 00:09:03,159
send you another one, because you
know you need to when you're that wrong.

114
00:09:03,720 --> 00:09:07,600
Yeah, but contact me at Richard
at pwop dot com and we'll figure

115
00:09:07,639 --> 00:09:09,080
it out. Thanks so much.
And if you'd like a copy of music

116
00:09:09,120 --> 00:09:11,679
code By, write a comment on
the website at dot at rocks dot com

117
00:09:11,799 --> 00:09:15,679
or on the facebooks. We publish
every show there and if I read it

118
00:09:15,720 --> 00:09:18,159
on the show, we'll send you
copy of music go By. And you

119
00:09:18,159 --> 00:09:20,799
know you can follow us on Twitter. But the real fund is happening over

120
00:09:20,919 --> 00:09:24,279
on Mastodon. I'm at Carl Franklin
at tech Hub dot social and now I'm

121
00:09:24,360 --> 00:09:28,320
rich Campbell at Mastodon dot social.
Send us a two. We like him.

122
00:09:28,399 --> 00:09:31,799
By the way, I just got
my blue Sky account too, because

123
00:09:31,799 --> 00:09:35,000
if I don't have enough social media
accounts, what's blue Sky just another one?

124
00:09:35,120 --> 00:09:39,879
Really, it's another Twitter alternative.
Okay, as soon as I get

125
00:09:39,919 --> 00:09:41,000
an invite, all send you one, then we can have even more,

126
00:09:41,000 --> 00:09:46,360
because you know, you can't have
enough bay at least barely functional social media.

127
00:09:46,399 --> 00:09:50,320
And if you say so, all
right, Well, before we leave

128
00:09:50,360 --> 00:09:54,559
the whole VHS beta thing, do
you remember the format that was competing with

129
00:09:54,679 --> 00:10:01,480
Blu Ray was hd DV HDDVD.
That's right, So before I knew that

130
00:10:01,480 --> 00:10:05,960
that Blu Ray was going to be
the and it was probably like the week

131
00:10:05,039 --> 00:10:11,759
before, I ordered an HDDVD player
right right, and and it sat in

132
00:10:11,799 --> 00:10:18,240
the box because Blu Ray one,
and it was completely unusable, and so

133
00:10:18,399 --> 00:10:22,000
I kept it in storage and kept
in storage. And finally we're cleaning out

134
00:10:22,039 --> 00:10:26,000
the garage and my wife goose,
what is this and can we sell that?

135
00:10:26,080 --> 00:10:28,919
And I'm like, no, we
cannot sell that. Nobody will buy

136
00:10:28,960 --> 00:10:33,840
it. Nobody wants that. It's
going in the garbage. Not a thing.

137
00:10:33,080 --> 00:10:37,320
Yeah, Unfortunately, I think I
had an HDDVD player. I think

138
00:10:37,360 --> 00:10:41,440
it was in the old Xbox.
Actually, huh, that's the only one

139
00:10:41,480 --> 00:10:45,919
we had, and then of course
the new ones had Blu Ray. And

140
00:10:46,039 --> 00:10:50,440
who uses spinning media at all anymore? Yeah? I really don't. Yeah,

141
00:10:50,759 --> 00:10:54,600
other than other than those really large
hard drives in your mass storage device.

142
00:10:54,759 --> 00:10:56,519
Yeah, it's about it for spinning
media of any thirty two terabytes.

143
00:10:56,960 --> 00:11:03,519
Okay, let's bring back Sean Walker
to the program. Sean is the original

144
00:11:03,559 --> 00:11:07,080
creator of Octane and before that,
dot Net Nuke Yay. Both of those

145
00:11:07,120 --> 00:11:11,320
are web application frameworks that have earned
the recognition of being amongst the most pioneering

146
00:11:11,360 --> 00:11:16,919
and widely adopted open source projects native
to the Microsoft platform. He has over

147
00:11:18,039 --> 00:11:22,360
thirty years of professional experience in architecting
and implementing enterprise software solutions for private and

148
00:11:22,559 --> 00:11:28,679
public organizations and based on significant community
contributions, He's been recognized as a Microsoft

149
00:11:28,879 --> 00:11:35,639
MVP for over fourteen years and was
recognized in twenty eleven as a Leading Entrepreneur

150
00:11:35,120 --> 00:11:41,480
and the BIV forty under forty Business
Awards, and is currently the chair of

151
00:11:41,519 --> 00:11:46,159
the Project committee for the dot Net
Foundation. Wow by busy Man. Every

152
00:11:46,200 --> 00:11:50,200
time I'm on the show, I
think I better reduced my bio. That's

153
00:11:50,240 --> 00:11:54,559
too long winded, but I always
forget to do that, so I replaced

154
00:11:54,559 --> 00:11:58,639
it. I'd replaced the longer one
with this one. Actually this is the

155
00:11:58,720 --> 00:12:01,120
short one. Yeah, oh boy, I mean, how many more stories

156
00:12:01,360 --> 00:12:05,639
could I tell about you, Sean? Like we've known each other a really

157
00:12:05,720 --> 00:12:09,399
long time? Yeah, yeah,
going back to the eclipse days. Hey,

158
00:12:09,440 --> 00:12:13,600
can we take like a minute and
talk a bit about the dot Net

159
00:12:13,639 --> 00:12:16,919
Foundation, Like, how are things
going? Yeah? Yeah, I've been

160
00:12:16,960 --> 00:12:22,879
on the Foundation as a volunteer for
a long time, since twenty fourteen.

161
00:12:22,960 --> 00:12:28,399
In fact, lately have been focused
on the Project Committee. I'm glad a

162
00:12:28,480 --> 00:12:33,879
lot. We're coming up to another
election actually for the Board of Directors,

163
00:12:33,879 --> 00:12:37,679
so there's going to be I think
I have voted excellent. Yeah. I

164
00:12:37,679 --> 00:12:41,039
think there's three seats that have opened
up, so there'll be three new members

165
00:12:41,120 --> 00:12:48,200
joining and three existing members rolling off
the current board. At least the members

166
00:12:48,279 --> 00:12:52,320
that have been interacting with regularly are
very invested in trying to move the needle

167
00:12:52,360 --> 00:12:58,600
forward when it comes to the foundation
initiatives, and also the professional services company

168
00:12:58,600 --> 00:13:03,200
that we're working with, Virtual Inc, Is also helping us get organized better,

169
00:13:03,759 --> 00:13:07,639
trying to hone in on what the
value proposition is better or trying to

170
00:13:07,679 --> 00:13:11,759
identify the benefits. So a lot
of progress is being made behind the scenes

171
00:13:11,799 --> 00:13:16,639
that isn't exactly visible yet, but
I'm excited about where it's going. It

172
00:13:18,320 --> 00:13:22,440
seems to me that Microsoft has been
a lot more hands off on the dot

173
00:13:22,440 --> 00:13:26,279
Net Foundation these days since the departure
of the last executive director, and it's

174
00:13:26,320 --> 00:13:31,279
just not really been replaced, And
I kind of see that as a good

175
00:13:31,279 --> 00:13:33,399
thing, but I don't know that
everybody sees it that way. Yeah,

176
00:13:33,399 --> 00:13:37,559
that was a big change. Up
until last fall, the executive director had

177
00:13:37,600 --> 00:13:43,200
always been a Microsoft employee and that
wasn't part of the by laws or anything

178
00:13:43,240 --> 00:13:48,759
that was a requirement. It was
more that Microsoft was willing to provide a

179
00:13:48,799 --> 00:13:54,159
resource to the foundation to fill that
role. And usually that person was sort

180
00:13:54,200 --> 00:13:58,360
of doing two roles, right they
were doing work for Microsoft still and working

181
00:13:58,360 --> 00:14:07,039
on the foundation. But after Claire
Nevotney left there was actually a professional firm

182
00:14:07,080 --> 00:14:11,679
that was hired to help with or
like managing the foundation, and since then

183
00:14:11,720 --> 00:14:15,279
there's been a couple of folks from
that firm that have filled the role of

184
00:14:15,320 --> 00:14:18,559
executive director. And it does it
definitely right. It feels more objective,

185
00:14:18,639 --> 00:14:22,200
more impartial a little and you're right, a little bit more arms length from

186
00:14:22,240 --> 00:14:26,279
Microsoft. Yeah, well, I
mean I want dot net to be bigger

187
00:14:26,320 --> 00:14:31,399
than Microsoft. Really, you know, that's my thinking when I when I

188
00:14:31,440 --> 00:14:33,759
think about what the potential of the
foundation is, it's like, hey,

189
00:14:33,840 --> 00:14:35,039
look, dot net can live in
a lot of places, does live in

190
00:14:35,080 --> 00:14:39,200
a lot of places, and it
doesn't have to all be driven by Microsoft.

191
00:14:39,360 --> 00:14:41,840
If there's any possibility this is going
to come true, it's going to

192
00:14:41,919 --> 00:14:46,240
come from the Foundation. Yeah.
Yeah. And of course with any foundation,

193
00:14:46,279 --> 00:14:50,759
the challenge is most of the resources, if not all, are volunteer,

194
00:14:50,320 --> 00:14:54,879
and so it's just it's hard to
get consensus in a sort of a

195
00:14:54,960 --> 00:14:58,279
volunteer structure and to make significant progress. A lot of folks are putting in

196
00:14:58,279 --> 00:15:01,240
a lot of effort. Yeah,
So I hope that, you know,

197
00:15:01,360 --> 00:15:05,639
people will start to see the results
soon. Well, I'm glad you're involved

198
00:15:05,679 --> 00:15:09,000
in the project side. Any particular
projects you want to call out before we

199
00:15:09,080 --> 00:15:13,919
move on. One thing I guess
I would like to mention is that it's

200
00:15:13,919 --> 00:15:18,639
been a little bit slow in terms
of new projects making applications to become members

201
00:15:18,679 --> 00:15:22,320
of the Foundation. That's been the
case for probably the last six months.

202
00:15:24,840 --> 00:15:28,279
Prior to that, there was always
a regular flow of new project applications.

203
00:15:28,519 --> 00:15:31,600
I think there's more than one hundred
projects that are part of the Foundation at

204
00:15:31,639 --> 00:15:37,279
this point, and that includes Microsoft
projects as well as community projects. But

205
00:15:37,360 --> 00:15:39,960
if there's any projects that are,
you know, dot net based, that

206
00:15:41,039 --> 00:15:46,399
are looking to become members of the
Foundation, they should definitely consider submitting the

207
00:15:46,440 --> 00:15:52,639
application and going through the process.
Awesome. I'm looking at the website dot

208
00:15:52,440 --> 00:15:56,360
Net Foundation Project Trends, which has
some nice graphs and stuff, and apparently

209
00:15:56,399 --> 00:16:00,840
that was written with Octane who knew. Yes, yeah, should think have

210
00:16:00,879 --> 00:16:04,120
happened? How good that have happened? Yes, I know, Yeah,

211
00:16:04,120 --> 00:16:07,440
we needed a way to track like
which projects were the most active, and

212
00:16:07,480 --> 00:16:12,200
in fact you weren't at the next
Pauli's on that, yeah as well.

213
00:16:12,240 --> 00:16:15,600
A lot of great work going on
in Polly. Yeah, amazing stuff happening

214
00:16:15,639 --> 00:16:22,639
now that the dot net team got
involved, and really um is making a

215
00:16:22,679 --> 00:16:26,960
new version that's kind of completely blow
away the old stuff and be completely backward

216
00:16:26,960 --> 00:16:30,039
compatible. We talked about that before. I think I think we're getting Joel

217
00:16:30,080 --> 00:16:33,279
on the show at some point.
Richard too. Yeah, they wanted to

218
00:16:33,320 --> 00:16:37,440
wait a little bit till the new
bits were closer to ready before we record,

219
00:16:37,480 --> 00:16:40,399
but yeah, it's on the radar. I think it's will be involved

220
00:16:40,440 --> 00:16:45,480
as well. Yes, yes,
so speaking of Voctane, because we were

221
00:16:45,240 --> 00:16:48,360
Yeah, let's you. You talked
about it a little bit on the last

222
00:16:48,399 --> 00:16:52,759
show here in twenty nineteen that you
did that you were working on this thing.

223
00:16:52,840 --> 00:16:57,960
But I guess now it's there,
it's done, growed up, it's

224
00:16:59,000 --> 00:17:06,200
all ye nineteen. At early stage, it was just getting started. At

225
00:17:06,240 --> 00:17:10,160
that point, I think I had
just released the first version as an open

226
00:17:10,160 --> 00:17:12,079
source project on the hub. Well
what is it? Let's start at the

227
00:17:12,119 --> 00:17:18,240
top. Okay, So I mean
I've kind of changed the messaging around it

228
00:17:18,279 --> 00:17:22,079
a little bit over time. It's
one of those things where I wanted to

229
00:17:22,119 --> 00:17:26,559
position it as a web application framework
focused on developers, and I really was

230
00:17:26,599 --> 00:17:30,519
trying to avoid the term CMS because
there's a lot of CMSs and I felt

231
00:17:30,559 --> 00:17:34,759
like there's no need for another CMS. However, the more I talked to

232
00:17:34,799 --> 00:17:40,000
developers, they tell me Octane is
a CMS. So I'm like, if

233
00:17:40,079 --> 00:17:41,759
it walks like a duck quacks like
a duck, I guess it is a

234
00:17:41,880 --> 00:17:45,200
duck like in some respects and some
stop resisting it, and so now I've

235
00:17:45,240 --> 00:17:49,680
been referring to it as a CMS
and application framework. And obviously it's built

236
00:17:49,680 --> 00:17:53,839
on Blazer. Started with the very
early previews of Blazer and has grown up

237
00:17:53,880 --> 00:17:59,400
since then with every successive version.
And we'll be having a like a dot

238
00:17:59,400 --> 00:18:02,640
in at seven version coming out later
this month. So it's a it's a

239
00:18:03,720 --> 00:18:08,160
it's a Blazer thing though right in
particularly so it fully like so it's a

240
00:18:08,200 --> 00:18:15,519
headless model where it's got the full
back end API to manage users and sites

241
00:18:15,559 --> 00:18:18,720
and all of the standard sort of
entities you would expect in a in a

242
00:18:18,720 --> 00:18:22,920
common sort of web application, but
the front end is all Blazer um.

243
00:18:23,680 --> 00:18:26,640
Yeah, so it took it.
It's taking advantage of the Blazer component model

244
00:18:27,440 --> 00:18:32,440
to build a very composable UI,
which is wonderful. By the way.

245
00:18:32,480 --> 00:18:36,480
I know you're a big fan of
the best thing that's happened web development since

246
00:18:36,519 --> 00:18:40,559
I can remember. Yeah, I
was never a big fan of javascripts.

247
00:18:40,599 --> 00:18:42,960
So the fact that you can kind
of put that to the background and you

248
00:18:44,000 --> 00:18:48,400
can really be productive in writing like
front end c sharp UI is amazing.

249
00:18:48,559 --> 00:18:52,240
Yep, great, Yeah, for
the way you want to work, right,

250
00:18:52,279 --> 00:18:55,920
I mean, that's the whole thing. This will this will work with

251
00:18:56,000 --> 00:18:59,720
you. I do I know why
you want to avoid CMS. I mean,

252
00:18:59,759 --> 00:19:02,759
it is an overblown term, and
it's one of those great things where

253
00:19:02,759 --> 00:19:04,480
if it's simple enough to be easy
to use, and it's not powerful enough,

254
00:19:04,480 --> 00:19:07,920
and if it's sophisticated enough to do
all the things you want, then

255
00:19:07,920 --> 00:19:11,519
it's too bloody complicated. But I
do think you hit this point of it's

256
00:19:11,559 --> 00:19:17,240
a dev tool, it's a framework, but writing your own how do I

257
00:19:17,359 --> 00:19:22,799
let non dev's add content code is
just not smart. That's a solved problem.

258
00:19:22,960 --> 00:19:26,000
So to me, the CMS part
of Octane is the and when the

259
00:19:26,079 --> 00:19:30,200
user wants to add content, here's
your mechanism ready to go. Right.

260
00:19:30,359 --> 00:19:36,440
So do people drop parallels between this
and dot neet nuke old dot neet nuke

261
00:19:36,559 --> 00:19:40,200
users? Do they like this?
Is this like their new version? So

262
00:19:41,279 --> 00:19:47,359
it's a good question because early on
I wanted to make it clear that this

263
00:19:47,519 --> 00:19:52,480
was quite differentiated right from dot net
nuke, because obviously I created dot neet

264
00:19:52,559 --> 00:19:56,000
nuke way back and web forms days
whatever it was two thousand and three.

265
00:19:56,359 --> 00:20:00,599
Yeah, yeah, yeah. But
the reality is, I guess a lot

266
00:20:00,680 --> 00:20:10,440
of the concepts for developing components and
how users would interact with the application.

267
00:20:10,559 --> 00:20:15,240
Those are all very similar to the
way that dot neet Nuke worked, and

268
00:20:15,319 --> 00:20:21,079
even the underlying data model is very
similar to the dotet new data model,

269
00:20:21,119 --> 00:20:26,599
at least the core data model.
So it's really the implementation which is completely

270
00:20:26,599 --> 00:20:30,960
different, right, like built from
the ground up using all the latest technology

271
00:20:30,119 --> 00:20:36,680
dotnet core Blaser. So it really
has no resemblance at all to the way

272
00:20:36,680 --> 00:20:41,480
that dotnet nuke was was built.
Yeah, but from a usability standpoint though,

273
00:20:41,559 --> 00:20:45,160
from is it it does fill a
similar need? It does. Yeah,

274
00:20:45,160 --> 00:20:48,720
it's very similar because it has a
lot of the same concepts, like

275
00:20:48,079 --> 00:20:52,440
multi tendency, meaning you can have
multiple sites that are hosted out of the

276
00:20:52,480 --> 00:20:56,960
same installation. Each site has its
own set of users and roles and content

277
00:20:57,079 --> 00:21:02,480
and things that you can manage.
So a lot of that existed in dott

278
00:21:02,519 --> 00:21:04,160
who as well. So you just
said the magic word roles, And I

279
00:21:04,200 --> 00:21:08,640
know that role based authorization has kind
of fallen out of favor in the last

280
00:21:08,640 --> 00:21:14,160
few years, I guess, And
you know now it's all about claims and

281
00:21:15,039 --> 00:21:18,519
all this stuff, But what are
you using for that mechanism on the back

282
00:21:18,599 --> 00:21:26,960
end? So I'm using the the
dot net identity service like that the library

283
00:21:26,960 --> 00:21:32,720
that Microsoft provides for self hosted off
scenarios, Yeah, because that was one

284
00:21:32,759 --> 00:21:36,960
thing that I felt was like really
lacking in a lot of the templates is

285
00:21:37,079 --> 00:21:40,480
a self hosted model. Like,
yes, you can use things like identity

286
00:21:40,519 --> 00:21:45,559
server and third party tools to get
remote off working, but a lot of

287
00:21:45,559 --> 00:21:48,319
the time in development scenarios, you
just want to self host it off.

288
00:21:48,599 --> 00:21:52,960
I'm actually really happy to see Microsoft's
going to deliver something in dot neet aid

289
00:21:52,000 --> 00:21:56,440
in this regard. Yeah, me
too. But yeah, so it's self

290
00:21:56,480 --> 00:22:02,559
host using the standard Microsoft bits there
um, and then it also has open

291
00:22:02,640 --> 00:22:10,720
id and DC or OIDC like connections, right, so you can have remote

292
00:22:10,720 --> 00:22:15,759
authentication yeah sickond logging with Google and
Twitter and Facebook and yeah, and I

293
00:22:15,200 --> 00:22:22,119
did that using no third party like
libraries or extensions because basically Microsoft already provided

294
00:22:22,119 --> 00:22:26,160
all the bits that are necessary to
interface with those different remote services without using

295
00:22:26,160 --> 00:22:30,279
an identity server or open id,
dick or any of these other you know,

296
00:22:30,319 --> 00:22:33,920
third party options. Yeah, that's
great, it's yeah. It's interesting

297
00:22:34,039 --> 00:22:37,519
how many projects you've been involved in
that it basically been open source projects that

298
00:22:37,559 --> 00:22:42,839
had then been gone on to be
successful, like and making money, Like,

299
00:22:44,000 --> 00:22:47,440
is octained profitable in any way?
How does it sustain itself? Yeah,

300
00:22:47,480 --> 00:22:52,400
so that's sort of a good lead
into the whole commercialization of open source.

301
00:22:52,480 --> 00:22:56,799
But um so, I only recently, within the last month, actually

302
00:22:56,799 --> 00:23:02,200
stepped away from my full time job
a bit Cognizant, where I was leading

303
00:23:02,960 --> 00:23:08,920
professional services team, and with the
intent of going fully um like fully focused

304
00:23:08,960 --> 00:23:15,599
on Octane, both developing out the
product commercially and offering services around it commercially.

305
00:23:15,559 --> 00:23:19,640
But I'm only doing this because I
have confidence that I can succeed based

306
00:23:19,799 --> 00:23:25,119
on the fact that I was able
to do this with dot mat Nuke as

307
00:23:25,119 --> 00:23:27,559
well. Yeah, I was thinking, you should have some confidence. You've

308
00:23:27,559 --> 00:23:32,640
got a bunch of decades of succeeding
at this stuff. So yeah, yeah,

309
00:23:32,680 --> 00:23:34,640
And I also yeah, so I
kind of under And this is where

310
00:23:34,880 --> 00:23:38,319
I think a lot of people don't
really understand some of the fundamentals of open

311
00:23:38,359 --> 00:23:44,039
source UM and these things came up
in some of the prior prior shows,

312
00:23:44,039 --> 00:23:47,839
which is why I reached out and
said, there's an alternate perspective I think

313
00:23:47,880 --> 00:23:52,240
that could be shared about some of
the ideas that David Whitney shared in that

314
00:23:52,279 --> 00:23:59,440
session. And so Nevotney as well. Yeah, and they are they are

315
00:23:59,599 --> 00:24:03,359
well okay, So I mean David's
whole perspective was that package managers like newged

316
00:24:03,480 --> 00:24:10,240
and GitHub could provide probably an ability
for maintainers to make money off of their

317
00:24:10,400 --> 00:24:15,119
open source projects. Right, It's
an interesting idea. Obviously, Carl lapsed

318
00:24:15,160 --> 00:24:18,039
onto that idea really quickly, thought
it was a great idea. But then

319
00:24:18,079 --> 00:24:22,559
when Sarah came on the show,
she kind of explained that it doesn't really

320
00:24:22,559 --> 00:24:26,160
conform to the ideals of open source. Right, And I would say that

321
00:24:26,279 --> 00:24:32,240
they're both correct, but they're both
incorrect at the same time. And I

322
00:24:32,279 --> 00:24:37,799
did a presentation in January at the
last dot Net Foundations summit and it was

323
00:24:37,839 --> 00:24:41,359
the title of the presentation was open
Source Sustainability, but really what it was

324
00:24:41,400 --> 00:24:45,680
focused on was commercial open source.
And I think what you really have to

325
00:24:45,759 --> 00:24:52,400
understand about open source is that is
when it comes to licensing. So if

326
00:24:52,440 --> 00:24:56,480
you are the copyright holder of an
open source project, then you have the

327
00:24:56,480 --> 00:25:03,640
ability to specify whatever license you would
like to provide so that users can take

328
00:25:03,640 --> 00:25:07,200
advantage of your IP right. If
you choose an open source license, it

329
00:25:07,240 --> 00:25:11,400
offers a lot of freedom and a
lot of abilities for people to use it,

330
00:25:11,440 --> 00:25:15,960
but it also restricts your ability to
make money directly off of that IP.

331
00:25:17,799 --> 00:25:22,880
However, it's completely possible for you
to dual license your IP, so

332
00:25:22,920 --> 00:25:26,799
you can have an open source license
and a commercial license, and people can

333
00:25:26,880 --> 00:25:30,599
choose the license that they want.
And it's the same way that when you

334
00:25:30,680 --> 00:25:33,319
go to buy a cell phone today
or rent a car whatever, right,

335
00:25:33,519 --> 00:25:37,200
you can choose to get the insurance
or not get the insurance. Yeah,

336
00:25:37,279 --> 00:25:41,200
right, A lot of people choose
to get the insurance because they're worried about

337
00:25:41,200 --> 00:25:45,000
mitigating the risk if something goes wrong. Same exact thing with open source,

338
00:25:45,279 --> 00:25:49,279
and don't people actually switch halfway through? It's like, hey, start with

339
00:25:49,319 --> 00:25:53,559
the open source product absolutely to a
certain point where you either run into obstacles

340
00:25:53,640 --> 00:25:57,000
or it becomes critical where it's like, how are we going to protect ourselves?

341
00:25:57,119 --> 00:26:00,240
Hey, let's flip to the commercial
license comes with the protection. Yeah.

342
00:26:00,279 --> 00:26:04,400
I'm thinking of Identity Server as the
sort of the iconic example of that

343
00:26:06,119 --> 00:26:11,039
and all the heartache that they went
through with their customers. You know about

344
00:26:11,119 --> 00:26:15,640
Andy and Microsoft too over that,
and I think that that's maybe there's there

345
00:26:15,759 --> 00:26:22,359
really shouldn't be that much resistance to
it as long the resistance and I actually

346
00:26:22,440 --> 00:26:29,880
faced this at Dot and nukes if
you neglect the open source version in favor

347
00:26:29,920 --> 00:26:33,200
of the commercial version, because there's
dual licensing where you offer the same exact

348
00:26:33,200 --> 00:26:38,359
piece of IP under two different licenses, and then there's things like open coore

349
00:26:38,559 --> 00:26:44,400
where you add extra functionality to the
commercial version, which makes it clear that

350
00:26:44,720 --> 00:26:48,480
one version is better than the other. And then you're you know, you're

351
00:26:48,480 --> 00:26:52,920
forcing people to make a decision,
and that's where the open source community starts

352
00:26:52,960 --> 00:26:56,160
to get a little bit anxious.
Kay Growley, Well, the reason I

353
00:26:56,200 --> 00:26:59,799
was so excited about David Whitney's idea
is that it was an option. You

354
00:26:59,839 --> 00:27:03,680
know. It wasn't like, um, you know, you're it wasn't like

355
00:27:03,720 --> 00:27:07,160
you're abandoning one one project for another
or one other thing. It's that,

356
00:27:07,839 --> 00:27:12,880
you know, I've I've got these
core this core set of features in this

357
00:27:12,960 --> 00:27:18,359
thing, and I'm now building a
version that I'm going to charge for that

358
00:27:18,440 --> 00:27:22,519
has these features added to it.
Right, It's it's an option, and

359
00:27:22,559 --> 00:27:25,839
if you don't want to buy it, you don't have to. But I

360
00:27:25,880 --> 00:27:32,519
think that it may not, you
know, be open source. Um,

361
00:27:33,319 --> 00:27:34,200
why should I say, yeah,
I think you said it best. It's

362
00:27:34,279 --> 00:27:38,240
like, that's not the open source
you way to do things right, but

363
00:27:38,480 --> 00:27:44,920
be at GitHub or whatever is the
perfect place to to to put that hook.

364
00:27:45,839 --> 00:27:48,880
I think, you know, but
it's still an option. I saw

365
00:27:48,920 --> 00:27:52,279
no downside in that idea. Yeah, and I think that if you had

366
00:27:52,440 --> 00:27:56,960
even just even if you just took
the standard dual license approach, let's say

367
00:27:56,960 --> 00:28:02,079
you had. Let let's pick a
project like image sharp, that's a popular

368
00:28:02,279 --> 00:28:07,039
image library rate in the dot in
an ecosystem. That project could have an

369
00:28:07,079 --> 00:28:11,920
open source license, very pure open
source license, and a commercial license and

370
00:28:11,039 --> 00:28:15,720
the commercial and they could offer two
packages of it, one under one license,

371
00:28:15,759 --> 00:28:18,799
one under the other, and people
could choose to opt for the commercial

372
00:28:18,839 --> 00:28:22,279
license. And they would need a
way to pay for it. And that's

373
00:28:22,319 --> 00:28:26,160
why I think what David was suggesting, right, is something like newget or

374
00:28:27,039 --> 00:28:32,319
get hub could facilitate that financial transaction. However, you have to realize then

375
00:28:32,400 --> 00:28:34,759
the maintainer of that open source project
is on the hook to provide value,

376
00:28:36,000 --> 00:28:38,519
right, because people aren't paying for
the IP, they're paying for the service

377
00:28:38,599 --> 00:28:44,000
they get around the IP. Yeah, yeah, they're not doing they're not

378
00:28:44,039 --> 00:28:45,839
doing it for fun. I also
think you're there's different classes of project,

379
00:28:47,000 --> 00:28:51,880
like clearly Octane, while it has
a developer component, has a feature set

380
00:28:51,920 --> 00:28:55,839
that some enterprises are going to value. I would argue that's where your differentiation

381
00:28:55,880 --> 00:28:59,000
comes in. Is often with a
paid product, you can add features to

382
00:28:59,119 --> 00:29:03,440
have license or requirements on it for
from third parties, or have cloud dependencies,

383
00:29:03,440 --> 00:29:07,720
things that would be valuable to an
enterprise but cost money and so only

384
00:29:07,720 --> 00:29:11,359
appear in the commercial license. But
I also think you have projects that are

385
00:29:11,519 --> 00:29:18,359
pure internal code libraries that largely aren't
licensable or make don't make sense in that

386
00:29:18,400 --> 00:29:22,759
space, and that's where maybe some
of these other mechanisms would be more credible.

387
00:29:22,799 --> 00:29:26,160
Although that basically I think this was
more Sarah's position. It's like,

388
00:29:26,519 --> 00:29:30,319
listen, if you've taken a dependency
on a piece of software chip the guy

389
00:29:30,440 --> 00:29:36,000
twenty bucks, like, come on, I know, yeah, yeah,

390
00:29:36,160 --> 00:29:41,519
especially if it's providing sort of critical
functionality. Yeah yeah, because one day

391
00:29:41,720 --> 00:29:45,119
that person has to move on work
on other things or job calls, and

392
00:29:45,119 --> 00:29:48,759
there's there's no cycles for it,
and you need something and it's not going

393
00:29:48,799 --> 00:29:52,480
to happen. Right. You certainly
weren't willing to take on or at least

394
00:29:52,480 --> 00:29:55,559
contribute, Like that's the whole Thing's
like a it doesn't have to be money.

395
00:29:55,559 --> 00:29:57,759
It could also be time. Like
there are a bunch of ways to

396
00:29:57,759 --> 00:30:02,759
do this. Yeah. One thing
that we did here at dot and Nick

397
00:30:02,799 --> 00:30:07,200
when it was just a pure open
source project is we would say, like

398
00:30:07,240 --> 00:30:11,400
you could donate. There was there
wasn't options for people to donate to the

399
00:30:11,440 --> 00:30:14,519
project, and they would say,
well, my company can't really donate,

400
00:30:14,680 --> 00:30:18,359
you know, if you had a
commercial license and we'd buy it, because

401
00:30:18,400 --> 00:30:22,440
that's like a traditional sort of procurement
purchasing kind of process that companies can do.

402
00:30:22,440 --> 00:30:27,759
Donating to things is not. It's
kind of like a foreign concept for

403
00:30:27,799 --> 00:30:32,799
a lot of corporate entity. Yeah, I don't know how to put that

404
00:30:32,880 --> 00:30:37,079
through my payment chain. Now,
that's more of a question of getting up

405
00:30:37,079 --> 00:30:40,119
to the CFO and saying, let's
build a mechanism for this, which can

406
00:30:40,200 --> 00:30:42,960
be done. It's just that most
people think the CFO, you know,

407
00:30:44,480 --> 00:30:48,279
lives on clouds and is unapproachable.
Right, there's a palace guard there that

408
00:30:48,279 --> 00:30:52,119
will stab you, and so you
know, you just follow the practices or

409
00:30:52,119 --> 00:30:55,640
replace. The idea of creating new
business flows is beyond most folks. That's

410
00:30:55,680 --> 00:30:59,440
not what they want to do.
And yeah, so I appreciate the idea

411
00:30:59,480 --> 00:31:03,720
of just creating a something that will
fit into the existing payment system, makes

412
00:31:03,759 --> 00:31:08,279
life better. It's just easy to
do, Sean, when I maybe we

413
00:31:08,279 --> 00:31:11,799
should take a break now, but
I have a question for us. Let's

414
00:31:11,799 --> 00:31:14,160
do that. Let's take a break, and we'll be right back with Sean

415
00:31:14,240 --> 00:31:22,000
Walker after this very important message,
and we're back stottnet Rocks. I'm Carl

416
00:31:22,039 --> 00:31:26,000
Franklin. That's Richard Campbell, hey, and that's Sean Walker. We're talking

417
00:31:26,000 --> 00:31:29,839
about Octane and open source and all
that good stuff. I was looking at

418
00:31:29,880 --> 00:31:34,640
the website earlier this morning and looking
for a documentation that a developer would use,

419
00:31:36,079 --> 00:31:41,039
and I ended up in a repo
that wasn't like an MD files or

420
00:31:41,079 --> 00:31:45,000
anything that I could read. It
was code, And then it said something

421
00:31:45,000 --> 00:31:51,039
about the documentation is generated, and
I wondered, if that is generated for

422
00:31:51,519 --> 00:31:55,240
my app that I'm going to build
with Octane, or if that's the Octane

423
00:31:55,319 --> 00:31:59,039
docs and how do I actually figure
out how to use this thing? Yeah,

424
00:31:59,079 --> 00:32:07,920
so that's a good example of where
open source projects often fall short in

425
00:32:07,160 --> 00:32:13,640
providing sort of the services around the
project that some people are looking for and

426
00:32:13,720 --> 00:32:20,680
it's very difficult to encourage people to
contribute to documentation. For whatever reason,

427
00:32:21,200 --> 00:32:24,079
I've been on the Octane project.
I've been hoping for you know, the

428
00:32:24,119 --> 00:32:28,519
last three or four years, that
people could step up and provide assistance in

429
00:32:28,559 --> 00:32:30,319
that area, but nobody does.
And it was the same without and new.

430
00:32:30,400 --> 00:32:34,200
So I feel like this is just
an area where, you know,

431
00:32:34,319 --> 00:32:37,079
in open source, it attracts more
of a developer crowd. They want to

432
00:32:37,079 --> 00:32:40,519
write code, they want to maybe
test code, they don't want to write

433
00:32:40,519 --> 00:32:45,200
docs. So this is another reason
why I feel like I need to create.

434
00:32:45,720 --> 00:32:49,400
In order to get serious with an
open source project, you do need

435
00:32:49,440 --> 00:32:52,160
to provide dedicated, paid resources to
do some of this work. Right,

436
00:32:52,200 --> 00:32:58,039
I'm going to pay a tech writer
to write docs ultimately, and that's just

437
00:32:58,119 --> 00:33:00,160
what's going to be required in order
to move the next level or yeah,

438
00:33:00,240 --> 00:33:02,759
or it's just not going to happen. I mean, there's just reality.

439
00:33:02,920 --> 00:33:07,319
Yeah, yeah, yeah, you're
right. I mean it's a it's a

440
00:33:07,319 --> 00:33:10,519
it's a limitation. And if you
look at a lot of open source projects,

441
00:33:12,480 --> 00:33:17,680
yeah, you're going to read I'm
finding goods. Yeah yeah. But

442
00:33:17,680 --> 00:33:22,680
but and to that point, it's
like you often see this absurdity in the

443
00:33:22,720 --> 00:33:23,799
open source community. It's like,
why would I pay that guy you know,

444
00:33:23,960 --> 00:33:27,000
just going to spend the money.
It's like, now the most likely

445
00:33:27,000 --> 00:33:30,359
thing is going to do is go
spend it on people that will do stuff

446
00:33:30,559 --> 00:33:34,839
they're not going to do, right, Yeah, yeah, like invested into

447
00:33:34,880 --> 00:33:38,519
their product to make it better for
everyone. Yeah yeah. Yeah. This

448
00:33:38,599 --> 00:33:42,720
isn't buy me a cup of coffee
kind of thing. Yeah yeah. But

449
00:33:43,039 --> 00:33:45,599
it's the point, like there's a
lot They've always got this long list list

450
00:33:45,640 --> 00:33:49,839
of things that need to get done, and you can only do so many

451
00:33:49,880 --> 00:33:52,359
of them, and there's only certain
ones that you're good at too, you

452
00:33:52,400 --> 00:33:57,000
know, like especially if it's a
sole maintainer, like they have a particular

453
00:33:57,039 --> 00:34:01,400
skill set. It's not necessarily comprehensive. Writing Documentation is a separate skill and

454
00:34:01,559 --> 00:34:06,960
almost incompatible in some respects. It's
hard to be you know, effective at

455
00:34:07,039 --> 00:34:10,800
running a project and also be effective
at that much less you know, training

456
00:34:10,840 --> 00:34:15,920
materials and demos and samples, like
all of these different skills that come into

457
00:34:16,000 --> 00:34:21,320
play. Yeah. I think that
was a large topic of my presentation that

458
00:34:21,480 --> 00:34:25,760
in January was if you're approaching an
open source project, you should be thinking

459
00:34:25,800 --> 00:34:30,800
about it as if you were starting
a business. Think about all the things

460
00:34:30,800 --> 00:34:35,119
that go into starting a business,
right if you're not prepared to follow through

461
00:34:35,119 --> 00:34:37,119
on those things, And maybe starting
an open source project is also not a

462
00:34:37,119 --> 00:34:43,000
great idea. Yeah, otherwise you're
just going to get buried. Yeah,

463
00:34:43,119 --> 00:34:45,800
and they and the open source maintainer
again it can do all the thing is

464
00:34:45,840 --> 00:34:51,679
just as mythical as the full stack
developer, right, like you, nobody's

465
00:34:51,719 --> 00:34:55,280
good at everything. It shouldn't work
that way, So what some parts of

466
00:34:55,280 --> 00:35:00,079
it are going to fall down unless
you get some help. Yeah. You

467
00:35:00,199 --> 00:35:04,199
run into time constraints as well,
which is you can't do it. He

468
00:35:04,360 --> 00:35:07,519
be everywhere, You can't do all
things. Yeah. And it's also interesting

469
00:35:07,559 --> 00:35:16,239
because even if you do start attracting
a decent group of contributors, like Octane

470
00:35:16,360 --> 00:35:21,760
has had more than forty contributors over
time. Now, some of them,

471
00:35:22,000 --> 00:35:24,320
you know, just submit you know, a few little poll requests here and

472
00:35:24,360 --> 00:35:29,920
there. Others have done more significant
work. But in all those cases it's

473
00:35:29,960 --> 00:35:35,760
on It's up to the maintainer to
really vet all those poll requests right interact

474
00:35:35,760 --> 00:35:39,280
with the community. It actually creates
a large amount of management work for the

475
00:35:39,320 --> 00:35:45,480
maintainer as you increase the number of
contributors, right, because it takes a

476
00:35:45,480 --> 00:35:47,920
long time before a contributor gets to
the point where you can trust that they're

477
00:35:47,920 --> 00:35:51,800
going to make all the same decisions
that you would make as a maintainer.

478
00:35:51,880 --> 00:35:53,880
Yeah. Well, and they almost
certainly won't, even when even when you

479
00:35:53,920 --> 00:35:58,239
do trust them, it's like,
I know this person take approaches this differently.

480
00:35:58,760 --> 00:36:00,639
Is that going to be a problem
here? And odd? Yeah,

481
00:36:00,639 --> 00:36:02,400
And there's a lot of people out
there. We're having this question in the

482
00:36:02,440 --> 00:36:07,960
dot net Foundation right now. People
are becoming members of the Foundation and they're

483
00:36:07,960 --> 00:36:09,360
like, we would really like to
contribute to the projects. How do we

484
00:36:09,400 --> 00:36:14,280
do that? And it's like,
well, first of all, it would

485
00:36:14,280 --> 00:36:15,679
be great if you actually, if
if there's a certain project you want to

486
00:36:15,679 --> 00:36:19,599
contribute to, start using that project, like, become a user of it,

487
00:36:19,920 --> 00:36:22,000
understand how it works, Like don't
just show up and say I want

488
00:36:22,000 --> 00:36:27,239
to write some code. Yeah,
like really understand the use cases that are

489
00:36:27,239 --> 00:36:30,519
involved here, and then you'll start
to see whether there are limitations in certain

490
00:36:30,559 --> 00:36:37,559
areas and then and then submit something
that's valuable right yeah, so yeah,

491
00:36:37,639 --> 00:36:40,440
well, and getting to that point, it's also a rush when you actually

492
00:36:40,480 --> 00:36:45,960
make those contributions successfully, like it
won't be confusing once you've done it,

493
00:36:46,599 --> 00:36:50,519
You know, like that that you're
because the amount of engagement it takes you

494
00:36:50,519 --> 00:36:52,760
get to that point where that pr
makes sense and makes contribution to the code

495
00:36:52,760 --> 00:36:58,960
base and so forth. That's the
hill you climb to be successful. Did

496
00:36:58,960 --> 00:37:02,840
you write Octane all by yourself?
A large portion of the code has been

497
00:37:02,840 --> 00:37:07,639
written by me. Yeah, there
has been a like I said, a

498
00:37:07,719 --> 00:37:12,960
number of other contributors as well that
have contributed in more, some of them

499
00:37:12,960 --> 00:37:16,559
over like over time, some of
them in bursts, like one of my

500
00:37:16,639 --> 00:37:20,800
colleagues that I worked with on dot
net Newke in fact, Charles Nurse,

501
00:37:22,079 --> 00:37:27,559
helped in making it support multiple databases
and so he did a bunch of work

502
00:37:27,559 --> 00:37:30,440
for a couple of months to get
that to happen. So that was very

503
00:37:30,480 --> 00:37:34,920
appreciated. And there's been other folks
who have been more consistent over time.

504
00:37:35,719 --> 00:37:38,320
But yeah, largely I've written a
lot of code, and these contributors are

505
00:37:38,320 --> 00:37:42,880
like, did they come in needing
a feature and so write it themselves?

506
00:37:42,920 --> 00:37:47,679
Like shape of the contributors. Yeah, sometimes that's the case. Sometimes you

507
00:37:47,679 --> 00:37:52,800
know they were trying to do something
quite unique, and the framework won't have

508
00:37:52,920 --> 00:37:57,599
the specific feature they're looking for,
so they'll create it themselves. Other times

509
00:37:58,679 --> 00:38:01,159
it'll be more that maybe I've observed
that there's, you know, a gap

510
00:38:01,280 --> 00:38:05,679
in some area, and I'll ask
if somebody's interested in filling that gap,

511
00:38:05,800 --> 00:38:10,599
right with a within some some parameters. So yeah, there's there's a few

512
00:38:10,599 --> 00:38:15,039
different ways that people can contribute.
So there is a retail version of Octane.

513
00:38:15,679 --> 00:38:20,599
There is not yet that is coming
because I only just formed Octane Labs

514
00:38:21,639 --> 00:38:28,119
just within the last month. Now, did you have customers asking you for

515
00:38:28,159 --> 00:38:30,880
a retail version of it? Like? What was the catalyst of this?

516
00:38:30,079 --> 00:38:35,320
Yeah? Yeah, so there were
folks reaching out and asking if they could

517
00:38:35,400 --> 00:38:40,480
have like support, like a licensed
version that it included support and other kind

518
00:38:40,480 --> 00:38:46,239
of features like that, or could
have assistance with implementations, right, so

519
00:38:47,039 --> 00:38:52,440
system integrator type health as well s
side side, the tech support side,

520
00:38:52,480 --> 00:38:55,480
like all valid things. So you
and that's melis must have been going on

521
00:38:55,559 --> 00:38:58,960
for quite some time that you finally
built at the point where it's like,

522
00:38:59,000 --> 00:39:01,559
I think there's a business here.
Yeah. Yeah. And then also I

523
00:39:01,559 --> 00:39:07,159
think and Carl would understand this.
Microsoft's really done a great job with this

524
00:39:07,559 --> 00:39:12,679
with Blazer, right. This journey
with Blazer has been incredible, and they

525
00:39:12,760 --> 00:39:16,000
keep adding on more capabilities as time
goes on, and so Octane has been

526
00:39:16,039 --> 00:39:20,599
able to kind of build on top
of that ride the wave sort of speak

527
00:39:20,679 --> 00:39:22,719
right, and it's sort of got
to a point now where there's a lot

528
00:39:22,760 --> 00:39:25,480
of there's a lot of interesting value
right in this, in this product,

529
00:39:25,760 --> 00:39:30,000
and I think it's like the optimal
time kind of to you know, create

530
00:39:30,000 --> 00:39:36,679
a commercial entity around it. I
am have created a I create a lot

531
00:39:36,719 --> 00:39:40,639
of repos for Blazer Train and the
dot net show just a little projects that

532
00:39:40,719 --> 00:39:45,920
I show off. And sometimes I
think to myself, should I like put

533
00:39:45,920 --> 00:39:49,599
an MIT license on this, or
you know, should I do like it

534
00:39:49,719 --> 00:39:54,159
officially? And I just never do
And I'm just wondering if that's a that's

535
00:39:54,159 --> 00:39:58,360
a good idea. I mean,
I I basically show them off in YouTube

536
00:39:58,440 --> 00:40:00,800
videos and I bring people to that, and I don't really get a lot

537
00:40:00,800 --> 00:40:07,760
of people contributing back once in a
while, but they essentially sort of public

538
00:40:07,800 --> 00:40:10,320
access then people can average the ideas
in the code. Absolutely yeah, I

539
00:40:10,320 --> 00:40:14,880
mean I'm doing it for public good, you know, I just want people

540
00:40:14,920 --> 00:40:17,800
to use it and modify it.
If they have some modifications, send it

541
00:40:17,840 --> 00:40:21,920
back. And I don't really think
anybody's going to say, you know,

542
00:40:22,039 --> 00:40:23,599
steal it and say, hey,
look at this great thing. Then I

543
00:40:23,639 --> 00:40:27,639
wrote, you know, I don't
care. I don't care about that.

544
00:40:27,760 --> 00:40:30,280
Yeah. I mean, if they're
an example and not intended to be a

545
00:40:30,320 --> 00:40:34,880
full blown product, right, then
I think you're probably taking the right path

546
00:40:34,960 --> 00:40:38,840
there and providing the most value you
can to developers. Right. They're free

547
00:40:38,880 --> 00:40:43,559
to use your ideas however they exactly. Yeah, and if they go to

548
00:40:43,559 --> 00:40:45,599
the trouble of actually turning it into
a product, well, fully on them.

549
00:40:45,679 --> 00:40:47,960
That's a lot of work. Yeah, go for it. I'm certainly

550
00:40:47,960 --> 00:40:52,239
not going to do that for a
living. Yeah, I mean, who

551
00:40:52,239 --> 00:41:00,679
would do that? Sean write software
and for a living, and that's crazy

552
00:41:00,719 --> 00:41:05,800
talk. It does feel that way
sometimes, and I did after I got

553
00:41:06,280 --> 00:41:07,679
done with dot at Nuke. I
think I did tell myself at one point,

554
00:41:07,719 --> 00:41:13,320
yeah, I'm not doing that again. So. I mean, you

555
00:41:13,559 --> 00:41:19,199
did your blog posts just a few
days ago about creating octane labs and yeah

556
00:41:19,320 --> 00:41:22,920
and dead answers and so forth.
Have you had much response yet, had

557
00:41:22,960 --> 00:41:27,599
the pitchforks come out? No pitchforks
at all actually, and that's one thing

558
00:41:27,639 --> 00:41:30,320
that's been interesting. Yeah. So
I don't know if it's just the general

559
00:41:30,400 --> 00:41:37,119
feeling around open sources starting to shift, right. So, I remember the

560
00:41:37,119 --> 00:41:43,679
commercialization of dotnet Nuke was much more
tense, more that there was more resistance

561
00:41:43,719 --> 00:41:47,480
in the community. Um this the
idea of having a company that was somehow

562
00:41:47,519 --> 00:41:53,800
associated with this open source project was
like it really rubbed people the wrong way.

563
00:41:53,840 --> 00:42:00,280
But in this case it's been very
fluid. Um. Yeah. I

564
00:42:00,320 --> 00:42:04,800
think that people are maybe it's coming
to the realization that in order to have

565
00:42:05,159 --> 00:42:09,840
great software, you sometimes need to
have a resource model for it, right,

566
00:42:09,840 --> 00:42:14,039
so that it can provide the services
people need to make a living.

567
00:42:14,840 --> 00:42:21,079
Yeah, like con and it's reasonable
to do so. And arguably like Octane's

568
00:42:21,079 --> 00:42:24,519
about to get better because it's got
the full attention of Sean Walker, and

569
00:42:25,440 --> 00:42:30,159
you're also going to get As people
pay for this product, they're going to

570
00:42:30,159 --> 00:42:34,000
put new pressures on you as well, and that will shape the product also,

571
00:42:34,039 --> 00:42:37,880
it'll make the product better. That
definitely happened in DNN. So as

572
00:42:37,880 --> 00:42:42,000
soon as we had a commercial license, then there were certain types of companies

573
00:42:42,320 --> 00:42:45,159
that maybe had been toying with the
idea of using it. But then they

574
00:42:45,199 --> 00:42:50,639
became real users and they they don't
want to share their ideas about how to

575
00:42:50,639 --> 00:42:53,199
make the product better in a public
form, so they would like to have

576
00:42:53,239 --> 00:42:58,000
a private place right to interact with
you. And so a lot of great

577
00:42:58,039 --> 00:43:01,159
ideas came through those channels, right
yeah, and they were real ideas that

578
00:43:01,199 --> 00:43:06,119
could be put into the field.
Like this is no speculation. This is

579
00:43:06,199 --> 00:43:07,840
you know, not just dashing an
issue. It's like, Okay, we've

580
00:43:07,880 --> 00:43:12,159
gone this far with your product.
Here's the walls we're hitting. How do

581
00:43:12,199 --> 00:43:16,800
we get past these? Exactly?
Yeah, just like any commercial software product,

582
00:43:16,840 --> 00:43:21,760
right, they get better based on
the usage and based on the feedback

583
00:43:21,760 --> 00:43:24,480
that you get from the community.
And you don't always get the full feedback

584
00:43:24,519 --> 00:43:28,400
in an open source project. A
lot of people are just driving by.

585
00:43:28,719 --> 00:43:30,679
They'll use it, they'll run into
a wall, and then they won't tell

586
00:43:30,719 --> 00:43:34,840
you that they don't. They just
move on. Yeah, yeah, yeah,

587
00:43:34,920 --> 00:43:39,360
next thing. So yeah, it's
interesting. The financial commitment is an

588
00:43:39,400 --> 00:43:45,400
interesting element of engagement. You know. I've certainly run into that on the

589
00:43:45,519 --> 00:43:49,840
ht box side, where giving away
the software is as much a problem as

590
00:43:49,880 --> 00:43:53,920
a benefit, because it's hard for
people to value free software. Yeah,

591
00:43:54,119 --> 00:43:59,920
it's the same as with your conference
activities. To a free conference versus a

592
00:44:00,039 --> 00:44:02,920
paid conference, you get a whole
different type of attendee. I get it.

593
00:44:02,960 --> 00:44:07,159
You had fifty percent fall off,
right Like, so you know you've

594
00:44:07,199 --> 00:44:10,360
gone and gotten food through sponsorship and
then half of it doesn't get eaten when

595
00:44:10,519 --> 00:44:14,000
when things are free, like in
some ways, I'm like, at least

596
00:44:14,239 --> 00:44:19,400
charge one hundred bucks enough that people
will show up, right just because of

597
00:44:19,480 --> 00:44:23,719
you know that kind of pain.
Um, yeah, I'm I'm with you.

598
00:44:23,800 --> 00:44:29,039
It's like money is also an expression
of intent. It is. It's

599
00:44:29,039 --> 00:44:31,760
like, if you're gonna have a
you know, a party, and you

600
00:44:31,960 --> 00:44:35,880
put an event right thing out there
something like that, and you want to

601
00:44:35,960 --> 00:44:39,400
charge money, don't say, you
know, twenty dollars at the door or

602
00:44:39,519 --> 00:44:44,320
ten dollars at the door, because
people will reserve a spot, you'll go

603
00:44:44,400 --> 00:44:47,119
buy all your food and party stuff, and then nobody will show up because

604
00:44:47,199 --> 00:44:52,480
they didn't have any commitment in any
skin in the game ticket not enough.

605
00:44:52,760 --> 00:44:54,760
Well, sell tickets ahead of time. Just don't say bring the money at

606
00:44:54,760 --> 00:44:59,920
the door, right Yeah. I
learned that the hard way too, Yeah

607
00:45:00,880 --> 00:45:02,239
yeah, yeah. And again it's
like, how do you get the commitment

608
00:45:02,280 --> 00:45:06,519
from it. The real the real
question is how the product ultimately gets shaped

609
00:45:06,559 --> 00:45:09,440
and things have changed, Like I
gotta think there's areas of development that you

610
00:45:09,480 --> 00:45:15,320
wouldn't do unless you had the commercial
aspects, just because they invariably have an

611
00:45:15,320 --> 00:45:19,440
expense, right, like the old
cloud proxy thing. Like and I'm an

612
00:45:19,480 --> 00:45:23,519
admirer of the home Assistant open source
project and how they transform themselves because it

613
00:45:23,639 --> 00:45:29,719
became apparent they needed a cloud proxy
and charging people five bucks a month for

614
00:45:29,760 --> 00:45:34,559
the cloud proxy change the whole dynamic. It brought a lot of money to

615
00:45:34,639 --> 00:45:37,079
the equation because it made and it
made a huge difference there, Like it

616
00:45:37,119 --> 00:45:40,239
doesn't have to be a complicated thing, but it's also a thing that is

617
00:45:40,360 --> 00:45:46,159
not free because it can't be operated
for free, and that sort of just

618
00:45:46,360 --> 00:45:51,440
shapes the equation. Now. It's
like your customer relationship changes, the opportunity

619
00:45:51,440 --> 00:45:55,599
space changes, the expectations change,
and generally for the better if you're prepared,

620
00:45:57,000 --> 00:45:59,239
Like I have every confidence in you, Sean. We've don't showed it

621
00:45:59,280 --> 00:46:01,239
a long time, You've been down
this road before, but I think a

622
00:46:01,239 --> 00:46:06,679
lot of maintainers looking for I really
want to do this project as a living

623
00:46:06,800 --> 00:46:09,039
just don't have an idea of what's
going to happen to you right when you

624
00:46:09,079 --> 00:46:14,840
turn when you switch commercial, right, yeah, Yeah, And it is

625
00:46:14,840 --> 00:46:22,280
a matter of thinking about creating a
real business around it and and what's entailed

626
00:46:22,320 --> 00:46:23,280
in doing that. And I guess
you're right A lot of a lot of

627
00:46:23,320 --> 00:46:27,960
maintainers are just developers who have always
just worked for other companies, yeah,

628
00:46:28,000 --> 00:46:30,679
and don't have any insight into,
you know, the business aspects of that.

629
00:46:31,519 --> 00:46:35,199
Yeah. And I would have to
say even when I got like when

630
00:46:35,199 --> 00:46:37,480
I transitioned in Dot and Nuke,
I was pretty naive, right too,

631
00:46:38,400 --> 00:46:43,840
all that was involved. It was
a lot. It was also very early

632
00:46:43,920 --> 00:46:46,320
days, like open source wasn't really
a thing in the in the Microsoft community

633
00:46:46,400 --> 00:46:51,199
when you guys were first headed down
that like that was part of the problem,

634
00:46:51,280 --> 00:46:54,760
I thought, and you make mistakes, Yeah, yeah, it was.

635
00:46:58,119 --> 00:47:02,039
It wasn't a friendly environment towards open
source at all, definitely from Microsoft,

636
00:47:02,079 --> 00:47:05,440
although there was certain pockets, right, Like there was always the folks

637
00:47:05,440 --> 00:47:08,800
like Scott Guthrie, that team that
was very pro open source, right,

638
00:47:08,800 --> 00:47:13,039
and so they're the ones who sponsored
gotten that knuke great in the early days,

639
00:47:14,239 --> 00:47:19,920
Hanselman and Hack and Connery and like
the Ninja Army. Yeah, yeah,

640
00:47:20,079 --> 00:47:23,800
they transformed the company kind of from
the inside out, right, Yeah,

641
00:47:24,079 --> 00:47:27,559
some ways. You know, someday
I might actually finish the book that

642
00:47:27,599 --> 00:47:30,840
explains a lot of that stuff.
It's a very interesting set of forces,

643
00:47:30,920 --> 00:47:35,000
Like Richard, I am to come
there and like, babysit you to write

644
00:47:35,039 --> 00:47:37,760
this book. Do I need to
bring some whiskey? I think I need

645
00:47:37,880 --> 00:47:45,440
riddle it actually, But you know, there's this great moment and I've never

646
00:47:45,480 --> 00:47:51,119
fully written this part out where leadership
has figured out that it's essential, and

647
00:47:51,400 --> 00:47:53,519
there's folks down in the trenches that
have figured out that it's essential, but

648
00:47:53,559 --> 00:47:57,800
the folks in the middle still haven't
gotten it yet. And there's this sort

649
00:47:57,840 --> 00:48:00,639
of pressure. How do you push
in, Like you don't want to dictate

650
00:48:00,679 --> 00:48:02,639
from on high, You wanted to
come from grass roots, but they were

651
00:48:02,679 --> 00:48:06,960
resisting all that time. Like this
is this fascinating moment where it's like,

652
00:48:07,239 --> 00:48:09,519
you know, two thirds of you
guys are on the same side. You

653
00:48:09,639 --> 00:48:15,599
just don't know. Interesting, but
that seemed to happen when Satya kind of

654
00:48:15,719 --> 00:48:21,880
came in right that maybe it was
coincidental that had happened at that time,

655
00:48:21,880 --> 00:48:24,880
but that seemed to be there was
a big shift that happened. Yeah,

656
00:48:25,159 --> 00:48:29,920
we definitely then the leadership was in
that space. And one would argue that

657
00:48:30,199 --> 00:48:35,159
that Bomber realized that he was an
obstacle to the new company and so needed

658
00:48:35,199 --> 00:48:37,840
to move on too. But this
really comes down to the shift of the

659
00:48:37,880 --> 00:48:42,599
cloud, because the shift of the
cloud means I just want workloads and if

660
00:48:42,599 --> 00:48:45,840
some of them are open source whatever, Right, We're not a Windows companymore,

661
00:48:45,840 --> 00:48:49,519
We're a cloud company. And so
you know, and you look at

662
00:48:49,519 --> 00:48:52,079
it now, like forty percent of
there were cloathes or Linux. Yeah,

663
00:48:52,280 --> 00:48:55,719
because who cares? They make their
own flavor or Linux. For crying out

664
00:48:55,719 --> 00:49:00,119
loud, there's like half a diven
different flavors of Linus you can download from

665
00:49:00,119 --> 00:49:07,199
the Windows Store. The Windows Store
at a different time it is from when

666
00:49:07,199 --> 00:49:09,679
we started. I was actually talking
to my brother yesterday because and he worked

667
00:49:09,719 --> 00:49:17,559
with me in DNN Corp. And
we got a lot of partnership value from

668
00:49:17,559 --> 00:49:22,159
Microsoft in like the twenty like two
thousand and nine through twenty and twelve era

669
00:49:22,559 --> 00:49:28,639
because they were still fixated on competing
with Linux and Php and WordPress, you

670
00:49:28,719 --> 00:49:31,000
know, all of those, yes, and they wanted to showcase that there

671
00:49:31,000 --> 00:49:36,039
were options available on Windows, like
native options, right. Dot Nuke was

672
00:49:36,039 --> 00:49:40,559
one of those options, and so
we got a lot of marketing visibility as

673
00:49:40,559 --> 00:49:44,440
a result of that. Right,
But yeah, that is not the world

674
00:49:44,440 --> 00:49:46,239
we're in anymore. No, not
at all. Right now, it's embrace

675
00:49:46,320 --> 00:49:51,159
everyone, which is great. Well
I'm not saying that's a bad thing.

676
00:49:51,360 --> 00:49:54,559
And also trying to interoperate too,
That's all part of it is like can

677
00:49:54,559 --> 00:49:57,800
we all work and play well with
each other? Like in some ways the

678
00:49:57,800 --> 00:50:01,079
operating systems just kind of become irrelevant. I don't care. Just can you

679
00:50:01,159 --> 00:50:05,880
can you consume my Jason feter or
not? You know? That's what that's

680
00:50:05,880 --> 00:50:10,440
what as matters. I had the
surreal experience of having this conversation with my

681
00:50:10,480 --> 00:50:16,039
wife which culminated in her admitting she
didn't know what the operating system was,

682
00:50:17,039 --> 00:50:21,960
you know, and and I think
most users don't know Windows. What's Windows?

683
00:50:22,239 --> 00:50:23,960
Kind of a it's a good day, isn't it? Yeah? Because

684
00:50:23,960 --> 00:50:28,199
it is a releavant. Well,
what's what's Windows? Windows? You know?

685
00:50:28,360 --> 00:50:30,039
The operating system? What's that?
I mean? Is that the my

686
00:50:30,119 --> 00:50:35,159
tabs? Or is it the things
on my desktop? Is that Windows?

687
00:50:35,320 --> 00:50:39,840
Yeah? You know, it's hard
it's hard to know. Yeah, you

688
00:50:39,840 --> 00:50:44,480
know that desktop Windows. If you
weren't around you know, and you didn't

689
00:50:44,519 --> 00:50:50,280
understand what part of the technical terms
the hardcore Mac users that's Windows. Yeah,

690
00:50:50,320 --> 00:50:54,679
that's true. I love telling this
story when I when I was younger,

691
00:50:54,960 --> 00:50:59,280
um, because I was a PC
guy in this Mac guy came up

692
00:50:59,280 --> 00:51:02,519
to me, was learning programming stuff. What what are these things called files?

693
00:51:05,119 --> 00:51:07,920
What's a file? You didn't know
because you know his environment was draggy,

694
00:51:07,960 --> 00:51:13,199
droppy and documents and whatever. Well, that's dial the norm. Most

695
00:51:13,239 --> 00:51:15,159
people don't know where they're stuff stored
anymore because it just gets stored and they

696
00:51:15,159 --> 00:51:19,159
can find it when they need it. Yeah. The idea that lives on

697
00:51:19,199 --> 00:51:22,920
a Google drive or a one drive
or any of those. How many Who

698
00:51:22,159 --> 00:51:28,920
doesn't matter? Who makes good hard
disk hierarchies anymore? Right, Yeah,

699
00:51:29,079 --> 00:51:32,960
nobody sort of thing. Yeah,
even when I had folders to Google Drive

700
00:51:34,039 --> 00:51:37,679
or something like that, I don't. I don't make folders and subfolders and

701
00:51:37,679 --> 00:51:39,639
stuff. I just make documents because
you can just find him by searching.

702
00:51:40,119 --> 00:51:43,840
Yeah, it doesn't matter, It
doesn't matter. On the on the topic

703
00:51:43,880 --> 00:51:45,280
of books, So you've been working
on a book a long time, Richard.

704
00:51:45,519 --> 00:51:50,800
Yeah, but um, have you
noticed that there seems to be a

705
00:51:50,880 --> 00:51:54,679
lot more technical books coming out again? Like it felt like I thought books

706
00:51:54,679 --> 00:51:59,960
were going away, but I keep
seeing more and more announcements on things like

707
00:52:00,119 --> 00:52:05,119
LinkedIn about people writing books. I
think the publication costs have dropped enough now

708
00:52:05,280 --> 00:52:08,480
that they the then minimum number of
sales for it to be worthwhile for the

709
00:52:08,480 --> 00:52:13,519
publisher is small. Well, when
you say publisher, are most people self

710
00:52:13,559 --> 00:52:16,159
publishing? Now? Some folks are, But the drive you're seeing right now,

711
00:52:16,199 --> 00:52:21,199
it's like I get a lot of
messages from different publishers that now have

712
00:52:21,320 --> 00:52:24,360
new engines and are keen to find
authors of things. Yeah, I mean

713
00:52:24,360 --> 00:52:29,039
I most likely will self published the
history of dot net. Yeah, I

714
00:52:29,079 --> 00:52:31,079
hadn't really excited. I think it's
become pretty clear that most people just want

715
00:52:31,119 --> 00:52:36,360
the audiobook anyway, I want the
coffee table book with the glossy photos and

716
00:52:36,400 --> 00:52:39,639
everything, totally. Yeah, they
reaction to Really, nobody's going to read

717
00:52:39,679 --> 00:52:44,159
the physical book. What they want
is to spine in their video shop behind

718
00:52:44,199 --> 00:52:47,400
them, right that it says history
down, that's what the library. Yeah,

719
00:52:47,599 --> 00:52:50,880
and then it may be on their
kindle and it might be you know,

720
00:52:51,000 --> 00:52:52,960
in there and on their phone.
Yeah, and that's really what's going

721
00:52:53,000 --> 00:52:57,719
to happen, and that and the
director's commentary, I'll tell all the ridiculous

722
00:52:57,760 --> 00:53:05,079
stories of trying to assemble the stupid
Yeah. All right, well, where

723
00:53:05,519 --> 00:53:07,159
where are we going next? Here? Sean? What's what's next for you?

724
00:53:09,679 --> 00:53:15,800
Like? So this release for dot
at seven obviously coming up this month,

725
00:53:15,840 --> 00:53:20,119
but then moving towards course dotin at
eight. There's a lot of changes

726
00:53:20,320 --> 00:53:24,119
coming with Blazer, a lot of
interesting possibilities with this new server side rendering

727
00:53:24,159 --> 00:53:28,840
model, right, So I'm trying
to wrap my head around that because there's

728
00:53:28,880 --> 00:53:34,760
some things that we did in Octane
which are you know, pushing the envelope

729
00:53:34,760 --> 00:53:37,840
a little, Like, for example, we don't use the default Blazer router.

730
00:53:37,119 --> 00:53:42,480
We have our own custom router,
and there are you know, certain

731
00:53:42,519 --> 00:53:46,320
dependencies that have kind of emerged over
time that are dependent on the default routers.

732
00:53:46,320 --> 00:53:51,159
So we have to figure out how
to reconcile those differences to unleash this

733
00:53:51,239 --> 00:53:58,320
new functionality. So how have you
found the process of updating Blazer projects or

734
00:53:58,360 --> 00:54:01,800
any project for that matter. M
one version of dot net to the next,

735
00:54:01,800 --> 00:54:06,440
and I don't mean dot Net Windows
Framework. Um, you know,

736
00:54:06,559 --> 00:54:12,400
done Core from say done or three
to five to six to seven? How

737
00:54:12,480 --> 00:54:15,159
many of those have you done?
And have you found them as easy as

738
00:54:15,159 --> 00:54:17,199
everybody says they are. Yeah,
so I've done all the full sort of

739
00:54:17,440 --> 00:54:21,960
you know, version upgrades, and
it's been seamless, to be honest,

740
00:54:22,360 --> 00:54:27,880
like, and that's pretty amazing considering
that Octane is a pretty large codebase at

741
00:54:27,920 --> 00:54:31,000
this point. UM. But like, for example, moving from six to

742
00:54:31,079 --> 00:54:36,800
seven was like just changing the references. That's there was not a single breaking

743
00:54:36,880 --> 00:54:40,440
change. Wow, And yeah there
was, and I think even from five

744
00:54:40,519 --> 00:54:46,960
to six it was like very minimal
animal yeah, yeah, yeah, So

745
00:54:47,400 --> 00:54:52,760
Microsoft's done a very good job at
that um And in fact, it's it's

746
00:54:52,800 --> 00:54:57,559
interesting because when I talk to other
folks that are in other ecosystems like Angular,

747
00:54:58,480 --> 00:55:04,679
especially Angular, they seem to be
really frustrated at the breaking changes that

748
00:55:04,760 --> 00:55:08,679
happened constantly in every release. Right, So this is a real advantage I

749
00:55:08,719 --> 00:55:13,800
think for Blazer, certainly, Angular
one to two was the most painful,

750
00:55:13,840 --> 00:55:16,320
I think, wasn't it. I
think lately it's been super painful even with

751
00:55:16,760 --> 00:55:22,239
recent versions. Jeez, what are
they out at sixteen? Like this should

752
00:55:22,280 --> 00:55:25,199
be smoothed that by now, but
I would argue that Blazer being such a

753
00:55:25,280 --> 00:55:30,320
young product, it would be more
likely to twitch more. Agreed, But

754
00:55:30,360 --> 00:55:35,639
I think you're also dealing with a
very experienced team that does know how to

755
00:55:35,760 --> 00:55:38,320
smooth a lot of this. Yes, I was going to say that,

756
00:55:38,440 --> 00:55:43,079
you know, when Steve Sanderson had
that first demo, you look at the

757
00:55:43,119 --> 00:55:45,960
first demo, not a whole lot
has changed in the component model since that

758
00:55:46,159 --> 00:55:51,239
very first demo he did at NDC. Granted it was pretty simple, but

759
00:55:51,360 --> 00:55:53,400
I mean, and things have been
added to it, but it still kind

760
00:55:53,400 --> 00:55:57,480
of looks the same, and the
underlying cobase has been completely changed, but

761
00:55:57,559 --> 00:56:00,039
they have not moved away from the
core meta. Yes, I don't know

762
00:56:00,119 --> 00:56:02,960
the Blazer United is even on your
radar, you Sean, because it's not

763
00:56:04,119 --> 00:56:07,760
really Yeah no, that's what I
was talking to about the servers, Yeah,

764
00:56:07,840 --> 00:56:12,599
because I think they're moving away from
that United name. Yeah, it's

765
00:56:12,639 --> 00:56:17,400
like a United concept now it's going
to be yeah yeah, yeah, But

766
00:56:17,480 --> 00:56:22,400
yeah, I'm excited about that because
like in a in an application like Octane,

767
00:56:22,440 --> 00:56:29,239
there are certainly pages where there is
just content that could be rendered and

768
00:56:29,280 --> 00:56:32,760
not necessarily anything that's interacting, and
that's a perfect candidate for server side rendering.

769
00:56:34,400 --> 00:56:37,880
Yeah, so yeah, I think
it's a good fit. Yeah.

770
00:56:37,880 --> 00:56:39,960
Why I push that stuff to the
client, you'll get you'll get good results

771
00:56:40,199 --> 00:56:45,400
without doing that. So just it's
just the ability for you as the manager

772
00:56:45,440 --> 00:56:47,880
of that CMS to go through today, how that can be server that's best

773
00:56:47,880 --> 00:56:52,840
client, you know, and so
on and yeahs and that should produce better

774
00:56:52,880 --> 00:56:55,280
performance of the application in general because
it doesn't have to render things twice.

775
00:56:55,599 --> 00:57:00,840
Yeah. Yeah. And it's to
be interesting. Yeah, it's going to

776
00:57:00,880 --> 00:57:05,159
be. It's a good ride.
And do you think people are finally gotten

777
00:57:05,199 --> 00:57:08,559
past the idea that this is the
next silver Light Yeah? God, thank

778
00:57:08,599 --> 00:57:13,559
god for that. You still every
once in a while I still get some

779
00:57:13,639 --> 00:57:17,440
pushback on that and I have to
explain it all over again. Yeah,

780
00:57:17,840 --> 00:57:22,199
I mean people are still angry.
It's remarkable as long ago as it was,

781
00:57:22,599 --> 00:57:27,119
But that's because Microsoft has a history
of always building paths for developers going

782
00:57:27,119 --> 00:57:32,039
forward, and silver LIGHTY is just
glaring hole of except there where you did

783
00:57:32,079 --> 00:57:37,920
nothing. You basically abandoned us.
We're five or six years into this now,

784
00:57:37,960 --> 00:57:44,440
so it's pretty clear that there's like
a roadmap. Yeah, And of

785
00:57:44,440 --> 00:57:47,639
course the difference between the plug in
model and web assembly is remarkable. And

786
00:57:47,960 --> 00:57:52,719
you know, the thing is is
that maybe the real thing about silver Light

787
00:57:52,760 --> 00:57:57,199
to what would have prevented that was
making it in the first place, because

788
00:57:57,239 --> 00:58:00,039
at the time, the plug in
model was the only way to do it

789
00:58:00,519 --> 00:58:05,320
in the browser, and it wasn't
secure and it wasn't safe. And should

790
00:58:05,360 --> 00:58:07,800
they have known that, you know
that, I don't know. Yeah,

791
00:58:07,840 --> 00:58:10,800
they were competing for against flash,
right, like that was what they're right,

792
00:58:10,880 --> 00:58:15,920
we're concerned about it, and it
got transformed into something more. But

793
00:58:16,039 --> 00:58:19,599
I mean, you know, that's
in twenty ten. In April, it

794
00:58:19,719 --> 00:58:24,320
was the way to build enterprise out
and by November it was nowhere, basically

795
00:58:24,679 --> 00:58:29,639
disappeared, but not even announce just
yeah, there were no sessions at PDC

796
00:58:29,960 --> 00:58:31,960
like that was a thing. But
that's also when they were freaking out about

797
00:58:31,960 --> 00:58:35,639
what would become win A, so
they were all pretty locked out. I

798
00:58:35,679 --> 00:58:37,159
mean, it was a very bizarre
time. I don't expect to be repeated,

799
00:58:37,159 --> 00:58:40,119
No, I don't. I don't
see that happening again. But I

800
00:58:40,119 --> 00:58:43,920
mean, look at the differences in
Blazer too. Ye open source right,

801
00:58:44,239 --> 00:58:46,760
like Microsoft could walk away from it, but the code ain't going to disappear

802
00:58:47,079 --> 00:58:55,440
and everybody uses everybody embraces web assembly, everybody even Safari. Yeah finally,

803
00:58:55,519 --> 00:58:59,880
but yes, and all of that
is true. I still think a lot

804
00:59:00,000 --> 00:59:04,000
out of the folks that came up
are coming out of web Forms are enamtor

805
00:59:04,039 --> 00:59:08,559
Blazer because it's the all C sharp
experience. Y Yeah. It's surprising how

806
00:59:08,599 --> 00:59:15,360
many web forms applications are still out
there yep. And millions don't have I

807
00:59:15,440 --> 00:59:19,000
don't think really a good path forwards. No, I just wonder how many

808
00:59:19,000 --> 00:59:22,480
of them are no longer buildable.
Why, like the companies depend on them,

809
00:59:22,480 --> 00:59:24,519
but yeah, the code basis,
they don't have a working de environment

810
00:59:24,519 --> 00:59:28,440
for We did a new version of
an app for that was a web forms

811
00:59:28,480 --> 00:59:31,440
app for a customer and when you
know, I said, so, so

812
00:59:31,599 --> 00:59:36,360
what's your timeline? He's like,
well, I'm not so sure this is

813
00:59:36,360 --> 00:59:40,159
gonna make it through the winter.
Like you know, it's running with duct

814
00:59:40,199 --> 00:59:45,760
tape and bailing wire crashes often,
and you know, we may not see

815
00:59:45,760 --> 00:59:47,639
it towards the end of the couple
of months. There's a couple of assists

816
00:59:47,639 --> 00:59:52,000
admins that have written a whole bunch
of scripts to keep rebooting things or restarting

817
00:59:52,400 --> 00:59:55,760
repairing stuff and so forth, and
they're all tired. Yeah I know,

818
00:59:58,400 --> 01:00:00,519
yeah, I feel sorry for the
people and had to deal with that stuff

819
01:00:00,599 --> 01:00:06,519
back then. Now it's a kickwalk
compared to that. I still keep running

820
01:00:06,519 --> 01:00:08,840
across dot at nukes sites out in
the wild. In fact, like my

821
01:00:09,000 --> 01:00:13,960
local municipality where I live, they
have a dotinet nukes site running their public

822
01:00:14,039 --> 01:00:20,119
utilities site still and probably a vintage
site like A four like probably yeah,

823
01:00:20,239 --> 01:00:23,039
yeah, so well, any this
the thing is you find these little nooks

824
01:00:23,039 --> 01:00:29,000
and crannies of unmaintained software that the
company has a dependency on there, you

825
01:00:29,039 --> 01:00:32,320
know, way out of date on
versions, probably don't have a working dev

826
01:00:32,400 --> 01:00:35,920
environment, more that they couldn't build
it if they even wanted to, much

827
01:00:36,039 --> 01:00:39,119
less that you'd have any chance I'm
doing. Do you have an upgrade path

828
01:00:39,320 --> 01:00:45,000
for dot net nuke users to get
their content running and octane. Not a

829
01:00:45,000 --> 01:00:49,679
automated one, but I believe there
could definitely be one created because, like

830
01:00:49,679 --> 01:00:53,559
I said, the data models are
very similar, so the data would move

831
01:00:53,599 --> 01:00:57,920
across. But the apps, like
if you have custom modules that you wrote

832
01:00:58,039 --> 01:01:00,480
for of course web forms, they
would have to be rewrit shirtleaser components.

833
01:01:01,039 --> 01:01:05,199
No, we do way to do
that. Yeah, well, congratulations man,

834
01:01:05,239 --> 01:01:07,719
I mean I'm hoping we'll you'll help
me back to talk about how the

835
01:01:07,760 --> 01:01:15,800
commercialization side is going on and the
land mines you haven't seen yet. I'd

836
01:01:15,800 --> 01:01:20,159
be happy to be back you two, Sean, take care and thanks for

837
01:01:20,239 --> 01:01:45,280
listening, and we'll see you next
time. I'm dot net Rocks. Dot

838
01:01:45,280 --> 01:01:49,679
net Rocks is brought to you by
Franklin's Net and produced by Pop Studios,

839
01:01:50,039 --> 01:01:54,320
a full service audio, video and
post production facility located physically in New London,

840
01:01:54,360 --> 01:02:00,960
Connecticut, and of course in the
cloud online at pwop dot com.

841
01:02:00,239 --> 01:02:04,719
Visit our website at d O T
N E t R O c ks dot

842
01:02:04,719 --> 01:02:09,119
com for RSS feeds, downloads,
mobile apps, comments, and access to

843
01:02:09,159 --> 01:02:14,840
the full archives going back to show
number one, recorded in September two thousand

844
01:02:14,880 --> 01:02:17,320
and two. And make sure you
check out our sponsors. They keep us

845
01:02:17,320 --> 01:02:22,760
in business. Now go write some
code, see you next time. You

846
01:02:22,880 --> 01:02:23,199
got a Dan
