WEBVTT

1
00:00.000 --> 00:05.840
Let's begin our dialogue with one of the most well-known examples of software

2
00:05.840 --> 00:07.200
development

3
00:07.200 --> 00:08.880
and DevOps.

4
00:08.880 --> 00:11.160
And that is Amazon.com.

5
00:11.160 --> 00:13.760
That's what you're seeing right here on the screen.

6
00:13.760 --> 00:15.600
We've got Amazon.com up.

7
00:15.600 --> 00:17.960
I want you to think about this for a second.

8
00:17.960 --> 00:24.320
When was the last time you saw Amazon.com go down for maintenance?

9
00:24.320 --> 00:29.680
I mean, they ship updates quite literally every single day to this website.

10
00:29.680 --> 00:34.810
Whether it's new features or changing the UI or changing something in the back
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

10
00:29.680 --> 00:34.810
Whether it's new features or changing the UI or changing something in the back

11
00:34.810 --> 00:35.240
end.

12
00:35.240 --> 00:40.120
They're changing something with this application every single day.

13
00:40.120 --> 00:42.760
They are multiple times a day even.

14
00:42.760 --> 00:44.760
But it never goes down.

15
00:44.760 --> 00:50.890
And then the next thing is when was the last time you saw some major hack or

16
00:50.890 --> 00:53.080
threat take

17
00:53.080 --> 00:56.160
place on Amazon.com?

18
00:56.160 --> 01:01.120
I'm racking my brain and I can't think of a time for either.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

18
00:56.160 --> 01:01.120
I'm racking my brain and I can't think of a time for either.

19
01:01.120 --> 01:06.200
And I've been shopping on Amazon.com literally for over 20 years now.

20
01:06.200 --> 01:10.560
I made my first purchase on Amazon in 2005.

21
01:10.560 --> 01:16.120
I bought a CD on Amazon.com in 2005.

22
01:16.120 --> 01:22.180
And since then I don't recall a time that they ever took Amazon down for like

23
01:22.180 --> 01:23.100
software

24
01:23.100 --> 01:29.660
updates or operating system patches or any sort of threat that took it down.

25
01:29.660 --> 01:34.110
Now there's things that can happen like somebody attacks a global DNS center
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

25
01:29.660 --> 01:34.110
Now there's things that can happen like somebody attacks a global DNS center

26
01:34.110 --> 01:34.540
and that could

27
01:34.540 --> 01:36.540
be a big problem.

28
01:36.540 --> 01:40.700
But for the most part, like that's not an Amazon specific problem.

29
01:40.700 --> 01:45.820
That's a, you know, some global attack threat going on there.

30
01:45.820 --> 01:47.100
Now I want you to think about this.

31
01:47.100 --> 01:49.900
What is Amazon's product?

32
01:49.900 --> 01:55.820
What is it that they build and ship and ultimately sell?

33
01:55.820 --> 02:02.580
It's this marketplace, this marketplace right here, Amazon.com.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

33
01:55.820 --> 02:02.580
It's this marketplace, this marketplace right here, Amazon.com.

34
02:02.580 --> 02:05.180
It is a application.

35
02:05.180 --> 02:12.940
They build software and that software is an online marketplace.

36
02:12.940 --> 02:15.280
One of the biggest things that they ever did, really two of the biggest things

37
02:15.280 --> 02:15.700
they ever

38
02:15.700 --> 02:21.300
did was they enabled a way to vet other sellers to sell their products on their

39
02:21.300 --> 02:22.060
website.

40
02:22.060 --> 02:24.740
Amazon, of course, you know, takes a cut.

41
02:24.740 --> 02:30.290
And then those sellers can piggyback off of Amazon's magical logistics, which
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

41
02:24.740 --> 02:30.290
And then those sellers can piggyback off of Amazon's magical logistics, which

42
02:30.290 --> 02:31.100
of course

43
02:31.100 --> 02:35.180
Amazon really nailed down and that became with prime and two day shipping.

44
02:35.180 --> 02:38.780
And even same day shipping, that became one of their competitive advantages.

45
02:38.780 --> 02:45.780
But it ultimately starts right here, the thing that they build and sell is an

46
02:45.780 --> 02:47.020
application,

47
02:47.020 --> 02:50.340
a website and software.

48
02:50.340 --> 02:52.420
It's the thing that they do.

