Transcript
1
00:00:00,410 --> 00:00:02,750
Ned: Other than your mic stand, everything else okay [laugh]
2
00:00:03,240 --> 00:00:03,660
?
Chris: Yeah.
3
00:00:03,960 --> 00:00:06,090
As usual, with the things that I observe, this is something
4
00:00:06,090 --> 00:00:08,550
that I figured out, like, years ago but never put a name on.
5
00:00:08,920 --> 00:00:09,700
Ned: Mmm, okay.
6
00:00:09,910 --> 00:00:11,659
Chris: So, let’s start with the obvious.
7
00:00:11,910 --> 00:00:13,379
Coke is clearly better than Pepsi.
8
00:00:13,900 --> 00:00:14,899
It’s not a conversation.
9
00:00:14,900 --> 00:00:16,070
Put your finger back down.
10
00:00:16,070 --> 00:00:16,580
Ned: [laugh] . Okay?
11
00:00:16,690 --> 00:00:16,990
Wha—
12
00:00:17,710 --> 00:00:17,879
Chris: No, no, no.
13
00:00:17,889 --> 00:00:18,930
Don’t you okay me.
14
00:00:18,970 --> 00:00:19,520
Ned: [sputters in the background]
15
00:00:19,520 --> 00:00:19,600
.
Chris: Hey.
16
00:00:19,680 --> 00:00:21,870
Ned: Diet Pepsi is better than Diet Coke.
17
00:00:22,140 --> 00:00:23,840
Chris: First of all, they’re both bad.
18
00:00:24,140 --> 00:00:24,510
Ned: Fair.
19
00:00:24,870 --> 00:00:29,050
Chris: The only decent diet soda on Earth is Diet Dr.
20
00:00:29,050 --> 00:00:29,420
Pepper.
21
00:00:29,660 --> 00:00:30,300
There I said it.
22
00:00:30,750 --> 00:00:33,610
Ned: Ohh, I agree that it’s good.
23
00:00:34,129 --> 00:00:35,889
Moving on, what was your actual point?
24
00:00:36,219 --> 00:00:37,160
Chris: I don’t remember.
25
00:00:38,450 --> 00:00:38,480
Ned: [laugh]
26
00:00:38,480 --> 00:00:39,810
.
Chris: The other thing about Diet Dr.
27
00:00:39,810 --> 00:00:41,360
Pepper is it’s got two-and-a-half times the
28
00:00:41,360 --> 00:00:43,460
caffeine, so this episode is going to go fast.
29
00:00:49,440 --> 00:00:49,470
Ned: [laugh]
30
00:00:53,269 --> 00:00:55,475
. Hello, alleged human, and welcome to the Chaos Lever podcast.
31
00:00:56,020 --> 00:00:58,529
My name is Ned and I’m definitely not a robot.
32
00:00:58,560 --> 00:01:01,290
I am a real human person who has feelings, dreams,
33
00:01:01,590 --> 00:01:06,160
and an ordinate desire to consume caffeine and sugar.
34
00:01:06,590 --> 00:01:07,700
Like, all the sugar.
35
00:01:07,950 --> 00:01:10,330
Give me all the sugars that you have.
36
00:01:10,330 --> 00:01:12,660
I will suck them out of your blood, thank you very much.
37
00:01:13,010 --> 00:01:16,590
With me is Chris, who is also full of delicious sugar.
38
00:01:16,590 --> 00:01:17,500
Hi, Chris.
39
00:01:17,880 --> 00:01:20,570
Chris: One has to assume that vampires have an opinion.
40
00:01:21,130 --> 00:01:23,590
Ned: An opinion on blood types?
41
00:01:23,770 --> 00:01:24,860
Blood sugar levels?
42
00:01:25,110 --> 00:01:25,550
Chris: Yeah.
43
00:01:25,570 --> 00:01:27,260
So, think about beef, right?
44
00:01:27,260 --> 00:01:31,150
We know there’s a difference between corn-fed and grain-fed, right?
45
00:01:31,940 --> 00:01:34,430
Ned: [laugh] . I believe you mean grass-fed, but moving on.
46
00:01:34,800 --> 00:01:35,940
Chris: Is grass not a grain?
47
00:01:36,230 --> 00:01:39,110
Ned: Oh, I thought you said brain-fed, and I
48
00:01:39,110 --> 00:01:42,069
was like, not aware of any cows eating brains.
49
00:01:42,099 --> 00:01:44,260
Isn’t that how we got the mad cow disease?
50
00:01:44,580 --> 00:01:45,230
Chris: Yes.
51
00:01:45,740 --> 00:01:46,359
Ned: It is.
52
00:01:46,869 --> 00:01:50,140
Okay, so yes, corn-fed versus grain-fed versus
53
00:01:50,140 --> 00:01:52,899
grass-fed, there is a definitive difference.
54
00:01:53,230 --> 00:01:53,530
Chris: Right.
55
00:01:53,600 --> 00:01:57,810
So, if you were eating either human flesh or drinking human
56
00:01:57,810 --> 00:02:01,949
blood—or both I’m not here to shame anyone’s kink—you’re going to
57
00:02:01,960 --> 00:02:05,489
be interested in that person’s, let’s call them the donor’s diet.
58
00:02:06,020 --> 00:02:06,729
Ned: Absolutely.
59
00:02:06,900 --> 00:02:10,930
Chris: That’s why—I’m almost positive this is correct—on the website for the Red
60
00:02:10,930 --> 00:02:14,220
Cross, they say you should do five or six shots of whiskey before you donate,
61
00:02:14,520 --> 00:02:17,137
so that, you know, when somebody gets your blood, it’s a little pick me up.
62
00:02:17,259 --> 00:02:19,510
Ned: [laugh] . Settle down.
63
00:02:20,440 --> 00:02:22,060
I was wondering where you’re going with that.
64
00:02:22,299 --> 00:02:23,900
And it turned out it wasn’t anywhere good.
65
00:02:24,289 --> 00:02:26,700
But hey, speaking of consuming entirely
66
00:02:26,700 --> 00:02:29,400
too much stuff, guess what I did this week?
67
00:02:29,940 --> 00:02:31,130
Chris: Went somewhere that wasn’t good?
68
00:02:31,900 --> 00:02:34,050
Ned: Oh, I went somewhere that was fine, but I consumed
69
00:02:34,059 --> 00:02:36,640
entirely too much of a thing, and that thing was AI.
70
00:02:39,000 --> 00:02:39,010
Wooo.
71
00:02:39,049 --> 00:02:39,349
Chris: Yay.
72
00:02:39,980 --> 00:02:40,090
Ned: Ugh.
73
00:02:40,820 --> 00:02:44,520
So, this past week, I attended the AWS Summit in our
74
00:02:44,520 --> 00:02:48,100
nation’s capitol, and home to a really good taco place.
75
00:02:48,490 --> 00:02:50,490
Seriously, it’s called Rebel Taco.
76
00:02:50,970 --> 00:02:53,389
It’s on the corner of 6th and K.
77
00:02:53,980 --> 00:02:56,930
It’s a less than five-minute walk from the Walter E.
78
00:02:56,940 --> 00:02:58,670
Washington Convention Center.
79
00:02:58,920 --> 00:03:03,460
So, if you happen to be at that convention center: Rebel Taco.
80
00:03:03,790 --> 00:03:06,040
Walk the, like, four blocks, it’s worth it.
81
00:03:06,730 --> 00:03:08,190
I got three different tacos.
82
00:03:08,200 --> 00:03:11,530
They were all delicious, especially the lamb birria.
83
00:03:11,530 --> 00:03:12,929
That was really good.
84
00:03:13,329 --> 00:03:18,390
And the margarita I got to go with my tacos was absolutely not fucking around.
85
00:03:18,740 --> 00:03:23,810
Ohh, somebody had a very heavy hand at Rebel Taco, and I didn’t mind one bit.
86
00:03:24,440 --> 00:03:27,180
Chris: Unrelated, I saw something interesting slash terrifying.
87
00:03:27,270 --> 00:03:27,690
Ned: Okay.
88
00:03:27,920 --> 00:03:31,099
Chris: The new summer drink is a pickled juice-based margarita.
89
00:03:31,660 --> 00:03:32,380
Ned: Thanks, I hate it.
90
00:03:33,370 --> 00:03:34,509
Chris: Anyway, enjoy your weekend.
91
00:03:35,170 --> 00:03:38,359
Ned: So, when I was 15—of course I have a story for
92
00:03:38,360 --> 00:03:41,490
this, right?—when I was 15, I worked at a pizzeria.
93
00:03:41,870 --> 00:03:44,230
And I also had acne because I was 15.
94
00:03:44,610 --> 00:03:44,880
Chris: Right.
95
00:03:44,910 --> 00:03:45,600
It’s like the rule.
96
00:03:46,030 --> 00:03:48,880
Ned: And working in a pizzeria was definitely not going to this.
97
00:03:48,880 --> 00:03:50,799
The amount of grease in the air—Anyway.
98
00:03:51,059 --> 00:03:58,600
So, the owner and proprietor of said pizzeria told me that a cure for
99
00:03:58,610 --> 00:04:03,720
acne—or at least a treatment was drinking pickle juice—and being as
100
00:04:03,720 --> 00:04:07,920
we were a pizzeria that made other things, we had giant pickle jars,
101
00:04:07,929 --> 00:04:10,890
so she just poured me some pickle juice, and she was like down it.
102
00:04:10,959 --> 00:04:12,090
This will help with your acne.
103
00:04:12,320 --> 00:04:12,870
It did not—
104
00:04:13,090 --> 00:04:13,835
Chris: No, no it wouldn’t.
105
00:04:13,835 --> 00:04:15,450
Ned: —but she got to watch me drink pickle
106
00:04:15,450 --> 00:04:18,230
juice, which I think is, like, 99% of it.
107
00:04:18,470 --> 00:04:18,860
Chris: Mm-hm.
108
00:04:18,990 --> 00:04:19,340
Ned: Yeah.
109
00:04:19,670 --> 00:04:22,370
Chris: That was a game of watch the 15-year-old do something dumb.
110
00:04:22,730 --> 00:04:23,059
Ned: Mm-hm.
111
00:04:23,559 --> 00:04:24,760
That seemed to happen a lot.
112
00:04:24,969 --> 00:04:24,999
Chris: [laugh]
113
00:04:25,299 --> 00:04:26,380
.
Ned: Sometimes unprompted.
114
00:04:26,719 --> 00:04:27,759
Often unprompted.
115
00:04:28,070 --> 00:04:29,370
Almost always unprompted.
116
00:04:29,549 --> 00:04:31,240
Chris: One day, you’ll stop playing that game.
117
00:04:31,460 --> 00:04:38,060
Ned: [laugh] . When I’m dead, Chris [laugh] . Anyway, so I will not
118
00:04:38,060 --> 00:04:42,159
be drinking this cocktail, but I will be talking about AI for a while.
119
00:04:42,889 --> 00:04:46,440
We’re going to be drinking from the AI firehose, which ironically, is an
120
00:04:46,449 --> 00:04:50,650
AWS service that didn’t come up in all of the presentations that I attended.
121
00:04:51,050 --> 00:04:55,000
For those not familiar with tacos, that’s when you take a corn tortilla,
122
00:04:55,380 --> 00:04:59,670
and you place some toppings inside the tortilla, and then you fold it up—
123
00:04:59,670 --> 00:05:00,023
Chris: [coughs significantly]
124
00:05:00,200 --> 00:05:03,509
Ned: And then—wait, okay, no, wait, we were talking
125
00:05:03,509 --> 00:05:06,259
about the AWS Summit, and not delicious food.
126
00:05:06,360 --> 00:05:07,740
Sorry, I got sidetracked.
127
00:05:07,750 --> 00:05:10,180
It is lunchtime, to be fair.
128
00:05:10,700 --> 00:05:14,710
So, let me talk about the amazing French toast that I had at the Delegate.
129
00:05:15,070 --> 00:05:18,329
It was a Challah-crusted French toast.
130
00:05:19,469 --> 00:05:19,489
Chris: [sigh]
131
00:05:19,489 --> 00:05:22,390
.
Ned: The crusting was cornflakes and—stop it, Chris.
132
00:05:22,390 --> 00:05:23,229
All right, fine.
133
00:05:23,240 --> 00:05:24,440
I’m not procrastinating.
134
00:05:24,440 --> 00:05:25,000
You are.
135
00:05:25,640 --> 00:05:29,040
For those not familiar with the AWS Summits, these
136
00:05:29,050 --> 00:05:33,000
are many events put on by AWS all around the globe.
137
00:05:33,340 --> 00:05:35,719
They’re typically one or two days, and it’s kind
138
00:05:35,719 --> 00:05:39,130
of—you can think of it as a speed-run of re:Invent.
139
00:05:39,469 --> 00:05:41,179
And you don’t have to go to Las Vegas.
140
00:05:41,420 --> 00:05:42,989
So, that’s a gigantic win.
141
00:05:43,560 --> 00:05:47,890
I’ve attended the NYC Summit three or four times, and really enjoyed it.
142
00:05:48,520 --> 00:05:51,860
In fact, it’s happening again in a few weeks, and I plan to go.
143
00:05:52,270 --> 00:05:55,710
But I also wanted to try out the DC Summit since I figured it
144
00:05:55,710 --> 00:05:59,379
would have a different focus and attract a slightly different
145
00:05:59,379 --> 00:06:03,659
crowd, by which I mean public sector, government, and military.
146
00:06:03,990 --> 00:06:07,260
It was interesting to see the different types of vendors this
147
00:06:07,260 --> 00:06:11,300
attracted at the Expo, and how the sessions focused on public
148
00:06:11,300 --> 00:06:15,149
sector, and intelligence applications instead of building the
149
00:06:15,150 --> 00:06:19,330
next Uber for Tacos, a company that I would absolutely invest in.
150
00:06:19,740 --> 00:06:19,980
Chris: Yeah.
151
00:06:20,320 --> 00:06:22,790
Let’s talk about that instead of AI.
152
00:06:23,610 --> 00:06:24,200
Ned: [laugh] . We probably could.
153
00:06:24,600 --> 00:06:25,030
But no.
154
00:06:25,280 --> 00:06:28,420
While I was browsing through the sessions, trying to plan
155
00:06:28,420 --> 00:06:31,690
out my schedule for the two days, I couldn’t help but notice
156
00:06:31,690 --> 00:06:34,539
how many of the sessions had AI somewhere in the title.
157
00:06:34,549 --> 00:06:38,200
I actually talked to an AWS person the following day, and they
158
00:06:38,210 --> 00:06:44,959
said that 55% of the titles of the sessions had AI in them.
159
00:06:45,440 --> 00:06:47,450
Even more of them were about AI, but that was
160
00:06:47,450 --> 00:06:49,500
just the ones that had it directly in the title.
161
00:06:50,059 --> 00:06:54,629
Chris: Considering there are 380-something services,
162
00:06:55,160 --> 00:06:58,940
there’s no possible way that 55% of the services need AI.
163
00:06:59,290 --> 00:07:00,190
Ned: [laugh] . No.
164
00:07:00,440 --> 00:07:01,120
Chris: Explain.
165
00:07:01,520 --> 00:07:05,690
Ned: [sigh] . Well, at first, I was just trying to avoid those sessions.
166
00:07:05,950 --> 00:07:11,360
So, I was trying to pick stuff like running EKS clusters, or
167
00:07:12,199 --> 00:07:15,810
AWS networking at the edge, or scaling storage best practices.
168
00:07:15,820 --> 00:07:20,990
You know, things that I think of as, quote, “Real topics.”
169
00:07:21,360 --> 00:07:23,030
Chris: Which, ironically, would include the
170
00:07:23,030 --> 00:07:25,520
responsible and practical use of Firehose.
171
00:07:25,820 --> 00:07:26,400
Ned: Indeed.
172
00:07:26,740 --> 00:07:27,810
Chris: See, I know things.
173
00:07:28,240 --> 00:07:28,889
Ned: I know you do.
174
00:07:29,549 --> 00:07:32,600
Once I finished trying to assemble this schedule, I
175
00:07:32,600 --> 00:07:36,229
looked at it and I realized it was kind of sad and boring.
176
00:07:36,380 --> 00:07:39,020
Like, say, your dad’s old record collection.
177
00:07:39,290 --> 00:07:40,870
Chris: There’s a lot of Boz Scaggs.
178
00:07:40,870 --> 00:07:44,780
Ned: It’s all stuff that’s been around for a decade or two, feels comfortable
179
00:07:44,780 --> 00:07:48,669
and safe, and it’s really just coasting along, playing the greatest hits.
180
00:07:49,060 --> 00:07:51,530
It’s the Eagles of sessions.
181
00:07:52,050 --> 00:07:54,480
So, I decided that I needed to shake things up a bit.
182
00:07:55,000 --> 00:07:57,119
Kids are talking about this new AI stuff.
183
00:07:57,510 --> 00:07:59,750
I don’t want to be the cranky old bastard in the back
184
00:07:59,750 --> 00:08:02,909
ranting about how no one makes good technology anymore.
185
00:08:03,410 --> 00:08:08,260
I need to keep my mind open and attend these weird AI sessions.
186
00:08:09,080 --> 00:08:13,770
Chris, are you familiar with Cognitive Behavioral Therapy: CBT?
187
00:08:14,110 --> 00:08:16,000
Chris: Yeah, that’s what CBT Nuggets is about, right?
188
00:08:16,460 --> 00:08:16,930
Ned: Is it?
189
00:08:17,300 --> 00:08:17,700
No.
190
00:08:17,710 --> 00:08:19,879
Is that really what CBT stands for?
191
00:08:20,389 --> 00:08:20,729
Chris: No.
192
00:08:21,009 --> 00:08:21,919
Ned: I don’t know, man.
193
00:08:21,950 --> 00:08:23,550
I never watched any of that crap.
194
00:08:23,550 --> 00:08:24,470
Chris: [laugh]
195
00:08:25,390 --> 00:08:28,110
.
Ned: [laugh] . It wasn’t crap, but I also didn’t watch it.
196
00:08:28,450 --> 00:08:29,409
Chris: I’m sending them an email.
197
00:08:29,410 --> 00:08:30,120
You’re in trouble.
198
00:08:30,670 --> 00:08:33,140
Ned: I didn’t know they were still going concern, to be honest.
199
00:08:33,679 --> 00:08:37,380
A core premise of CBT is to face your fears
200
00:08:37,530 --> 00:08:39,969
instead of avoiding them, so that’s what I did.
201
00:08:40,369 --> 00:08:44,720
Every single session I attended was AI-related.
202
00:08:44,850 --> 00:08:46,990
I think I went to about ten sessions.
203
00:08:47,350 --> 00:08:49,670
Every single one, AI-related.
204
00:08:50,110 --> 00:08:56,200
No running to the sweet and simple embrace of EC2 instances, or VPC design.
205
00:08:56,450 --> 00:08:59,850
It was going to be mainlining AI for two days.
206
00:08:59,859 --> 00:09:02,790
I have to say, I am glad I did it.
207
00:09:02,800 --> 00:09:07,979
And that’s what I want to share today: what I learned over the two days that
208
00:09:07,980 --> 00:09:12,590
I was there, how I’m feeling about AI now, and what the future looks like.
209
00:09:13,280 --> 00:09:13,990
So, let’s get into it.
210
00:09:14,370 --> 00:09:15,280
Chris: Okay.
211
00:09:16,059 --> 00:09:18,760
Ned: We’ll start with the keynote, which makes sense, right?
212
00:09:19,100 --> 00:09:21,290
Supposed to be the beginning or, you know, the
213
00:09:21,290 --> 00:09:25,780
main thrust and theme of a general conference.
214
00:09:26,300 --> 00:09:27,970
You can watch the keynote if you’d like.
215
00:09:27,980 --> 00:09:32,690
It was presented by Federal CTO at AWS, Dave Levy.
216
00:09:33,110 --> 00:09:35,689
No relation to Eugene Levy, unfortunately.
217
00:09:36,610 --> 00:09:38,160
Two quick things about the keynote.
218
00:09:38,390 --> 00:09:42,350
One, the keynote actually happened on day one at 11 a.m.
219
00:09:42,490 --> 00:09:45,020
after sessions had been going on for two hours.
220
00:09:45,349 --> 00:09:47,839
So, I had already attended a couple of sessions,
221
00:09:47,870 --> 00:09:49,780
but I’m going to start with the keynote anyway.
222
00:09:50,160 --> 00:09:52,519
And number two, there was blessedly only
223
00:09:52,520 --> 00:09:55,410
one keynote, as God and country intended.
224
00:09:55,670 --> 00:09:56,229
Chris: Wow.
225
00:09:56,560 --> 00:10:01,550
Ned: Yeah, thank you, sweet baby Jesus, and your tiny cherub hands, one keynote.
226
00:10:02,179 --> 00:10:07,270
From the very outset, Dave made the point that GenAI is changing the world.
227
00:10:07,580 --> 00:10:11,739
He made a reference to the tale of Rip Van Winkle, which is a story
228
00:10:11,779 --> 00:10:16,050
I barely remember, but if I’m recalling correctly, and he explained
229
00:10:16,050 --> 00:10:20,920
it properly, the core conceit is that Rip falls asleep for 20 years
230
00:10:21,309 --> 00:10:25,399
before the American Revolutionary War starts, and when he wakes
231
00:10:25,400 --> 00:10:29,699
up, the revolution is over and the world has changed drastically.
232
00:10:30,160 --> 00:10:30,920
I think that’s it.
233
00:10:31,250 --> 00:10:31,959
Don’t look it up.
234
00:10:32,550 --> 00:10:35,410
The obvious parallel here is that our world is going
235
00:10:35,410 --> 00:10:38,890
through a similar sea change, and the public sector
236
00:10:38,920 --> 00:10:42,570
can’t afford to sleep on it like Rip Van Winkle did.
237
00:10:43,170 --> 00:10:46,700
In fact, he kept using the word revolution
238
00:10:47,230 --> 00:10:50,310
several times to describe what AI is doing.
239
00:10:50,790 --> 00:10:55,150
And the word revolution does feel, like, a little bit loaded, especially
240
00:10:55,150 --> 00:11:00,010
given the political climate, and the seven or eight protesters who
241
00:11:00,020 --> 00:11:04,520
stood up in the middle of his talk, and yelled stuff about Gaza, Israel,
242
00:11:04,520 --> 00:11:07,770
and how evil Amazon is, and questioned how he could sleep at night.
243
00:11:08,230 --> 00:11:11,420
So, I don’t know, maybe find a word that’s a little less evocative.
244
00:11:11,810 --> 00:11:12,280
Maybe?
245
00:11:12,640 --> 00:11:12,860
I don’t know.
246
00:11:13,430 --> 00:11:15,189
Anyhow, it has nothing to do with AI.
247
00:11:15,559 --> 00:11:16,790
Just word choices.
248
00:11:17,309 --> 00:11:19,829
His main point is that GenAI is going to change
249
00:11:19,830 --> 00:11:24,170
the world, that GenAI requires the cloud to work.
250
00:11:24,400 --> 00:11:27,830
And he quoted a study commissioned by AWS that claims
251
00:11:27,840 --> 00:11:32,030
that cloud is 4.1 times more efficient than on-prem AI.
252
00:11:33,030 --> 00:11:38,949
And that AWS has the tools you need to take your AI experiments to production.
253
00:11:39,509 --> 00:11:42,179
Not sure how much weight I put behind a study commissioned by
254
00:11:42,219 --> 00:11:46,960
AWS that finds out, shockingly, cloud is better than on-prem.
255
00:11:47,560 --> 00:11:50,530
But, I mean, what else do you expect Dave to say?
256
00:11:51,150 --> 00:11:52,480
Chris: I have thoughts, but we can—
257
00:11:52,929 --> 00:11:54,210
Ned: Feel free to share.
258
00:11:54,630 --> 00:11:58,110
Chris: Anytime you see a study like this, what do they mean by on-prem?
259
00:11:58,420 --> 00:11:58,760
Ned: Yeah.
260
00:11:58,809 --> 00:11:59,560
Chris: Who set it up?
261
00:11:59,760 --> 00:12:02,640
How much money and time and expertise did they invest in it?
262
00:12:02,910 --> 00:12:04,200
What models are they using?
263
00:12:04,710 --> 00:12:05,060
Et cetera… et cetera… et cetera.
264
00:12:05,060 --> 00:12:05,120
Ned: What
265
00:12:08,110 --> 00:12:09,480
does it mean to be more efficient?
266
00:12:09,880 --> 00:12:11,459
How do you measure that efficiency?
267
00:12:11,559 --> 00:12:12,920
Like, so many questions.
268
00:12:13,420 --> 00:12:14,859
I didn’t want to get bogged down in it.
269
00:12:15,089 --> 00:12:17,380
I will try to find the study if I can.
270
00:12:17,980 --> 00:12:21,880
We will get into AWS’s AI stack in a little bit,
271
00:12:21,880 --> 00:12:24,010
but I do want to mention a couple other things.
272
00:12:24,820 --> 00:12:27,900
First, Dave said something about how AWS
273
00:12:27,969 --> 00:12:31,500
isn’t here to build the best AI applications.
274
00:12:31,889 --> 00:12:33,590
That’s what they expect you to do.
275
00:12:34,109 --> 00:12:39,359
They’re just providing the raw materials, which inadvertently is a dig at
276
00:12:39,360 --> 00:12:45,189
their own Amazon Q product, which ostensibly is a really good AI application.
277
00:12:45,719 --> 00:12:45,899
Whoops.
278
00:12:46,469 --> 00:12:49,390
Chris: Which also should be what AWS does.
279
00:12:49,679 --> 00:12:50,230
Ned: You would think.
280
00:12:50,610 --> 00:12:52,299
Chris: Just provide the raw materials.
281
00:12:52,730 --> 00:12:53,349
Ned: And that’s good.
282
00:12:53,350 --> 00:12:54,760
I actually liked that part of it.
283
00:12:54,770 --> 00:12:56,910
Like, yeah, you give me the raw materials.
284
00:12:56,920 --> 00:12:59,910
That’s what AWS has specialized in for years is giving
285
00:12:59,910 --> 00:13:05,130
developers, here’s a big old Lego set or an erector
286
00:13:05,139 --> 00:13:07,480
set, or whatever you want to call it; build your thing.
287
00:13:08,000 --> 00:13:11,650
You also made an offhand comment about data sovereignty issues,
288
00:13:11,969 --> 00:13:15,500
which I think was a subtle dig at Microsoft’s latest stumble
289
00:13:15,510 --> 00:13:20,740
with handling GDPR and the Scotland police force, I think?
290
00:13:21,550 --> 00:13:25,459
Dave had two guests with him on stage, one at a time.
291
00:13:25,639 --> 00:13:29,539
The first one was the director of AI for the CIA,
292
00:13:29,900 --> 00:13:32,900
and the second was the head of AI for the army.
293
00:13:33,570 --> 00:13:37,829
And both chats turned into weird recruitment pitches for
294
00:13:37,830 --> 00:13:41,680
the CIA and the army, along with a plea from the army
295
00:13:41,680 --> 00:13:45,269
guy for input on their AI layered defense framework.
296
00:13:45,929 --> 00:13:49,490
What was strangely absent from both conversations was any
297
00:13:49,490 --> 00:13:54,380
mention of how the CIA or the army are using AWS for anything.
298
00:13:54,720 --> 00:13:55,439
Chris: That’s classified.
299
00:13:56,179 --> 00:13:56,800
Ned: I guess?
300
00:13:57,240 --> 00:14:02,209
But also, like, you would think if you have guests up on stage at an AWS
301
00:14:02,690 --> 00:14:07,160
event, they’re going to at least mention how they’re using AWS in some way.
302
00:14:07,750 --> 00:14:09,160
Chris: I mean, counterpoint.
303
00:14:09,240 --> 00:14:13,790
This was hosted in DC, so it could very well have been, somebody
304
00:14:13,790 --> 00:14:17,599
called AWS and explained to them that these are going to be the guests.
305
00:14:18,130 --> 00:14:18,510
Ned: Mmm.
306
00:14:19,000 --> 00:14:19,449
Could be.
307
00:14:19,460 --> 00:14:23,279
I mean, the CIA probably has the leverage to do that.
308
00:14:24,020 --> 00:14:27,700
So, since they didn’t say what AWS is doing
309
00:14:27,700 --> 00:14:31,630
with AI, let’s talk about AWS’s AI portfolio.
310
00:14:32,440 --> 00:14:36,670
It’s kind of an open secret—not even a secret—it’s just known that
311
00:14:36,679 --> 00:14:40,650
Microsoft has a first-mover advantage when it comes to AI products.
312
00:14:40,910 --> 00:14:43,360
They partnered closely with OpenAI.
313
00:14:43,630 --> 00:14:47,030
They rolled out Copilot long before AWS had
314
00:14:47,030 --> 00:14:50,889
CodeWhisperer and GitLab had their product called Duo.
315
00:14:51,559 --> 00:14:55,469
Amazon and Google both looked to be caught flat-footed when
316
00:14:55,469 --> 00:14:59,589
it came to AI, and they are both furiously trying to catch up.
317
00:15:00,320 --> 00:15:04,890
That being said, a first-mover can have a big advantage,
318
00:15:05,080 --> 00:15:08,419
but it also means that you’re likely to fuck up a lot.
319
00:15:09,059 --> 00:15:12,280
You’re the one blazing the trail, you’re not following some
320
00:15:12,280 --> 00:15:15,800
well-trodden path, so the chances of making a logistical
321
00:15:15,809 --> 00:15:19,850
or tactical error are high, even if your strategy is sound.
322
00:15:20,830 --> 00:15:24,720
Sometimes being a fast-follower can actually work in your favor because
323
00:15:24,720 --> 00:15:29,610
you can see what the first-mover stumbled over and adjust accordingly.
324
00:15:29,660 --> 00:15:33,270
And I kind of get the feeling when watching AWS talk about
325
00:15:33,270 --> 00:15:37,790
their various AI offerings, that’s kind of where they’re at.
326
00:15:38,210 --> 00:15:40,459
They’re keeping an eye on Microsoft, and going well, as
327
00:15:40,460 --> 00:15:44,960
long as we can stay relatively close behind, we’ll be fine.
328
00:15:45,750 --> 00:15:51,790
So, they don’t have a monster model like OpenAI’s GPT4o.
329
00:15:52,650 --> 00:15:57,330
I guess it’s called four-oh—why did they abandon the semantic versioning?
330
00:15:57,340 --> 00:15:58,689
I don’t understand.
331
00:15:59,180 --> 00:16:02,310
Anyway—they don’t have that running in their data centers.
332
00:16:02,490 --> 00:16:05,080
Instead, they have their own foundational model which is
333
00:16:05,080 --> 00:16:09,090
called Titan, a model that, by most accounts, is pretty mid.
334
00:16:09,450 --> 00:16:09,760
Meh.
335
00:16:10,209 --> 00:16:12,250
Chris: More like a Teen Titan, am I right?
336
00:16:12,709 --> 00:16:14,070
Ned: Ahh, I like it.
337
00:16:14,270 --> 00:16:15,930
All right, which Team Titan would it be?
338
00:16:16,340 --> 00:16:17,060
Chris: The boring one.
339
00:16:17,290 --> 00:16:17,730
Ned: Robin.
340
00:16:17,970 --> 00:16:18,350
It’d be Robin.
341
00:16:18,350 --> 00:16:18,390
Chris: [laugh]
342
00:16:20,240 --> 00:16:21,949
.
Ned: [laugh] . But we repeat ourselves.
343
00:16:22,500 --> 00:16:24,689
What is a poor cloud hyperscaler to do?
344
00:16:25,230 --> 00:16:26,889
Build Amazon Bedrock?
345
00:16:27,099 --> 00:16:28,329
Chris: The Flintstones thing?
346
00:16:28,709 --> 00:16:30,930
Ned: Yeah, yeah, they invited Fred over and
347
00:16:30,930 --> 00:16:33,850
just, like, hash it out over some giant ribs.
348
00:16:34,240 --> 00:16:35,860
Chris: And strangely, he did a cigarette ad.
349
00:16:36,490 --> 00:16:37,830
Everyone was deeply confused.
350
00:16:40,099 --> 00:16:41,840
Ned: [laugh] . Oh, hell of a callback.
351
00:16:41,900 --> 00:16:42,390
Well, done.
352
00:16:43,170 --> 00:16:47,890
So, when Bedrock was announced, most people were like, “Huh?” But essentially
353
00:16:47,890 --> 00:16:52,390
what it is—and actually find it pretty interesting now that I understand it—it’s
354
00:16:52,400 --> 00:16:57,159
essentially an abstraction layer on top of other existing foundational models.
355
00:16:57,420 --> 00:16:59,440
So, it is not an LLM.
356
00:16:59,469 --> 00:17:01,460
It’s not a model in and of itself.
357
00:17:01,840 --> 00:17:03,979
It doesn’t tie you down to a single model.
358
00:17:04,260 --> 00:17:07,870
Instead, you can choose to use one or more of their
359
00:17:08,000 --> 00:17:11,050
various supported models, or bring your own model.
360
00:17:11,589 --> 00:17:18,750
Bedrock currently supports Titan, Anthropic, Meta, Mistral, and a bunch more.
361
00:17:19,030 --> 00:17:21,800
You can look up the current list; I’m sure it’s constantly changing.
362
00:17:22,410 --> 00:17:27,160
And the first session that I attended was actually a builder session
363
00:17:27,160 --> 00:17:31,720
where the presenters walked through using Bedrock in a Jupyter Notebook
364
00:17:31,720 --> 00:17:36,340
to interact with four different models, basically, simultaneously.
365
00:17:36,740 --> 00:17:40,609
I very much jumped into the deep end of things, inadvertently.
366
00:17:41,600 --> 00:17:43,580
I [laugh] walked in, they had, like, code up on the
367
00:17:43,580 --> 00:17:45,960
screen, and I was like, what did I just get myself into?
368
00:17:46,420 --> 00:17:46,939
All right.
369
00:17:47,590 --> 00:17:51,660
The idea was to test and evaluate the responses from each model,
370
00:17:51,830 --> 00:17:56,020
and figure out which one would be best suited for a set of tasks.
371
00:17:56,309 --> 00:17:58,280
And you can go back and check that on a regular
372
00:17:58,280 --> 00:18:00,800
basis because the models are constantly changing.
373
00:18:01,570 --> 00:18:07,169
Inside of the Bedrock SDK for Python, there’s a method called Converse,
374
00:18:07,780 --> 00:18:12,070
and this method and the service behind it abstracts the required
375
00:18:12,080 --> 00:18:16,990
inputs and parameters for each model into a consistent set of inputs.
376
00:18:17,670 --> 00:18:21,600
So, every model has its own specific parameters, and the way that
377
00:18:21,600 --> 00:18:25,800
it expects you to structure requests, and the way that it structures
378
00:18:25,800 --> 00:18:29,529
its responses, especially when you’re interacting programmatically.
379
00:18:30,360 --> 00:18:34,560
The key idea here was you can use this Converse method in a method
380
00:18:34,560 --> 00:18:39,110
call to loop through as many models as you’d like at once, and it
381
00:18:39,120 --> 00:18:42,639
has a consistent interface in front of those models, so you don’t
382
00:18:42,650 --> 00:18:47,429
have to adjust your parameters and your inputs, and you know what
383
00:18:47,429 --> 00:18:50,919
form the response is going to take because it normalizes it for you.
384
00:18:51,270 --> 00:18:51,410
Chris: Hmm.
385
00:18:51,940 --> 00:18:54,160
Ned: That seems kind of useful.
386
00:18:55,510 --> 00:19:00,030
If you need to, you can put in model specific-parameters in a separate field,
387
00:19:00,050 --> 00:19:04,129
so in your configuration of the method, you can say, “For this model, add
388
00:19:04,139 --> 00:19:08,209
these two or three customized parameters.” So, you can still add that level
389
00:19:08,210 --> 00:19:11,910
of customization in there, but if you don’t want to, you don’t have to.
390
00:19:12,500 --> 00:19:17,300
And since the technology and the models are evolving so rapidly, having
391
00:19:17,310 --> 00:19:22,730
a low switching cost between models is going to be a huge benefit, versus
392
00:19:22,730 --> 00:19:27,180
just hitching your wagon to OpenAI and hoping for the best from Sam Altman.
393
00:19:27,929 --> 00:19:30,179
I don’t feel super positive about that [laugh]
394
00:19:31,080 --> 00:19:33,170
.
Bedrock also has a couple other neat things.
395
00:19:33,250 --> 00:19:35,640
One is something they’re calling Knowledge Base, which
396
00:19:35,640 --> 00:19:39,899
is essentially RAG, aka, Retrieval Augmented Generation.
397
00:19:40,320 --> 00:19:43,400
Like the name implies, you can load up additional
398
00:19:43,410 --> 00:19:47,889
documents in S3 and feed them to a generic model to help
399
00:19:47,889 --> 00:19:51,610
it better understand your unique business and requirements.
400
00:19:52,200 --> 00:19:55,660
Each model has a different way of doing RAG, so it’s
401
00:19:55,670 --> 00:19:58,360
nice to have Bedrock just handle that abstraction.
402
00:19:58,620 --> 00:20:00,830
Hey, I want to use these six different models.
403
00:20:01,429 --> 00:20:03,980
Send it in the document way they prefer from
404
00:20:03,980 --> 00:20:06,209
this S3 bucket that I’ve loaded things up with.
405
00:20:06,879 --> 00:20:10,590
The other interesting concept—and I’m still trying to wrap my brain
406
00:20:10,590 --> 00:20:15,360
exactly around how it works—but it was this concept of agents and tools.
407
00:20:15,429 --> 00:20:17,239
And I’m not talking about agents in the
408
00:20:17,240 --> 00:20:19,930
sense of chatbots, or digital assistants.
409
00:20:20,320 --> 00:20:25,010
Instead, it’s a way that Bedrock lets you define tools
410
00:20:25,330 --> 00:20:28,950
that models can pass work off to in their application flow.
411
00:20:29,580 --> 00:20:33,440
So, the tools are really just Lambda functions that interact with some
412
00:20:33,440 --> 00:20:38,160
other API or data source, and the agent is the part of Bedrock that
413
00:20:38,170 --> 00:20:42,970
does the tool invocation and passes information back to the model.
414
00:20:43,580 --> 00:20:47,300
So, you can ask your application to do something like parse a bunch of
415
00:20:47,330 --> 00:20:51,959
emails for sales orders and then add them to your ordering system, and
416
00:20:51,960 --> 00:20:56,230
the model can use natural language parsing to understand the mail content,
417
00:20:56,280 --> 00:21:00,450
and then invoke the tool to actually interact with the ordering system.
418
00:21:01,100 --> 00:21:03,850
This is the sort of thing that’s going to put a lot of interns out of work.
419
00:21:04,490 --> 00:21:06,570
Chris: Yeah, it’s basically fancified RPA.
420
00:21:07,170 --> 00:21:08,680
Ned: Yeah, that’s a great way to put it.
421
00:21:08,860 --> 00:21:14,270
It is very much like—yeah, whatever RPA stands for, Robotic Process Automation?
422
00:21:14,429 --> 00:21:15,239
Chris: There you go.
423
00:21:15,249 --> 00:21:15,454
Ned: That’s the one.
424
00:21:15,599 --> 00:21:16,429
I got there.
425
00:21:17,010 --> 00:21:21,280
But yeah, if you have existing APIs and other systems that you want
426
00:21:21,280 --> 00:21:25,550
your language models or your foundational models to interact with,
427
00:21:25,870 --> 00:21:29,879
you don’t have to write that interaction into your application.
428
00:21:30,170 --> 00:21:34,230
You just define this tool spec—I think they called it a tool spec;
429
00:21:34,230 --> 00:21:38,050
it something along those lines—and then implement that tool spec in
430
00:21:38,330 --> 00:21:42,750
Lambda, and now your foundational model can interact with whatever
431
00:21:42,780 --> 00:21:46,419
API you want to hand it off to, if it’s internal or external.
432
00:21:46,500 --> 00:21:50,879
I was like, “Oh, that sounds pretty awesome, but also possibly
433
00:21:50,880 --> 00:21:55,690
incredibly dangerous because now we’ve allowed AI to just do whatever
434
00:21:55,690 --> 00:21:59,400
the hell it wants.” [laugh] . I’m sure that won’t come back to bite us.
435
00:22:00,160 --> 00:22:01,800
So, that’s Bedrock in a nutshell.
436
00:22:02,000 --> 00:22:05,100
There’s more to it, I’m sure, but those are the pieces that jumped out to me.
437
00:22:05,889 --> 00:22:11,149
AWS also went to great pains to say they do not store your requests,
438
00:22:11,389 --> 00:22:16,340
the model responses, or the augmented data anywhere inside of Bedrock.
439
00:22:16,720 --> 00:22:20,830
All of it lives inside your account, and the models that you bring with you.
440
00:22:21,320 --> 00:22:21,900
That’s nice.
441
00:22:22,440 --> 00:22:26,570
I think they went to special pains to explain that because of the audience.
442
00:22:27,059 --> 00:22:27,359
Chris: Right.
443
00:22:28,389 --> 00:22:31,270
Ned: So, from there, I want to jump ahead to a presentation that was about
444
00:22:31,380 --> 00:22:37,430
using GenAI in DevOps, which was a topic that I found very interesting.
445
00:22:37,860 --> 00:22:44,020
The two presenters, Tyler Lynch and Pranusha Manchala—I’m hope I’m
446
00:22:44,020 --> 00:22:48,410
getting that vaguely right; apologies to Pranusha—they lead the
447
00:22:48,420 --> 00:22:52,310
chalk talk and polled the audience about issues and challenges they
448
00:22:52,310 --> 00:22:58,340
encounter at all stages of the software design and deployment pipeline.
449
00:22:59,050 --> 00:23:01,480
If you’ve never attended a chalk talk before, they basically have a
450
00:23:01,620 --> 00:23:05,779
whiteboard, and, like, a loose presentation, but it’s very audience-driven.
451
00:23:05,930 --> 00:23:09,680
So, they’re asking for input: what is your experience?
452
00:23:09,700 --> 00:23:11,159
What are you seeing out there?
453
00:23:11,630 --> 00:23:14,569
As we rolled through the issues, they tried to give
454
00:23:14,570 --> 00:23:18,470
examples of how AWS’s various developer services could
455
00:23:18,480 --> 00:23:21,840
help alleviate some of the challenges people were feeling.
456
00:23:22,029 --> 00:23:25,399
So, I mean, you’re at an AWS conference; the solution is going to be AWS, right?
457
00:23:25,690 --> 00:23:26,350
Chris: One would think.
458
00:23:26,670 --> 00:23:26,940
Ned: Yeah.
459
00:23:27,580 --> 00:23:29,030
They highlighted three products.
460
00:23:29,060 --> 00:23:31,350
One was Amazon Q Developer.
461
00:23:31,560 --> 00:23:33,570
Q Developer used to be called CodeWhisperer.
462
00:23:34,330 --> 00:23:36,130
I don’t know if that was better [laugh] or worse.
463
00:23:36,660 --> 00:23:37,629
Chris: I think you do know.
464
00:23:37,880 --> 00:23:38,430
Ned: I do know.
465
00:23:38,559 --> 00:23:39,250
They’re both terrible.
466
00:23:40,039 --> 00:23:43,000
It’s very similar to what GitHub Copilot does.
467
00:23:43,210 --> 00:23:48,040
It plugs into your IDE, and it provides suggestions and a chat interface.
468
00:23:48,450 --> 00:23:51,190
Do you want to know what a chunk of code does
469
00:23:51,280 --> 00:23:53,309
when you’re trying to get to know a codebase?
470
00:23:53,889 --> 00:23:57,530
Highlight it, ask Q to explain it to you, and it will look at
471
00:23:57,530 --> 00:24:00,260
it and say, “This is what this function does,” in plain English.
472
00:24:00,709 --> 00:24:02,930
Do you need to refactor some code to be more
473
00:24:02,930 --> 00:24:05,280
efficient or scanned for vulnerabilities?
474
00:24:05,730 --> 00:24:08,010
You can do both of those things, making
475
00:24:08,010 --> 00:24:10,229
suggestions for how you could rewrite the code.
476
00:24:10,860 --> 00:24:13,980
Q can also write unit and integration tests,
477
00:24:14,530 --> 00:24:17,209
something that basically no one ever wants to do.
478
00:24:17,529 --> 00:24:21,590
As someone who’s working on developing a Go tool right now, I can tell you
479
00:24:21,590 --> 00:24:26,350
that I spend more time writing unit tests than I do writing actual code.
480
00:24:26,990 --> 00:24:27,630
It sucks.
481
00:24:27,950 --> 00:24:28,439
Chris: Not great.
482
00:24:28,940 --> 00:24:29,379
It’s not great.
483
00:24:29,800 --> 00:24:30,030
Ned: Yeah.
484
00:24:30,580 --> 00:24:34,710
Tyler also mentioned that Q can help with code migrations to
485
00:24:34,710 --> 00:24:37,660
newer language versions, and this was really interesting to me.
486
00:24:37,970 --> 00:24:44,420
Amazon used this functionality to migrate from Java 8 to Java 17.
487
00:24:44,730 --> 00:24:48,009
Now, as someone who is not a Java developer, I wasn’t
488
00:24:48,020 --> 00:24:52,360
really sure, okay, but I guess that is a significant
489
00:24:52,369 --> 00:24:56,200
jump, and those are two largely implemented versions.
490
00:24:56,710 --> 00:24:58,200
I guess there’s not a ton in between.
491
00:24:58,660 --> 00:24:59,960
I don’t really follow the numbering.
492
00:25:00,470 --> 00:25:03,890
But basically, they said they had a thousand applications
493
00:25:04,040 --> 00:25:09,030
that use Java 8 internally at Amazon, and so they took Q and
494
00:25:09,030 --> 00:25:12,680
turned it loose on those thousand applications to upgrade
495
00:25:12,680 --> 00:25:16,950
them all to Java 17, and they were able to do it in two days.
496
00:25:17,670 --> 00:25:18,890
Eyebrow-raising indeed.
497
00:25:20,360 --> 00:25:20,389
Chris: [laugh]
498
00:25:20,599 --> 00:25:21,660
.
Ned: That’s bananas.
499
00:25:22,240 --> 00:25:25,389
If you think about the amount of work that would be for developers
500
00:25:25,389 --> 00:25:30,690
to update the code and run the tests for it, they saved a
501
00:25:30,690 --> 00:25:34,320
tremendous amount of time, and also washed away a tremendous
502
00:25:34,320 --> 00:25:38,790
amount of tech debt they had being on this older version of Java.
503
00:25:39,280 --> 00:25:42,050
They also have a similar path to get from Java
504
00:25:42,050 --> 00:25:46,909
4 to 8, and then 17 for much older applications.
505
00:25:47,039 --> 00:25:52,149
I feel like Java 4 was current when I was developing Java back in, like, 1998.
506
00:25:52,870 --> 00:25:55,630
They also are working on similar upgrade functionality
507
00:25:55,630 --> 00:25:59,440
for .NET to .NET Core, and Python 2 to 3.
508
00:26:00,090 --> 00:26:02,740
This is the kind of thing that no one ever wants to do.
509
00:26:03,950 --> 00:26:06,800
No one ever sits down, they’re, like, “Today’s the day when we’re
510
00:26:06,800 --> 00:26:10,690
going to pay off our tech debt and upgrade from Python 2 to 3.”
511
00:26:10,940 --> 00:26:11,100
Chris: Yeah.
512
00:26:11,240 --> 00:26:12,940
For most companies, that day is never.
513
00:26:13,300 --> 00:26:14,830
Ned: Right because you look at it, you’re like, there
514
00:26:14,830 --> 00:26:17,380
is no immediate business value in me doing this.
515
00:26:17,710 --> 00:26:22,260
The application still works, I am not doing anything until I absolutely have to.
516
00:26:23,000 --> 00:26:26,960
But doing that upgrade actually does come with some benefits.
517
00:26:27,420 --> 00:26:29,970
Another session I attended was put on by GitLab, and
518
00:26:30,320 --> 00:26:32,810
they were talking about their code assistant, which is
519
00:26:32,810 --> 00:26:38,040
called Duo, and Duo can do refactoring from C to Rust.
520
00:26:38,620 --> 00:26:43,040
And they talked to a public sector organization whose name they
521
00:26:43,040 --> 00:26:47,000
couldn’t say, but they talked to one, and they had this C-based
522
00:26:47,010 --> 00:26:51,460
application that was a bit of a bottleneck for what they were doing.
523
00:26:52,040 --> 00:26:54,629
They had Duo port it over to Rust.
524
00:26:54,690 --> 00:26:56,080
And this was just an experiment.
525
00:26:56,299 --> 00:26:59,449
It was supposed to be like a three-month-long migration process.
526
00:27:00,129 --> 00:27:03,639
They had Duo try to do the migration of C to Rust,
527
00:27:03,830 --> 00:27:07,200
and move it to running on Lambda instead of EC2.
528
00:27:07,630 --> 00:27:11,480
Duo and the senior developer managed to do it in two days.
529
00:27:12,110 --> 00:27:12,830
Chris: It’s this the rule?
530
00:27:12,830 --> 00:27:14,120
Everything happens in two days?
531
00:27:14,219 --> 00:27:20,030
Ned: Apparently [laugh] . The resulting application was 90%
532
00:27:20,030 --> 00:27:24,399
smaller, ran a hundred times faster, and could scale by 50x.
533
00:27:25,510 --> 00:27:26,800
In part because of Lambda.
534
00:27:27,380 --> 00:27:28,699
Chris: Well, and just because of Rust.
535
00:27:28,710 --> 00:27:32,110
And something interesting about this is it’s not just simple refactoring,
536
00:27:32,120 --> 00:27:36,130
but you’re looking at optimizing how the code does what it does.
537
00:27:37,210 --> 00:27:40,560
You know, like, the difference between a junior programmer writing this
538
00:27:40,570 --> 00:27:44,630
program for the very first time and somebody that’s got 35 years of experience
539
00:27:44,980 --> 00:27:48,030
picking up that code and saying, “This is what it should have looked like.”
540
00:27:48,429 --> 00:27:49,089
Ned: Exactly.
541
00:27:49,139 --> 00:27:52,779
And I think that was the point that the presenter made was, senior
542
00:27:52,779 --> 00:27:56,550
developers will actually get some of the most benefit out of this because
543
00:27:56,980 --> 00:28:00,490
they can look at the code that is produced, and they understand the
544
00:28:00,490 --> 00:28:06,360
context of the original code, so they have a better chance of making
545
00:28:06,360 --> 00:28:10,190
sure the code actually works after that conversion, and works properly.
546
00:28:10,629 --> 00:28:12,960
It’s just that this GitLab Duo is going to save
547
00:28:12,960 --> 00:28:16,320
them a ton of time in doing the actual code writing.
548
00:28:17,260 --> 00:28:18,980
So, that was pretty impressive to me.
549
00:28:19,170 --> 00:28:23,820
He also talked about how so many companies will do, like, a lift-and-shift,
550
00:28:24,110 --> 00:28:28,789
and then never actually refactor the code, and so you have all these
551
00:28:28,820 --> 00:28:34,530
inefficient applications eating up cycles on EC2 in AWS or wherever you
552
00:28:34,530 --> 00:28:39,250
decide to host your code, if you can go back and use one of these code
553
00:28:39,450 --> 00:28:44,639
assistants to refactor things pretty quickly—you know, instead of a six-month
554
00:28:44,639 --> 00:28:48,490
lead time, you’re now talking about a two-week lead time, maybe—that’s
555
00:28:48,490 --> 00:28:52,320
actually worth doing, and could be game-changing for some organizations.
556
00:28:52,830 --> 00:28:53,110
Chris: Yeah.
557
00:28:53,120 --> 00:28:57,020
I mean, a lot of times, people simply hide bad code behind larger instances.
558
00:28:57,800 --> 00:28:58,639
Ned: [laugh] . Sometimes?
559
00:28:58,920 --> 00:29:00,610
Sometimes it’s doing a lot of lifting there, buddy [laugh]
560
00:29:00,760 --> 00:29:00,790
.
Chris: [laugh]
561
00:29:03,290 --> 00:29:06,159
.
Ned: Yeah, the fact that we can just throw more hardware at it, and have
562
00:29:06,160 --> 00:29:10,030
done that for years, this is actually an opportunity to slim down your
563
00:29:10,030 --> 00:29:14,290
code, maybe make it safer—because if you’re moving from C to Rust, it’s now
564
00:29:14,300 --> 00:29:18,360
memory safe at least—and maybe squash some security bugs in the process.
565
00:29:18,360 --> 00:29:20,599
Like, that’s a win for a lot of teams.
566
00:29:21,650 --> 00:29:23,889
Moving on from the code assistant, the other tools
567
00:29:23,900 --> 00:29:27,180
that were mentioned are DevOps Guru and Code Guru.
568
00:29:27,790 --> 00:29:28,490
Terrible names.
569
00:29:29,010 --> 00:29:32,409
The former does scanning of CloudTrail logs looking for anomalous
570
00:29:32,410 --> 00:29:35,889
events, and the latter does code scanning, testing, and assessment.
571
00:29:36,389 --> 00:29:39,050
From what I understand, Code Guru charges by
572
00:29:39,050 --> 00:29:42,660
the line scanned and is prohibitively expensive.
573
00:29:42,880 --> 00:29:43,310
Chris: Okay.
574
00:29:43,380 --> 00:29:47,300
Ned: DevOps guru, similarly expensive for looking at CloudTrail logs.
575
00:29:48,040 --> 00:29:49,820
But they mentioned them, so I guess I should, too.
576
00:29:50,690 --> 00:29:54,859
The last part of the AWS GenAI sandwich is hardware.
577
00:29:55,730 --> 00:29:59,049
AWS has some hardware to throw at the problem, including their
578
00:29:59,090 --> 00:30:04,530
own in-house developed chips called Trainium, and Inferentia.
579
00:30:04,910 --> 00:30:05,540
Chris: Trainium?
580
00:30:06,900 --> 00:30:09,599
Ned: Trainium, which are for model training, and inference, respectively.
581
00:30:10,389 --> 00:30:11,970
But I think you already guessed that.
582
00:30:12,650 --> 00:30:14,140
Are these chips any good?
583
00:30:14,759 --> 00:30:15,510
No idea.
584
00:30:16,049 --> 00:30:17,159
Are the names any good?
585
00:30:17,809 --> 00:30:18,099
No.
586
00:30:18,879 --> 00:30:23,030
They also have Nvidia A100s and soon will have H100s, so maybe
587
00:30:23,030 --> 00:30:25,650
that’s a better bet if you’re doing this model training thing.
588
00:30:26,050 --> 00:30:26,649
Chris: Just a thought.
589
00:30:27,090 --> 00:30:27,409
Ned: Yeah.
590
00:30:27,920 --> 00:30:30,850
Another session I attended was all about the training process
591
00:30:30,850 --> 00:30:35,749
for a foundational model called Falcon, and to train the model,
592
00:30:35,859 --> 00:30:40,900
they use SageMaker, and ECR, and S3, the biggest version of
593
00:30:40,900 --> 00:30:43,860
the model that they train, they did three versions of it.
594
00:30:43,970 --> 00:30:49,430
The biggest one was called 180B, which I guess is for billion parameters.
595
00:30:50,090 --> 00:30:57,390
This thing used 3.5 trillion training tokens, 46,000 petaflop days—I’m
596
00:30:57,390 --> 00:31:03,280
not even sure what that means, but that’s what they quoted—and 4096 GPUs.
597
00:31:03,969 --> 00:31:07,560
The training process took six months, and used P4d
598
00:31:08,820 --> 00:31:12,450
EC2 instances that each have eight A100s in them.
599
00:31:12,930 --> 00:31:16,130
This was not cheap… by any stretch of the imagination.
600
00:31:16,510 --> 00:31:20,070
They actually, through this process, hit the performance limit
601
00:31:20,110 --> 00:31:24,830
of S3, and had to write new custom libraries that go beyond the
602
00:31:25,090 --> 00:31:31,010
3500 PUTs and 5500 GETs per second that S3 normally supports.
603
00:31:31,550 --> 00:31:34,370
Chris: I was going to say, S3 is not supposed to have limits.
604
00:31:34,630 --> 00:31:36,009
Ned: It does [laugh]
605
00:31:36,639 --> 00:31:36,669
—
Chris: [laugh]
606
00:31:36,890 --> 00:31:38,969
.
Ned: But you have to work real hard to get there.
607
00:31:39,469 --> 00:31:40,050
They did it.
608
00:31:40,360 --> 00:31:41,210
Congratulations.
609
00:31:41,889 --> 00:31:46,509
It turns out, if you use—there’s a version of S3 that is a single
610
00:31:46,719 --> 00:31:51,919
zone—not single region, but single zone—S3—I forget exactly what it’s
611
00:31:51,920 --> 00:31:56,320
called—if you pick that version of S3, the limits go up because it no
612
00:31:56,320 --> 00:32:00,220
longer has to do any replication or spreading across availability zones.
613
00:32:00,599 --> 00:32:00,819
Chris: Right.
614
00:32:00,870 --> 00:32:02,639
I think that version, when you look at it in
615
00:32:02,880 --> 00:32:05,000
the drop-down, is called don’t use this for DR.
616
00:32:05,289 --> 00:32:07,640
Don’t—for God’s sake—use this for DR.
617
00:32:07,890 --> 00:32:10,520
Ned: Yeah, it’s intended for exactly what they were doing,
618
00:32:10,520 --> 00:32:13,390
which is these large data models that they’re loading.
619
00:32:13,600 --> 00:32:15,359
Chris: People are going to use it for DR, aren’t they?
620
00:32:15,559 --> 00:32:16,899
Ned: They absolutely are.
621
00:32:16,899 --> 00:32:21,330
So, that session was super cool because they had AWS and folks
622
00:32:21,330 --> 00:32:25,260
from Falcon’s company—it’s called TII—talking about the model
623
00:32:25,260 --> 00:32:28,850
design, the training methodology, the data sources and efficiency.
624
00:32:29,270 --> 00:32:32,360
I feel like that could be its own episode, so I’m just going to stop there.
625
00:32:32,940 --> 00:32:33,260
Chris: Cool.
626
00:32:33,710 --> 00:32:34,260
Ned: Geez.
627
00:32:34,500 --> 00:32:34,784
I will brief—
628
00:32:34,800 --> 00:32:35,919
Chris: You said you were going to stop.
629
00:32:36,460 --> 00:32:37,839
Ned: I was going to stop talking about that.
630
00:32:37,900 --> 00:32:41,919
I’m briefly going to touch on AI security, just to mention that I
631
00:32:41,920 --> 00:32:46,530
attended a session that talked about how to implement—or security
632
00:32:46,830 --> 00:32:50,579
things to worry about when it comes to interacting with LLMs, and
633
00:32:50,580 --> 00:32:56,200
they mentioned that OWASP has a top ten for LLMs, which I had no idea.
634
00:32:56,849 --> 00:33:02,720
That report was brought together by 500 experts and 125 contributors,
635
00:33:02,800 --> 00:33:06,899
and came up with a list of possible vulnerabilities for LLMs.
636
00:33:07,500 --> 00:33:08,769
I read through part of the report.
637
00:33:08,820 --> 00:33:09,850
It is fascinating.
638
00:33:10,059 --> 00:33:12,890
Once again, this paper could be its own show, and I would
639
00:33:12,890 --> 00:33:15,760
like to have someone from OWASP or one of the contributors
640
00:33:15,980 --> 00:33:19,379
come on and explain it to me like the third-grader that I am.
641
00:33:20,020 --> 00:33:20,930
Chris: I support this plan.
642
00:33:20,940 --> 00:33:22,429
It means I have to do less work.
643
00:33:22,710 --> 00:33:23,210
Ned: Well, there you go.
644
00:33:23,540 --> 00:33:27,370
Me too [laugh] . So, just to bring it all
645
00:33:27,370 --> 00:33:31,130
down to brass tacks, am I an AI convert now?
646
00:33:31,219 --> 00:33:35,360
Was drinking from the firehose enough to bring me over to the AI side?
647
00:33:35,809 --> 00:33:36,269
No.
648
00:33:37,150 --> 00:33:40,760
My goal at the conference was to enter each session with an open mind.
649
00:33:41,120 --> 00:33:45,460
I did my best not to scoff at ridiculous claims, I tried to take
650
00:33:45,460 --> 00:33:49,350
people and the services at face value, to listen, to not judge.
651
00:33:49,710 --> 00:33:53,360
And for the most part, I was able to turn off the supercritical and
652
00:33:53,360 --> 00:33:57,700
cynical parts of my brain, and just kind of absorb it as it was presented.
653
00:33:58,320 --> 00:34:01,379
Now that I’ve had a little time to digest, here’s what I think:
654
00:34:01,840 --> 00:34:05,310
for starters, GenAI is still very much in its early days.
655
00:34:05,750 --> 00:34:09,950
There were several comparisons to the dotcom bubble, and I think that’s fair.
656
00:34:10,580 --> 00:34:14,440
There’s an embarrassing amount of money being poured into anything AI
657
00:34:14,860 --> 00:34:18,759
right now in the same way that any company that had a vague association
658
00:34:18,770 --> 00:34:22,120
with the World Wide Web was showered with funding in the late-’90s.
659
00:34:22,870 --> 00:34:24,680
That bubble must and will pop.
660
00:34:25,030 --> 00:34:28,020
There will be some genuine use cases that are worth pursuing,
661
00:34:28,369 --> 00:34:30,970
some that are a little ahead of their time, but they’ll come back
662
00:34:30,970 --> 00:34:36,020
around, and some that are just absolute crocks or complete scams.
663
00:34:36,610 --> 00:34:37,620
A lot of them are that.
664
00:34:38,429 --> 00:34:41,449
The most compelling use case I saw—and you may have already
665
00:34:41,449 --> 00:34:44,320
guessed this—was around developer and ops productivity.
666
00:34:44,880 --> 00:34:49,030
There’s a metric ton of tech debt at every large company, little
667
00:34:49,030 --> 00:34:52,360
desire to actually fix it—well, I won’t say ‘a little desire.’ There’s
668
00:34:52,360 --> 00:34:57,260
desire to fix it, but not enough time or money to fix it—this may
669
00:34:57,260 --> 00:35:01,700
actually be the best use case for GenAI AI as it exists right now.
670
00:35:02,360 --> 00:35:04,360
GenAI is good at understanding code.
671
00:35:04,379 --> 00:35:06,880
It’s good at migrating it, it’s good at testing it, and it’s
672
00:35:06,880 --> 00:35:09,860
good at ingesting a lot of data and making it available.
673
00:35:10,360 --> 00:35:13,709
So, it’s going to help Dev and Ops tremendously.
674
00:35:14,050 --> 00:35:19,360
Although I have a little concern around junior talent, and them
675
00:35:19,420 --> 00:35:22,369
being developed if we’re going to end up replacing them with AI.
676
00:35:23,250 --> 00:35:25,010
So, that is a potential problem.
677
00:35:25,790 --> 00:35:27,730
Everything else was AI whitewashing.
678
00:35:28,280 --> 00:35:31,150
Walking the expo floor, basically, every
679
00:35:31,150 --> 00:35:33,880
single booth had AI plastered on it somewhere.
680
00:35:34,130 --> 00:35:35,669
I am not exaggerating.
681
00:35:36,330 --> 00:35:39,459
Every company, from storage to monitoring to professional
682
00:35:39,460 --> 00:35:45,950
services, had AI something, and 90% of them were talking about
683
00:35:45,950 --> 00:35:50,220
some kind of shitty chatbot or some basic-ass machine learning.
684
00:35:50,990 --> 00:35:52,650
In a few years, it will be something else
685
00:35:52,690 --> 00:35:54,950
in the same way that cloud was at one point.
686
00:35:55,190 --> 00:35:56,609
But most of it is just bullshit.
687
00:35:57,270 --> 00:35:58,670
Am I glad I took the plunge?
688
00:35:59,029 --> 00:35:59,329
Yeah.
689
00:35:59,840 --> 00:36:01,780
It was informative to see what people are really
690
00:36:01,780 --> 00:36:04,950
doing versus the marketing and the general messaging.
691
00:36:05,560 --> 00:36:08,319
I can see there’s a lot of potential for disruption coming down the
692
00:36:08,330 --> 00:36:12,930
pike, but it’s not nearly as dire or revolutionary, as some suggest.
693
00:36:13,500 --> 00:36:15,710
Or I don’t know, Chris, maybe I’m wrong and AGI
694
00:36:16,010 --> 00:36:18,169
will be born next week and put me to the sword.
695
00:36:18,620 --> 00:36:19,060
Whatever.
696
00:36:19,060 --> 00:36:20,210
I’m going to be on vacation.
697
00:36:20,650 --> 00:36:22,080
My digital assistant can handle it.
698
00:36:22,740 --> 00:36:23,250
That’s it.
699
00:36:23,320 --> 00:36:24,880
Hey, thanks for listening or something.
700
00:36:24,880 --> 00:36:26,900
I guess you found it worthwhile enough if you made it all
701
00:36:26,900 --> 00:36:29,230
the way to the end, so congratulations to you, friend.
702
00:36:29,480 --> 00:36:30,689
You accomplished something today.
703
00:36:30,870 --> 00:36:33,980
Now, you can sit on the couch, query Developer Q—Q
704
00:36:33,980 --> 00:36:38,520
Developer?—for the best way to rewrite your code, and just relax.
705
00:36:38,570 --> 00:36:39,250
You’ve earned it.
706
00:36:39,420 --> 00:36:42,250
You can find more about this show by visiting our LinkedIn page,
707
00:36:42,250 --> 00:36:45,850
just search ‘Chaos Lever,’ or go to the website, chaoslever.com
708
00:36:45,850 --> 00:36:48,899
where you’ll find show notes, blog posts, and general tomfoolery.
709
00:36:49,340 --> 00:36:53,380
We’ll be off next week because I actually am genuinely going on vacation.
710
00:36:53,730 --> 00:36:57,420
So, you’ll have to wait two weeks to see what fresh hell is upon us.
711
00:36:57,710 --> 00:36:58,549
Ta-ta for now.
712
00:37:06,730 --> 00:37:08,029
Chris: When are you not on vacation?
713
00:37:08,429 --> 00:37:09,549
Ned: I’m sorry, I was on vacation.
714
00:37:09,559 --> 00:37:09,899
What?
715
00:37:10,259 --> 00:37:10,399
[laugh]