49
02:52.420 --> 02:57.380
It's the thing that they do best is building this website.

50
02:57.380 --> 03:00.220
This is a lot different from other websites, right?
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

50
02:57.380 --> 03:00.220
This is a lot different from other websites, right?

51
03:00.220 --> 03:06.020
If you go to a website, you know, like an HVAC shop in your town, you go to

52
03:06.020 --> 03:07.780
their site,

53
03:07.780 --> 03:12.450
it's for the most part, a relatively static website where you're just getting

54
03:12.450 --> 03:13.180
information

55
03:13.180 --> 03:17.190
about their service, but then you have to call them and schedule them and then

56
03:17.190 --> 03:17.700
they come

57
03:17.700 --> 03:22.060
out and they perform the service and that's ultimately what they're selling.

58
03:22.060 --> 03:25.780
The HVAC's website is not dynamic.

59
03:25.780 --> 03:28.100
It's not an application.

60
03:28.100 --> 03:30.940
You know, they're not really collecting a lot of data and they're not really
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

60
03:28.100 --> 03:30.940
You know, they're not really collecting a lot of data and they're not really

61
03:30.940 --> 03:31.500
generating

62
03:31.500 --> 03:37.280
a lot of sales or revenue directly from their website because HVAC shops, like

63
03:37.280 --> 03:37.740
a lot of

64
03:37.740 --> 03:41.820
other shops, if not most other shops, don't build software for a living.

65
03:41.820 --> 03:43.900
They perform a service.

66
03:43.900 --> 03:50.140
Amazon.com is by definition a software company.

67
03:50.140 --> 03:57.010
So what is the secret sauce that Amazon and Google and Meta all kind of figured

68
03:57.010 --> 03:57.540
out at

69
03:57.540 --> 03:59.220
the same time.

70
03:59.220 --> 04:07.300
That is the software development lifecycle and cloud scale.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

70
03:59.220 --> 04:07.300
That is the software development lifecycle and cloud scale.

71
04:07.300 --> 04:11.780
And the thing that makes all of this work, the software development lifecycle

72
04:11.780 --> 04:12.380
and cloud

73
04:12.380 --> 04:17.180
scale applications is DevOps.

74
04:17.180 --> 04:21.660
So what we're here to talk about now is how this comes to be.

75
04:21.660 --> 04:24.980
How does DevOps come to be?

76
04:24.980 --> 04:28.500
Well, what is DevOps at the end of the day?

77
04:28.500 --> 04:37.380
The primary operation of this business is software development.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

77
04:28.500 --> 04:37.380
The primary operation of this business is software development.

78
04:37.380 --> 04:39.340
That's what they do.

79
04:39.340 --> 04:45.900
So you'll have a lot of software developers, devs, sitting, you know, at home,

80
04:45.900 --> 04:46.220
working

81
04:46.220 --> 04:50.620
on their computer or sitting in an office, working on their computer and the

82
04:50.620 --> 04:51.140
writing

83
04:51.140 --> 04:55.860
code and the writing code and they're shipping that code to someplace.

84
04:55.860 --> 04:58.420
They're storing that code in someplace.

85
04:58.420 --> 05:03.000
You could think of it just as a very basic example as a file share, even though
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

85
04:58.420 --> 05:03.000
You could think of it just as a very basic example as a file share, even though

86
05:03.000 --> 05:03.460
that's

87
05:03.460 --> 05:04.460
not what they're really doing.

88
05:04.460 --> 05:07.380
But you could kind of think about it that way.

89
05:07.380 --> 05:12.210
So the thing that happens, the big challenge that happened in the early 2000s

90
05:12.210 --> 05:13.060
right around,

91
05:13.060 --> 05:18.900
you know, the 2008, 2009 period is how do we get that new code that they've

92
05:18.900 --> 05:20.500
written delivered

93
05:20.500 --> 05:26.980
to a server and vetted so that we know that it works.

94
05:26.980 --> 05:39.380
That this part right here, the delivery and testing and confirmation and then
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

94
05:26.980 --> 05:39.380
That this part right here, the delivery and testing and confirmation and then

95
05:39.380 --> 05:40.940
review and

96
05:40.940 --> 05:50.660
feedback, that is all the operations that facilitate software development.

97
05:50.660 --> 05:55.480
So when we think about DevOps, we're not really thinking about dev because

98
05:55.480 --> 05:56.700
software developers

99
05:56.700 --> 05:57.700
are doing that.

100
05:57.700 --> 06:01.400
They've been doing dev for decades now.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

100
05:57.700 --> 06:01.400
They've been doing dev for decades now.

101
06:01.400 --> 06:06.950
When we start talking about DevOps, we're talking about how do we streamline

102
06:06.950 --> 06:07.900
the process

103
06:07.900 --> 06:14.870
of getting the devs work into the final server, knowing that once it's there,

104
06:14.870 --> 06:15.940
it's going

105
06:15.940 --> 06:19.710
to work and it's not going to break anything and it's not going to take

106
06:19.710 --> 06:20.940
everything down.

107
06:20.940 --> 06:24.180
How do we know that it's bug free?

108
06:24.180 --> 06:28.540
This fundamentally is the point of DevOps.

109
06:28.540 --> 06:35.860
The point of DevOps is to manage the operations that facilitate software
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

109
06:28.540 --> 06:35.860
The point of DevOps is to manage the operations that facilitate software

110
06:35.860 --> 06:37.580
development.

111
06:37.580 --> 06:41.510
This ultimately came about because software developers don't really have a

112
06:41.510 --> 06:42.440
problem sitting

113
06:42.440 --> 06:44.740
on their computer writing code.

114
06:44.740 --> 06:50.610
It's getting the code into its final resting place on a server that became the

115
06:50.610 --> 06:52.180
real challenge.

116
06:52.180 --> 06:56.370
If we start thinking about what really happened in those early 2000s, what did

117
06:56.370 --> 06:57.340
really happen?

118
06:57.340 --> 07:00.620
Well, it was time to deliver the code to the server.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

118
06:57.340 --> 07:00.620
Well, it was time to deliver the code to the server.

119
07:00.620 --> 07:03.660
Did we have a server?

120
07:03.660 --> 07:07.420
If not, who is going to deploy that server?

121
07:07.420 --> 07:10.380
How do we configure that server?

122
07:10.380 --> 07:15.820
Does the server need certain things in order to run the application?

123
07:15.820 --> 07:19.260
What about the networking stack?

124
07:19.260 --> 07:24.540
And then maybe a public DNS stack which goes along with it, firewall provision

125
07:24.540 --> 07:25.420
ing, routing

126
07:25.420 --> 07:29.540
the web servers traffic to the right back end page.

127
07:29.540 --> 07:36.680
This all became a full stop because now we had to invoke a series of other team
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

127
07:29.540 --> 07:36.680
This all became a full stop because now we had to invoke a series of other team

128
07:36.680 --> 07:37.580
members

129
07:37.580 --> 07:42.540
to come in and do a lot of work that took a long time.

130
07:42.540 --> 07:46.660
So the software developer was mostly done for their work.

131
07:46.660 --> 07:50.300
They were waiting for it to be reviewed and feedback given to them so they know

132
07:50.300 --> 07:50.660
what to

133
07:50.660 --> 07:51.660
do next.

134
07:51.660 --> 07:57.000
But now we've stopped all progress for months because we're waiting for this

135
07:57.000 --> 07:58.060
whole new set

136
07:58.060 --> 08:02.660
of infrastructure to be deployed and everything else to facilitate this new
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

136
07:58.060 --> 08:02.660
of infrastructure to be deployed and everything else to facilitate this new

137
08:02.660 --> 08:03.900
application going

138
08:03.900 --> 08:05.300
live.

139
08:05.300 --> 08:11.380
So DevOps itself really became a lifestyle.

140
08:11.380 --> 08:16.550
It's really a management practice of how we get software into the end state as

141
08:16.550 --> 08:17.100
quickly

142
08:17.100 --> 08:18.580
as possible.

143
08:18.580 --> 08:22.410
So I'm sitting here telling you the way we were doing things used to take

144
08:22.410 --> 08:23.020
months.

145
08:23.020 --> 08:30.020
Now Amazon delivers new code multiple times per day.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

145
08:23.020 --> 08:30.020
Now Amazon delivers new code multiple times per day.

146
08:30.020 --> 08:33.980
How how did that much change in progress happen?

147
08:33.980 --> 08:39.560
In the next video, we're going to start breaking apart how DevOps and CI CD

148
08:39.560 --> 08:40.740
really works under

149
08:40.740 --> 08:42.620
the hood.
