AWS re:Invent 2021 - Keynote with Dr. Werner Vogels
AWS re:Invent 2021 - Keynote with Dr. Werner Vogels
Dr. Werner Vogels, CTO, Amazon.com, looks at the past, present and future of the cloud and how it is changing what developers can build. He looks at how developer experience has changed over time and announces a number of new AWS developer tools and services.
Finally, he dives deep into how Amazon Games built their latest title “New World”, going behind the scenes and showcasing the techniques and AWS services that support a massive number of simultaneous players. Guest speakers include, Matt Coulter of Liberty Mutual and Payam Banazadeh of Capella Space.
ASL (American Sign Language) is available here - • AWS re:Invent 2021 - Keynote with Dr…
ABOUT AWS Amazon Web Services (AWS) is the world’s most comprehensive and broadly adopted cloud platform, offering over 200 fully featured services from data centers globally. Millions of customers — including the fastest-growing startups, largest enterprises, and leading government agencies — are using AWS to lower costs, become more agile, and innovate faster.
#AWS #AmazonWebServices #CloudComputing
Content
7.074 -> A road trip to Vegas,
12.179 -> re:Invent 2021.
17.501 -> How has it been 10 years?
21.238 -> Please welcome Chief Technology
Officer of amazon.com,
24.725 -> Dr. Werner Vogels.
27.494 -> [music playing]
33.467 -> Nope!
34.801 -> [music playing]
39.273 -> Now, that's what I call a ride.
44.661 -> But first, music.
48.932 -> Shall we?
50.784 -> [music playing]
86.003 -> What… what is that?
90.073 -> Ah, Lambda.
91.275 -> ... introduce
92.392 -> AWS Lambda, which is an event-driven
compute service
95.128 -> for a dynamic application,
96.697 -> and you have to run no servers,
no instances, server-free back ends.
104.521 -> Wait, it comes from here.
107.491 -> It’s bat country.
110.511 -> [music playing]
132.499 -> It was only last year.
135.986 -> It's never been a better time to use
your knowledge, skills,
139.423 -> and talents to make
a difference in the world.
143.727 -> [music playing]
149.116 -> Can you believe it?
150.617 -> 10 years.
10 years of re:Invent.
154.805 -> [music playing]
157.124 -> From 2012 to 2021,
160.21 -> a celebration of innovation
on behalf of our customers.
165.649 -> I'm ready, Las Vegas.
167.551 -> Are you?
169.152 -> [music playing]
174.942 -> Please welcome the Chief
Technology Officer of amazon.com,
178.812 -> Dr. Werner Vogels.
181.598 -> [music playing]
195.812 -> So, welcome Las Vegas.
197.998 -> How are you doing this morning?
199.199 -> Hey!
200.234 -> [applause]
201.268 -> Did you like my choice
of music today?
204.071 -> Can you get an applause for
the Catfish Cattus quartet out there?
207.674 -> They were absolutely amazing.
209.826 -> [applause]
215.132 -> And this may be year 10 of re:Invent,
218.452 -> that doesn't mean I'm not
going to wear a T-shirt, though.
220.771 -> I am.
221.955 -> Well, to make sure… I've realized
that many of you have real insight
227.044 -> into the 80s per a new wave era.
230.797 -> So, in that case, for a few of you
from the UK,
234.852 -> you've actually noticed bands
that had 19 albums on the charts,
238.739 -> The Stranglers.
240.023 -> [applause]
243.894 -> Okay, 10 years.
247.514 -> 2012, I’m addicted to first keynote
at the re:Invent,
251.785 -> still is very much alive in my head
253.637 -> because I thought that was such
an amazing first re:Invent at all.
258.575 -> And we've never done
anything like that before.
261.778 -> And the cloud was five years old
at that time,
265.465 -> with quite a bit of experience
already with that,
267.901 -> but we’re giving you lots of advice
270.404 -> that actually has come back
over the years.
272.856 -> And again, I think what you will see
today is actually
275.642 -> I will be reusing
some of these advice
279.213 -> that I gave you in the first keynote,
because they're still valid today.
285.135 -> And if I look back, sort of thinking
about sort of
287.704 -> how did this all get started?
289.84 -> And I'll take you a little bit
of my memory, right,
291.909 -> to see how things
have evolved over time.
295.646 -> And I think things started off,
of course,
298.232 -> is that innovation was constrained,
300.35 -> because before cloud, you either had
to get massive investments,
304.421 -> you had to buy hardware,
you had to hire
306.573 -> IT people, things that had nothing to
do with actually building a product.
312.913 -> And, you know, the one thing
that cloud really did in those days
317.084 -> was go from everything
that was constrained,
319.937 -> all the hardware pieces,
to making them all programmable.
324.842 -> Suddenly, getting access to capacity
was just a click of a button.
329.696 -> And whether that was networks,
became VPC, or AZs as data centers,
334.835 -> ELB for load balancers, you know,
RDS, S3, EC2,
341.491 -> all of those were
physical resources before,
346.697 -> but now became
virtually programmable.
350.884 -> And that made all the difference,
because it wasn't only
353.053 -> that you could scale up
by buying more hardware,
357.407 -> you could actually scale down easily
as well through click of a button.
361.578 -> And that made all the difference.
362.863 -> So look at the EC2, in those days,
it was really simple.
367.484 -> You know, one single family
with three different sizes.
372.372 -> And then say the interface was
simple; create, launch, terminate.
377.928 -> And the kind of things that
we've done over the years
380.163 -> with EC2 instances has become…
it's a very ambitious.
386.153 -> And every day almost, you asked us
for a different instance family.
391.692 -> Now, you want to store the optimized
ones, you want compute optimized,
396.58 -> you want to have large
memory instances
399.867 -> where you could run your SAP online.
403.854 -> And so were the first instances,
were all based on Linux hypervisor.
410.727 -> We needed to do massive investments
and innovations in our data centers
414.748 -> to make sure that we could get
sort of next generation
418.135 -> compute platforms
into your hands as well.
421.038 -> And Nitro, were talked about
two years ago went in depth,
424.191 -> exactly how we were using Nitro.
426.527 -> The Nitro hypervisor made it possible
to introduce
430.514 -> all these new
hardware platforms for you.
434.351 -> And you know, especially a shift
to Arm
437.871 -> has had significant impact on cost
and performance for everyone.
443.293 -> But to be honest, the most popular
launch in the last
448.131 -> re:Invent was actually a Mac.
453.387 -> But the one thing that Apple has done
456.24 -> is follow the same path
that we've done at AWS.
459.877 -> And they also went
to their own silicon
462.663 -> and built their own Arm chips.
465.182 -> So today, I'm happy to announce
that you will get your hands
469.837 -> on the Mac EC2 M1 instances.
474.274 -> So, did you--
475.876 -> [applause]
481.365 -> Yeah, let's make that the most
popular launch this year as well.
484.885 -> Yeah?
486.587 -> Yeah, so it is actually just likely
to Graviton processors,
490.24 -> price performance
is significant in Arm.
493.81 -> And I think Apple claims for the M1
Mac instances,
497.581 -> that there is a 60%
cost benefit improvement over,
503.103 -> let’s say the Intel platforms
that they used before.
506.623 -> Now, all these different instance
types,
509.176 -> makes that you guys are doing
a lot of work, really a lot of work.
514.331 -> And that results in 60 million
launches of EC2 each day.
522.422 -> And this is doubling the number
of launches that we saw in 2019.
529.496 -> You can do this on bare metal.
530.981 -> And remember,
these are launches today.
533.467 -> There's not even the steady state
running EC2 instances
537.171 -> that are out there.
538.572 -> This is crank wind impressive.
541.191 -> Don’t you think so?
542.309 -> 16 million instances a day.
546.613 -> Now, as I said earlier, the clouds
removed those constraints.
552.019 -> However, it didn't remove
all constraints.
556.757 -> And if we go back to
the 2012 presentation
559.009 -> I gave you about the new world
and removing constraints,
563.23 -> I promised you
564.781 -> I would fix the speed of light,
still on my to-do list?
570.37 -> Oh, yeah.
572.339 -> So there were a number of what
I would call laws
574.892 -> that sort of continuously
577.044 -> are the constraints
that we have to deal with.
579.93 -> Yeah, whether there is latency
and bandwidth,
583.033 -> or the robustness
of your network connections,
586.37 -> or the law of the land,
data residency.
589.122 -> Now, that one is actually one of the,
I’d say, easier ones,
593.393 -> but it's one of two things
where we're making most progress.
595.762 -> We're working together with
regulatory agencies around the world
599.283 -> to educate them about clouds
and what capabilities are.
602.903 -> And that the security
and the protection
605.506 -> that they get your data in the cloud,
607.724 -> is much better
than they would ever be able
609.826 -> to get in their own data centers.
613.113 -> Now go back to 2006.
614.965 -> If you think about removing
these constraints,
617.1 -> or dealing with these constraints,
if you find a street,
621.255 -> you only had North Virginia, that was
the first region we launched.
625.225 -> And you can imagine
that if you have customers in Japan,
627.594 -> or in India,
or in South Africa,
631.315 -> latency to West Virginia
are significant.
634.651 -> So launching these other regions,
yeah,
637.321 -> the first regions
was in Ireland in 2007,
641.191 -> then we launched Singapore
and North California.
644.545 -> If you look at that, customers now
could start deciding
648.365 -> which region to use
based on where their customers are.
652.286 -> And, for example, a company in India,
Ugama Media streaming company
657.591 -> will be streaming their content
out of Singapore
661.445 -> that would actually be using North
California for doing transcoding.
665.415 -> Because remember, these regions
are all cost following.
668.035 -> So suddenly, they could make choices
for things
670.47 -> that ruin actually latency critical,
but lower cost versus, you know,
676.476 -> maybe a bit higher cost
with lower latency.
680.364 -> And there's applications that
we could not have been building,
683.333 -> if we didn't have to take
these regions closer to you.
687.638 -> Well, take for example, Alexa.
690.007 -> I think in 2006, or 2009,
or even 2015,
695.495 -> Alexa would never be possible.
696.914 -> And why not?
698.031 -> Because you need ultra-low latency
to make sure that you can reach
701.368 -> the Alexa Voice Service,
which sits in the cloud.
704.371 -> And if you don't get a response
back from Alexa within a second,
707.808 -> it doesn't feel like
a natural conversation.
711.728 -> And as such, you know, both
the advances in hardware, in GPUs,
716.533 -> and the machine learning and both
in hardware and software,
720.087 -> have enabled
the capabilities of Alexa.
722.773 -> But we still need to drive
the latency down
725.075 -> since the network
will not be in your way.
727.811 -> Now to that, we develop
this global footprint.
731.381 -> That today, we have 25 regions,
734.168 -> 81 Availability Zones
across six continents.
737.955 -> And I'll promise you, by the time
we finished this keynote,
741.959 -> you will know that it is actually
in seven continents.
746.713 -> And so, we continue
working to expand this.
750.184 -> There are the nine more regions
planned that we will bring online
755.189 -> in the coming two years,
758.041 -> and each of them will continue
to help you reduce your latency,
762.88 -> but also address data
residency requirements.
766.984 -> Now, if you think about latency
is not only the regions
770.287 -> that become important to you,
yeah, we have 310
774.324 -> Points of Presence around the world.
777.194 -> And we use these publications
778.512 -> to deliver content
at high speed for CloudFront.
782.349 -> But not only is it the content
distribution network,
785.903 -> with Lambda functions of a CloudFront
functions and Lambda@Edge,
790.04 -> you're actually also being able
to do computation at the edge.
795.212 -> And if you make use of S3
797.014 -> Transfer Acceleration, you make use
of each of these endpoints
800.784 -> to really at high speed
move data into S3,
805.622 -> beating sort of
the bandwidth limitations
809.726 -> that you, otherwise, would have.
811.528 -> Now, it's not only that way
that we bring you closer
815.949 -> to the AWS capabilities.
819.036 -> Now, in the past two years,
we've been building Local Zones,
824.024 -> which you gets
your services even closer.
827.611 -> We currently have 14 Local Zones.
830.08 -> We started off in the U.
831.331 -> S.
832.482 -> to actually start to understand
how to best build these zones,
835.886 -> and how to best use them, and how
our customers will be using them.
839.406 -> And there is a subset of capabilities
running in the Local Zone
842.793 -> that is attached to a region,
so there is EC2,
845.462 -> and EBS,
and ECS that you can run there.
848.315 -> And basically, you can build a VPC
in the region,
852.236 -> extend that VPC into a Local Zone,
855.706 -> and actually move your containers
back and forth seamlessly
859.376 -> within the same VPC.
864.982 -> Now, I'm happy and very excited
actually turn around
869.052 -> and say we will be expanding
the Local Zones internationally
872.84 -> across the world.
874.491 -> Yeah, there's about 30,
at least 30 new AWS
877.945 -> Local Zones coming online in Europe,
in South America, in Africa, in Asia,
883.25 -> and in Australia.
885.085 -> And of course, we will have one
in my home city of Amsterdam.
889.706 -> [applause]
896.246 -> Now, one of the very interesting
applications have seen
899.933 -> that make use of Local Zone
is a company called JackTrip.
903.72 -> And they do sort of remote
live performances of music.
907.574 -> Now to be able to do that,
the maximum time for synchronization
911.345 -> is about 25 milliseconds.
913.547 -> So imagine is a group of musicians
spread out through Austin,
917.968 -> after all, you know the life
musical capital of the world.
921.755 -> If they would have to connect
to one of the regions, let's say,
924.741 -> if Virginia or Oregon,
latency will be too high.
928.045 -> It will be impossible for them
to play synchronized music.
932.065 -> So they connect to the local
zoning Houston,
935.802 -> which makes it possible for them
to completely rehearse
940.257 -> and actually do performances
live over the internet remotely.
945.662 -> And given the situation that
we've been in for the past two years,
949.399 -> this was really important for them.
952.035 -> Now, that’s not the only way,
953.887 -> we started trying to overcome
the limitations of speed of lights.
959.443 -> And AWS Wavelength is a good
example for that,
963.514 -> were actually sort of the low
latency promised by 5G,
968.335 -> we do not need to add more latency
to that for you to go to region,
971.872 -> or to Local Zone.
973.307 -> So that's why we put actually AWS
capabilities inside the 5G
977.01 -> access points, again,
978.562 -> trying to overcome
sort of the restrictions
982.482 -> that the speed of light
and latency give us.
986.787 -> And quite a few of our customers
are waiting things like machine
989.506 -> learning inference in those
instances or game streaming,
995.295 -> and this already starts
to get close to the network.
999.566 -> So let’s take a look at what we've
done in the physical infrastructure,
1003.504 -> but now on the networking side.
1006.39 -> Let's go back to 2006 again.
1010.294 -> When we launched North Virginia,
the world was pretty flat.
1014.882 -> Basically, you launch an instance,
we assigned an IP address to it,
1019.119 -> and then that of course was flat.
1021.405 -> And if you wanted to go talk
to other instances,
1023.79 -> you needed to go over
the public internet.
1026.927 -> And so the early enhancements to EC2
really focused on the networking,
1031.982 -> yeah, how to do autoscaling,
how to do load balancing,
1035.519 -> how to get insights
into your network with CloudWatch.
1039.089 -> And one of the first things we did
also was actually introduced
1042.476 -> Elastic IP addresses,
1043.81 -> meaning that you could actually
have persistent IP addresses,
1047.865 -> instead of one assigned
at boot-time to you.
1052.252 -> But the most important launch
in the networking space has been VPC.
1056.773 -> And we launched that in 2009.
1059.026 -> This allows you to calling of
a piece of the cloud,
1062.162 -> assign your own addressing
blocks to it,
1064.631 -> then connect it back
to your data centers.
1067.184 -> So it seemed like your data centers
were three layers seamlessly expanded.
1072.072 -> You could use VPC for a VPM for that,
or later, Direct Connect.
1077.294 -> And this was still in the early days,
a pretty flat network.
1081.198 -> Well, in 2013, we started
making VPC the default.
1085.369 -> And EC2-Classic, which we recently
started deprecating
1090.174 -> is now sort of
the old style network,
1093.126 -> where VPC by default really
is the one that you're using.
1098.382 -> And if you look at how the AWS
backbone has evolved over time,
1103.32 -> that looks very different
from how we look like in,
1107.04 -> let's say, the late 2000s.
1110.994 -> And the backbone of today consists
of a fully redundant 100 Gig network.
1115.682 -> And it's not just our control plane,
you can use our backbone.
1120.003 -> That while in the past, you would
communicate between two VPC,
1123.941 -> you would go over the internet.
1125.843 -> Now you just transfer
over the AWS backbone.
1131.882 -> And this is really one of the most
highly scaled,
1135.586 -> purpose-built
global networks ever assembled.
1138.689 -> And it's growing really, really fast.
1141.892 -> And if you look at some of the core
networking products
1144.311 -> that we built on top of that,
there's a whole variety of them.
1148.515 -> Like I mentioned earlier, S3
1150.184 -> Transfer Acceleration, the basis
you can make use of these backbone
1154.238 -> to get your data to S3
as fast as possible.
1159.393 -> Now, even with all of these
components,
1162.863 -> building a global network,
1165.599 -> connecting maybe hundreds of
your offices to the cloud,
1170.871 -> is still a big challenge.
1173.223 -> And it wouldn’t be the first time
that I’d actually meet a customer
1175.876 -> that shows me a massive spreadsheet
1178.345 -> and the way he uses to manage
all the connections between
1181.915 -> manufacturing sites
and back offices into the cloud.
1186.453 -> So there's a lot of work
going on there.
1188.822 -> And actually, quite a few of these
customers are literally running
1192.626 -> thousands of VPCs,
if not tens of thousands of VPCs.
1197.548 -> And so we started to think
how can we help these customers
1201.468 -> sort of really overcome
all the heavy lifting
1204.688 -> that you have to do
if you have a very widespread network
1207.991 -> yourself that you need
to connect to the cloud.
1211.745 -> So today, I'm happy to announce
1214.631 -> AWS Cloud WAN, which gives you
the ability to build, manage, monitor
1220.437 -> global-private
five wide area networks using AWS.
1227.294 -> [applause]
1233.283 -> So, how does this work?
1235.485 -> Yeah, imagine you have
a very large global company,
1239.306 -> and you have dozens of
manufacturing sites around the world,
1243.327 -> you maybe have offices in each of
the big cities around the world,
1248.065 -> and you need to connect them
all to AWS
1250.801 -> because that's where
your applications are in.
1253.403 -> Now, the first thing you do
is you start selecting
1256.206 -> the regions you would like to use.
1258.876 -> And then automatically,
once you actually define this,
1265.032 -> all the remote users and sites
and data centers will connect
1268.202 -> to the geographically
closest location
1270.804 -> using a VPN or Direct Connect.
1274.508 -> And this is actually built for you
in minutes
1277.911 -> using the big AWS
backbone for you,
1281.031 -> to basically give you
a highly reliable
1284.034 -> and highly available
software-defined wide area
1287.521 -> network running over
the AWS infrastructure.
1292.009 -> It is not just that, you can
actually also segment
1295.996 -> these pieces of software-defined
network that you've created.
1299.249 -> Maybe you create a separate
segment for your corporate office,
1302.719 -> you create a different segment
for your manufacturing sites.
1308.125 -> And these segments cannot
communicate with each other,
1310.894 -> unless you explicitly allow it,
of course, will give you a dashboard
1317.134 -> for which you can monitor
all your network activity.
1321.205 -> And it gives you visibility
and your availability,
1324.274 -> you can troubleshoot productivity
and performance issue, and so on.
1329.713 -> Actually, it should not be possible
1332.883 -> without this wide range of partners
that we've been working with,
1336.086 -> and that is, whether that’s in the
telco business, system integrators,
1339.606 -> and the software-defined
wide area network vendors,
1342.826 -> that actually help us
with their technology
1345.095 -> to build
software-defined WANs,
1347.397 -> privately for you
over the AWS backbone.
1352.402 -> Now, think about regions,
what we talked about,
1356.557 -> so there’s much more than regions,
1359.643 -> that we already said that to overcome
certain latency challenges,
1365.983 -> we give you Points of Presence,
we give you these Wavelength Zones,
1369.837 -> and we’ll give you Local Zones.
1372.856 -> But you know,
cloud has gone much further.
1376.026 -> And you've asked us for so much more
than just these Zones,
1380.314 -> these Points of Presence.
1382.032 -> One thing, of course was, another way
to overcome the latency requirements
1387.504 -> is by actually moving
AWS closer to your data centers.
1391.859 -> And we've done that, of course,
we've Outposts.
1394.595 -> Yeah, and over the years,
we really heard
1397.014 -> that you have certain workloads
1399.316 -> that you cannot move
out of your data center,
1401.235 -> might be that your SAP system
feels connected
1404.054 -> to a database that for some reason,
you're not willing to move.
1407.641 -> However, you want to build
all your new applications,
1410.511 -> or even older applications
that are running on AWS.
1415.315 -> So the prime reason for Outposts
1418.101 -> is to actually beat latency
between the AWS cloud
1422.122 -> and capabilities that you're running
in your own data centers.
1426.326 -> That's about moving either
1427.978 -> before the two racks
into your data centers,
1432.065 -> you can have extremely
close connectivity.
1435.669 -> Now if we look at customers
that have been very successful
1437.971 -> with Outposts
is all for a variety of reasons.
1440.891 -> Fanduel doesn’t to beat latency,
1443.243 -> and actually reduce the latency
for the gambling
1447.781 -> between themselves
and their customers.
1450.984 -> First Abu Dhabi Bank
in the UAE makes use of Outposts
1454.955 -> to actually meet data
residency requirements.
1458.358 -> And they actually make
use of multiple Outposts
1461.028 -> in different locations in the UAE
1463.163 -> so they can do business continuity
using Outposts.
1466.533 -> And Phillips still stays for,
again, for local processing
1470.854 -> as well as for data residency
requirements around healthcare.
1475.776 -> Now, we started off, of course,
with a 42 rack.
1479.563 -> But now, actually, we also
give you these two other
1482.683 -> Outposts instances is that,
for example, in retail locations,
1486.403 -> or you know, your extra offices,
you can bring AWS into those offices.
1493.577 -> But there's a reduced
set of capabilities
1495.546 -> running, of course,
on Outposts.
1497.08 -> And again, it connects back
to a region from which you can monitor
1501.235 -> and manage all the Outposts
capabilities that you have.
1504.738 -> It does have all the important ones,
RDS, EC2, ECS,
1509.092 -> and in terms as you run
directly in your data center.
1513.447 -> So those are your data centers,
you offices,
1517.501 -> but what about these
other billions of devices
1520.237 -> out there that are connected now?
1523.323 -> Well, so how can you actually connect
all these devices to the cloud?
1528.362 -> How can we help connect those?
1531.498 -> And I actually call this the Internet
of Billions of Things.
1537.12 -> Yeah, and for that, we give you
FreeRTOS as a stable base
1542.709 -> as an operating system
for these devices, with these AWS
1547.164 -> IoT Core, to manage
all of those devices
1550.434 -> and to create digital twins,
and shadows, and things like that.
1554.371 -> Or, if you have a need to run
IoT capabilities
1559.443 -> on your devices itself,
we give you a Greengrass.
1563.313 -> Now, for Greengrass,
1564.731 -> I've seen a number
of very interesting applications.
1567.251 -> One of them is in the autonomous
1569.97 -> trucking in hazardous
mining conditions.
1573.39 -> So these trucks will be autonomous,
they will go into a mine
1576.743 -> and actually on that truck,
1578.145 -> we’ll run Greengrass, completely
autonomous, collecting data
1581.865 -> and managing the device, and actually
storing data at the Gateway,
1585.552 -> which once connectivity
is restored,
1588.222 -> it will upload it to the cloud,
and manage it there.
1591.942 -> So it's really the Internet
of Billions of Things,
1596.013 -> but those are the Billions of Things
that were actually already connected,
1599.583 -> or could be connected
to the internet.
1602.085 -> There's also many devices, definitely
in manufacturing environments
1605.706 -> that are not connected,
they're old.
1607.658 -> The typical age of manufacturing
equipment in the U.S.
1611.261 -> is 27 years.
1613.764 -> That means that these devices were
not modern-data generators at all.
1618.802 -> So for that, we give you Monitron,
which is a physical appliance
1622.723 -> with a bunch of sensors
that actually manage these data
1626.61 -> coming off
the observations of devices,
1630.03 -> they do vibration and temperature,
1632.833 -> and things like that,
record all of that,
1635.202 -> move it through Gateway,
move it into the cloud.
1637.905 -> You can manage it there, for example,
1640.44 -> for preventive maintenance,
and things like that.
1644.962 -> There’s also something very special
around one particular data stream,
1649.533 -> that is video.
1651.401 -> Now for many of us,
we still watch video to be watched.
1655.806 -> But in essence, video is nothing else
in the data stream to be analyzed.
1660.761 -> And so many manufacturing sites,
with also retailers,
1663.997 -> have many cameras around on sites,
1667.351 -> and you can actually make use of
those data streams to analyze them.
1671.238 -> Now the Panorama Appliance,
you can actually move custom machine
1676.159 -> learning models onto it
1677.845 -> when interference there of the data
streams coming off IPTV cameras.
1684.117 -> And so, for example, I've often
been asked by retailers,
1688.205 -> “How can you understand how
people are moving for a store?
1691.892 -> How much time they’re spending
in front of this promotion,
1694.011 -> or the impact of changing
the layout of my store?
1698.732 -> And I've always told them
“You already have that data.
1701.935 -> ” Now you have 30 security cameras
in your store,
1706.39 -> but you have someone watching
those streams to look for fraud,
1710.027 -> or for theft, or things like that.
1712.546 -> But in essence, the data streams
that you can use to analyze
1716.066 -> exactly how people
are moving through your store,
1719.102 -> and how much this time
they spend where and how?
1721.955 -> And for example,
the airport of Cincinnati
1724.691 -> is making use
of the Panorama Appliance
1726.96 -> to understand how people
are moving through the airport.
1731.381 -> So that's all because video has
become a data stream to be analyzed,
1736.286 -> instead of something to be watched.
1739.907 -> Now, if I think about sort of
environments that are even further
1744.845 -> outside of manufacturing or retail,
yeah,
1747.614 -> there's all sorts of requirements
that suddenly come there as well,
1751.285 -> most of them need
to be compliant specially.
1753.403 -> For example, in medical environments,
or they need to be rugged
1758.492 -> because we use them in environments
in deserts, and things like that.
1762.779 -> Or, you know, they really need
to be able to be remote.
1766.233 -> And this is where I promised
the seventh continent,
1769.353 -> because a bunch of these devices
have been taken to Antarctica,
1772.756 -> and I'm happy to announce that,
you know, the seventh continent
1777.094 -> is now also furnishings
of the AWS cloud on them.
1781.481 -> Now, the rugged edge
is what we call this.
1785.385 -> Yeah, and you may have seen most
of these devices over the years.
1789.406 -> Yeah, already we’ve Snowcones,
which are small and very mobile.
1794.027 -> Really, we’ve Snowball
that they’re transportable,
1798.565 -> but there are a bit bigger
and heavier,
1801.502 -> but there are storage
optimized version of it
1804.421 -> and a compute optimized version.
1807.774 -> And then, of course, the Snowmobile.
1809.126 -> If you have so much data, petabytes
of data sitting in your data center,
1812.763 -> you may need to move to AWS,
Snowmobile is the way to go.
1817.951 -> Now, this is sort of the current
state of the cloud world.
1823.891 -> But you know, can we go even further?
1826.426 -> You know, what is the next frontier
that we really should be able
1830.731 -> to be address
when we think about cloud computing?
1834.201 -> Yeah, and of course, you know,
we think about space,
1836.703 -> we think about deep sea,
we think about sort of Antarctica,
1842.109 -> but also start off with space.
1844.695 -> Now, AWS Ground Station, again,
1847.364 -> was one of these
approaches to virtualize
1850.817 -> something
that was ridiculously expensive,
1853.704 -> if you would have
to build it yourself.
1856.139 -> And so again, by making
Ground Stations programmable,
1860.811 -> we suddenly are enabling a lot
more innovation in the space.
1869.019 -> Yeah, so again, if Ground Station,
data comes off to the Ground Station,
1872.773 -> you basically just went
a 10-hour time
1875.142 -> to get your data of your satellites
and move into AWS.
1881.181 -> And one example of that is
the Mohammed Bin Rashid Space Center
1886.186 -> in the UAE,
1887.387 -> launched the Hope Probe
in the early 2020.
1891.542 -> And in 2021, it arrived at Mars.
1894.027 -> It is now circling around Mars,
1895.746 -> doing research
about the Mars atmosphere.
1898.365 -> That data through Ground Stations
be moved into AWS
1902.636 -> preprocessed
and then within 20 minutes
1905.222 -> made available
to the global research community.
1909.026 -> Now, to actually tell you more about
space and innovation in space,
1914.798 -> I’d like to welcome Payam Banazadeh,
the Founder and CEO of Capella Space.
1920.32 -> Thank you.
1921.972 -> [music playing]
1932.516 -> Thank you, Werner.
1934.501 -> Imagine if no change in our world
when unnoticed and unmeasured.
1940.624 -> Imagine, if we could build a digital
clone of our physical world
1945.863 -> that was getting refreshed
in real time.
1949.183 -> Imagine if we could have
seamless and automated interactions
1954.321 -> between our physical
and our digital world,
1957.474 -> such that you could
set a trigger
1960.077 -> that involve not just events
in the digital world,
1964.064 -> but it could also be triggered
and acted out in the physical world.
1969.036 -> Let me give you an example.
1971.004 -> Imagine you could monitor
all the ports
1973.724 -> and all the shipping lanes
in the world
1975.742 -> all the time in real time,
and you could set the following logic
1980.047 -> that was working for you
in the background.
1982.95 -> If there are more ships
than container capacity,
1985.786 -> then increase trucking support.
1988.121 -> If that's not possible, move some
of the ships in this shipping lane
1991.992 -> to this other shipping lane,
1993.493 -> to this other port,
optimized for ETA.
1997.431 -> You'll be able to catch issues
1999.416 -> and potentially prevent supply
chain disruptions
2002.619 -> from happening in the future.
2006.256 -> In 2019, on the same stage,
a company called Saildrone
2012.312 -> told you about
deploying sensors in the ocean
2015.682 -> to collect valuable
measurements in real time.
2020.02 -> There has also been
a significant growth in quantity
2024.308 -> and quality of terrestrial sensors
in the last few years.
2028.795 -> However, the next frontier
2031.081 -> that is now becoming
accessible is space.
2034.418 -> And sensors from space have
a truly unique vantage point.
2039.489 -> They are needed for us
to have a connected world.
2043.994 -> In fact, to make truly
global decisions
2047.731 -> based on global information,
you need global access all the time.
2053.871 -> For this, space
is the missing link.
2057.658 -> Over the last six years,
we've been designing and building
2060.277 -> some of the most sophisticated
satellites on our planet.
2064.731 -> We can track changes on the surface
of our planet to millimeter accuracy.
2069.837 -> These are powerful satellites.
2072.155 -> These satellites have some
magical capabilities,
2075.225 -> we can take images through the storm
at night in all conditions.
2081.365 -> It gives us reliability,
2083.45 -> and it gives us visibility
into our planet in all conditions.
2088.305 -> That's a fundamental requirement
for getting to real time monitoring.
2095.479 -> In fact, this picture of George
Washington Bridge
2097.998 -> was taken three in the morning
on a stormy night from space.
2104.721 -> We have five of these satellites
orbiting Earth right now,
2108.509 -> and we're launching more, and more,
2110.644 -> and more of them
in the coming quarters.
2114.181 -> As we launch and scale
our constellation,
2116.333 -> we're going to be accumulating
a lot of data.
2118.702 -> In fact, over the coming years,
2119.887 -> we're going to have more
than 500 petabytes of data
2123.106 -> getting accumulated coming down
from space from our satellites.
2126.977 -> That's a lot of data.
2128.896 -> Handling that much data at scale
is a challenge on its own.
2134.051 -> But it's an even
greater challenge
2136.537 -> when you combine our data with data
from other space sensors,
2140.557 -> other terrestrial sensors,
and other ocean sensors.
2144.962 -> In order to lay the groundwork
for integrating our sensors
2148.749 -> with other sensors in real time
with low latency and low reactivity,
2154.121 -> we have to build our business
on a completely different foundation
2158.392 -> than traditionally
has been tried before.
2162.296 -> We had to think about so many things.
2163.697 -> We had to think about
a distributed network.
2166.383 -> No human in the loop operations
with full automation,
2170.754 -> real time processing of data,
2173.407 -> unlimited storage
and processing power,
2176.61 -> and instant scalability.
2181.114 -> This is why we work with AWS
to enable this future.
2186.47 -> We needed a company that could
support us with resiliency,
2190.591 -> could scale with
our constellation
2192.609 -> and demands,
could support our automation,
2195.212 -> and by the way,
do all of this in real time.
2198.131 -> So 500 petabyte of data,
no problem scaling that out on S3.
2204.071 -> A flurry of new hurricane images
coming down,
2207.824 -> casual, we’re just
autoscaling infrastructure on EC2.
2212.162 -> And if we need that hurricane
image even faster,
2215.332 -> that's pretty simple, we'll just grab
the next pass at AWS Ground Station.
2220.971 -> And the AWS Ground Stations
are integrated into the AWS fabric.
2226.293 -> They're also in close proximity
to the data centers,
2229.696 -> which means the data from
our satellite to the Ground Station,
2233.333 -> through the secure VPC,
2235.152 -> getting into the cloud
happens within milliseconds.
2239.823 -> And with our entire system on AWS
and our platform, built on a robust
2245.245 -> API, ordering imagery
from space is like ordering food
2250.484 -> from your favorite food delivery
2252.119 -> app, fully automated,
and with no human interactions.
2257.207 -> Let's just take a look at how easy
it is to request an image
2260.961 -> from one of our satellites.
2263.614 -> You pick your location of interest.
2266.35 -> Let's pick Las Vegas,
and literally three clicks into it,
2269.653 -> you've tasked the satellite.
2271.788 -> We take care of the last.
2273.524 -> The satellite goes over the areas
of interest,
2275.976 -> collects imagery,
comes over the Ground Station,
2278.695 -> dumps the data down,
the data goes to the cloud,
2282.399 -> gets processed, and boom!
2284.334 -> You've got the data
for your consumption.
2289.106 -> And here's the best news about it.
2290.741 -> This is all on an open API,
which means you are one
2296.463 -> API call away from accessing
a global network
2300.701 -> of extremely powerful
satellite sensors.
2303.921 -> That means if you want to automate
your end of this process,
2307.958 -> you can use our open API
and just blend us into your workflow.
2312.596 -> Let me just emphasize that.
2314.464 -> You are literally right now,
while sitting in this room,
2318.302 -> one API call away from a global
network of powerful satellites.
2326.293 -> This is a game changer.
2327.744 -> Machine to machine operations
and full automation are together
2332.599 -> the fundamental catalysts
for taking action in the digital
2337.171 -> and in the physical world.
2339.389 -> So let me just tell you a few stories
from this year,
2342.809 -> where machine operations led
to humans taking better decisions.
2347.764 -> Oil spills were detected
using our imagery, automatically.
2353.253 -> Chinese dam failure was verified
using our imagery, automatically.
2359.042 -> Volcanic
2360.177 -> researchers identified new events
by peering through the smoke
2364.565 -> of an ongoing eruption,
automatically.
2368.318 -> Local agencies were informed
of deforestation
2371.722 -> in Amazonia, automatically.
2374.875 -> And of course, during Hurricane item,
our satellites were monitoring
2378.462 -> the daily progression
of the hurricane
2380.547 -> and flooding through the clouds
and storms, day and night,
2384.351 -> and pushing out updates in real time
to our customers, automatically.
2388.572 -> And many, many, many more.
2391.825 -> I'm sure you could tell we’re really,
really excited about this capability.
2396.864 -> When I took the stage,
six, seven minutes ago,
2399.666 -> I opened by showing a conditional
flowchart of setting triggers
2403.554 -> and connecting our physical
to our digital world.
2407.841 -> Thanks to companies like AWS
and Capella,
2411.078 -> that future is a reality today.
2414.798 -> So before I leave, I asked you
all this, what would you do?
2419.386 -> And what would you build,
if you were one
2421.605 -> API call away from seeing our planet,
and its billions of changes?
2427.377 -> Thank you very much.
2429.062 -> [applause]
2436.82 -> Thank you, Payam.
2438.856 -> There’s so much interesting
innovation going on in space,
2442.176 -> it absolutely is the next frontier.
2446.196 -> And as always, in AWS
we’re very closely connected
2449.383 -> to the startup world,
2451.518 -> and so recently we launched
the Robotics Startup Accelerator,
2458.809 -> we launched an Early
Start Accelerator
2464.181 -> for startups in Europe.
2466.8 -> And of course, we also recently
run a Space Accelerator,
2470.487 -> which had 10 different companies
that are making use of the AWS Cloud
2474.558 -> and are going into space.
2477.077 -> And one of those is very interesting,
it’s called D-Orbit.
2479.98 -> And they're actually working
on sort of supply
2483.083 -> chain logistics in space.
2485.452 -> But they're also working together
with an AWS Partner
2487.905 -> who are called iniLab,
2489.239 -> who actually
brings the cloud into space.
2492.509 -> So, if in the future you're looking
for let's say
2495.495 -> Lunar One region, we may not be
that far away from that.
2502.352 -> So, if you think about solar…
I hope so.
2508.542 -> [laughter]
2512.262 -> So, as you think about all these
different components of the cloud,
2517.234 -> and there's a spectrum of hardware,
and devices, and services
2521.221 -> that expands to reach of the cloud,
way beyond Regions
2525.442 -> And Availability Zones, yeah.
2527.961 -> I have nicknamed this the ‘Everywhere
Cloud’, yeah.
2532.516 -> And customers who will always
want to manage
2534.635 -> their application centrally,
even though they’re distributed.
2538.422 -> But you know, you can push it out
all the way over to the edge
2542.442 -> and where you can see all
AWS services running transparently
2546.98 -> regardless whether you're
running it on the rugged edge,
2549.75 -> whether you want to run it
close to your space satellites
2554.137 -> or whether you want to run it
in your own data centers.
2557.191 -> And it's not just a hardware.
2559.977 -> From day one, we'll be thinking about
all of our software capabilities
2563.981 -> that sort of needs to span
all of these different components
2568.669 -> that make up
the Everywhere Cloud.
2571.438 -> And one of the earliest ones is still
one of my favorites there,
2574.791 -> AWS Storage Gateway, actually brings
the power of cloud storage
2580.864 -> directly into
your own data centers.
2584.568 -> One of the things I really want you
to walk away with is that,
2588.422 -> yes, this is a massively
distributed system,
2593.477 -> but it's not decentralized.
2595.996 -> Right, it's distributed,
but not decentralized.
2601.251 -> And I would like to sort of spend
some time on one of the services
2605.806 -> that touches each and every component
of the Everywhere Cloud
2612.513 -> and that is, Identity
and Access Management.
2616.583 -> Now, AWS IAM gives you
very fine-grained control
2621.405 -> over any of
the resources in AWS.
2624.391 -> You can specify who can access
which service,
2627.311 -> under which conditions,
and it gives you identity.
2631.131 -> And at first, it appears as
if IAM is relatively simple.
2637.187 -> After all, permission systems
have been around in the world
2640.541 -> for a very long time,
2643.577 -> but the requirements for IAM
are unprecedented.
2647.981 -> We literally have millions
of AWS customers,
2651.818 -> over thousands of different types
of resources,
2654.972 -> hundreds of AWS services,
2657.674 -> and they're spread across over
all of our regions,
2660.961 -> our zones,
all the way out to the edge.
2665.582 -> And so, the requirements for IAM
are mind boggling.
2671.955 -> And it comes down to two pieces
that really need to work.
2675.676 -> It needs to be ultra-reliable;
it needs to be absolutely secure,
2681.765 -> and it needs to be incredibly fast.
2685.035 -> Now,
because remember, IAM
2688.172 -> is part of every API
call that you make.
2693.293 -> And now, so giving the importance
of IAM,
2696.33 -> I'd like to pull back
to the conference a little bit,
2699.85 -> and show you how IAM is designed,
and how it scales, and the duties,
2704.671 -> because this is truly an example
of building a high scale,
2709.126 -> yet secure distributed system.
2712.062 -> And core in all of that is, that
you need to keep simplicity in mind
2717.134 -> because otherwise, you cannot scale
to the scale that IAM needs to meet.
2723.674 -> Now, so the components
in the overall system
2726.426 -> are, of course, either you use
the Console or you use the CLI
2730.097 -> to talk to the IAM control plane,
2733.116 -> who then talks to sort of
IAM surfaces
2736.303 -> that sits in each of the regions
2738.188 -> or each of the devices
that you're using.
2744.328 -> Now, IAM means there’s two capability:
cells identity and access management.
2746.613 -> So, authentication, who you are,
2750.033 -> and authorization is what
you are allowed to do.
2753.537 -> I'll dive into authentication;
2755.856 -> I think that's sort of one
of the more interesting pieces.
2759.71 -> Now, if you ever set up
an AWS account,
2762.312 -> which I think most of you
must have done by now, yeah,
2765.782 -> you know that you get an access key,
which is public,
2769.636 -> and you get a secret key.
2772.372 -> And the secret key is used
to sort of go with
2777.127 -> every API request that you make,
2780.414 -> to make sure that we understand who
is actually truly making this call.
2786.503 -> So, what you do, we ask you to sign
every request, send it to AWS,
2792.025 -> sign it with your secret access key,
2794.077 -> and this way we know exactly
who you are.
2797.698 -> We do this with a signing process
that's called Signature Version V4,
2803.77 -> SigV4, for short.
2805.956 -> So yeah, you sign the request,
goes through the AWS service,
2811.044 -> who then passes it on
to the IAM service,
2815.265 -> who actually checks, who actually
does exactly the same signing,
2819.336 -> see whether the signatures match,
2821.388 -> and if they match,
your request is allowed.
2824.575 -> If they don't match,
your request is denied,
2833.8 -> or not.
2835.536 -> Now, let's take a look, what we do
with signing with
2839.973 -> is not your secret key, secret key
is only part of that signing process.
2846.196 -> Yeah, first, we concatenate the key
with AWS4
2849.316 -> to indicate what procedure
we're going to be using,
2852.352 -> then you do a one-way hash function
off that first secret with the dates.
2858.425 -> We do that, with the dates,
with the region,
2861.678 -> and then, can only hash function.
2863.864 -> And in the end, you end up with a key
2867.601 -> with which you're going
to sign your request.
2871.088 -> Yeah, and so it's not just the key
that we're using to sign.
2875.626 -> We actually do this for a particular
date, for a particular region,
2880.063 -> and the service you're trying
to access within that region.
2884.968 -> And so, we do exactly the same thing
on the other side.
2888.172 -> Now, to be able to do that, we need
to have access to your secret key.
2893.06 -> Of course, you know, we could be
moving your secret key
2896.463 -> into the IAM Service Everywhere,
2899.366 -> but that would be a massive violation
of security principles.
2904.721 -> The secret key needs to stay
in the IAM control plane,
2909.543 -> because that is where
we can truly protect you.
2913.514 -> So, what are we going to do?
2914.948 -> Well, we're actually going to repeat
some of the steps of SigV4.
2920.003 -> What a control plane does,
it's actually creates a derived key.
2925.542 -> The derived key actually is just
the secret, the date, and the region.
2932.132 -> And then, whenever your request
arrives, yeah,
2936.937 -> and we store that in the IAM service.
2940.19 -> Now, whenever a request arrives,
it arrives at what's called the IAM
2944.628 -> Endpoints,
2946.563 -> and there are literally millions
of hosts in the IAM Endpoints.
2950.751 -> And what the team decided,
2951.885 -> is to make use of the capabilities
of these millions of hosts
2955.806 -> to really accelerate the overall
checking and signing process.
2960.143 -> So basically, what the IAM service
does, is create another derived key.
2966.4 -> It takes the derived key
it got from the control plane
2969.219 -> and adds the service to it.
2971.522 -> So, this is a key that is uniquely
for one user, one surface,
2977.561 -> one region on one date.
2981.582 -> And so, with this, now suddenly,
you can cache this at the IAM
2986.019 -> Endpoints, and make the checking
of the validity of requests really,
2991.658 -> really fast
and really, really reliable.
2996.096 -> Now, so in essence, if we look
at what we've done here,
2999.383 -> is we built
an intelligent hierarchical cache.
3003.954 -> And there's many interesting aspects
to all of that,
3006.423 -> we could spend a lot of time
in, for example,
3008.609 -> what the cache invalidation protocol
looks like.
3011.678 -> But here, it's very high scale.
3014.731 -> We've been able to build
an ultra-fast access control system
3020.888 -> that doesn't exist anywhere else.
3024.091 -> And you can imagine, you know,
how all the other components are,
3029.763 -> that we really move cryptography
to the edge,
3032.983 -> making use of the millions of hosts
that are the IAM Endpoints.
3039.406 -> And so how big is this really?
3041.475 -> Why is this really so important?
3044.111 -> It’s because IAM routinely handles
half a billion
3050.133 -> APIs calls a second.
3054.805 -> Imagine just for this keynote,
90 minutes or only 20 minutes long,
3058.509 -> I don't know how long we can take,
how many API calls
3062.779 -> IAM has handled during that time.
3065.899 -> And the only way why that is possible
3068.735 -> is they made the system
as simple as possible.
3073.507 -> Because in that way, you can
actually scale to these numbers,
3077.077 -> while meeting
the security requirements
3079.763 -> that a modern IAM system
has at scale.
3084.484 -> Now, the principle there, of course,
is that, you know,
3087.621 -> if things become more complex,
3090.09 -> you shouldn't start with building
a complex system.
3093.677 -> All complex systems that actually
work evolved
3097.631 -> from a simpler system that works.
3101.151 -> And you know, if you look at
sort of simple machines,
3105.038 -> there are sort of mechanical devices
that were used to make the world
3108.492 -> easier, yeah, and so most of them
work on the principle
3112.88 -> of a small effort
having a really big effect.
3116.984 -> Now, take for example,
an inclined plane.
3120.17 -> Now if you had to move this box
from here up to there,
3123.507 -> will take significant effort.
3125.843 -> However, using the inclined plane,
you only have to use a little effort
3130.531 -> to get a major effect,
3132.833 -> rather than the six of these
different standard types
3135.118 -> of simple machines.
3136.887 -> Now, you can use some
of these components
3140.741 -> to start building
more compound machines.
3143.277 -> If you take a screw, a lever
and a wheel, for example,
3146.964 -> it's easy to build
a wheelbarrow out of that.
3150.35 -> But still, these compounds machines
are built out of simpler machines
3155.405 -> and that's the reason why they work.
3157.591 -> And of course, if you want
to build more fancier things,
3159.826 -> not just, you know, wheelbarrows,
but maybe the nice
3163.697 -> Mustang that I drove up here,
3166.033 -> or maybe you want to build
something completely different,
3168.902 -> maybe you want to build a monster
truck, or a Formula One car.
3173.824 -> Now, this is only possible, because
they're built out of primitives.
3178.879 -> And with all these primitives
together,
3181.131 -> you can actually construct
these compound machines.
3184.434 -> And this is also the principle
we've used from day one at AWS.
3189.173 -> We give you primitives,
not frameworks; and why?
3193.043 -> Because I think if you have
to build a framework,
3196.113 -> then it probably takes a number
of four or five years
3198.732 -> before you have everything
together in the kitchen sink.
3201.485 -> That means that by the time
you deliver it to your customers,
3204.404 -> it's only five years old,
3206.707 -> and then you have to be built
with that for something
3208.992 -> that has to last
for the coming 10 years.
3211.762 -> Because everything works like that.
3213.647 -> What we wanted to do in the cloud
is actually give you
3216.083 -> these small,
primitive components,
3219.186 -> so that you could exactly build
what you want to build,
3222.639 -> without us telling you
how to build it.
3225.893 -> And so, you can see sort of these
simple machines as being sort of SQS,
3230.681 -> and S3, and EC2,
3234.468 -> but you've always asked us
for more of these simple machines,
3239.206 -> more of these components.
3241.124 -> Purpose-built databases, for example,
which means that by now,
3245.996 -> we have well over 200 of these
simple machines of the services.
3251.468 -> And believe me, you know, I know
it's sometimes overwhelming,
3255.355 -> but remember,
you have asked for this.
3259.459 -> It is basically your fault.
3261.778 -> [laughter]
3265.616 -> [applause]
3270.971 -> Now, each and every one of these
services has a purpose, yeah,
3274.775 -> and about I think sort of 95% of them
have been created by your feedback,
3280.247 -> really helping you build exactly
those things that you want to build.
3284.801 -> Now, some of these services
are truly simple,
3287.671 -> but some of them are actually
compound machines themselves.
3292.326 -> Take, for example, a Lake Formation,
we’ve seen Adam talk about that,
3296.914 -> Swami talked about that.
3298.715 -> So Lake Formation under the covers,
3301.151 -> is built out of these other
AWS services.
3304.671 -> Yeah, whether it’s Aurora
and DynamoDB,
3306.757 -> or how to get things on-premise,
and Glue, and IAM.
3309.96 -> All these components together,
make up Lake Formation.
3314.031 -> Or if you're building container
applications,
3318.602 -> you may want to use App Runner,
3319.887 -> so you don't have to worry about
Fargate,
3322.055 -> you don't have to worry about
Application Load Balancers,
3324.124 -> and IAM, and things like that.
3326.877 -> Or if you're a web developer and
building web and mobile applications,
3331.281 -> Amplify is probably the tool
you want to use.
3334.201 -> Again, you know, getting in Lambda,
getting in S3, setting of Route 53,
3339.64 -> connecting you back to DynamoDB,
3343.126 -> because Amplify really targets
a set of developers,
3347.948 -> that in general, is not that happy
with actually doing back-end work.
3353.437 -> These are frontend developers
3355.506 -> that really want to build
beautiful applications,
3358.842 -> but often are actually burdened
to become full-stack developers,
3362.629 -> because they also have
to connect to the backend.
3367.351 -> Now, so if you think about that,
you know, most front-end developers
3371.905 -> are really good in the visual aspects
of building your application,
3376.393 -> it might be HTML,
and CSS, and JavaScript.
3380.13 -> But there's all these other things
with web apps or mobile apps,
3385.135 -> that's the frameworks,
that’s server-side languages,
3387.671 -> databases service, APIs,
all these kinds of things
3391.175 -> that front-end developers actually
don't really want to deal with.
3395.996 -> And so, the challenges for
front-end developers are really,
3398.665 -> on one hand,
lots of these front-end developers,
3400.701 -> the visual side is still manual.
3403.654 -> And then they have to connect
the frontend to the backend,
3406.089 -> an area where they're actually
really not that much interested in.
3409.843 -> And to help you with all of that,
I'm happy to announce today,
3413.547 -> AWS Amplify Studio, which is
a completely visual environment
3417.451 -> to build feature rich apps
in hours and weeks,
3420.204 -> and connect them back to the backend
without you having to do anything.
3424.925 -> [applause]
3430.931 -> It's really a developer-first
approach.
3433.5 -> It's a truly low-code
visual environment,
3437.237 -> where you can literally build web
apps or mobile apps
3440.724 -> in a matter of hours.
3443.06 -> Yeah, and it's on one hand that will
help current front-end
3445.812 -> developers move much faster,
3448.282 -> but also unlock this world
for actually new type of developers
3453.22 -> that may not have that much
experience, informed and developing.
3457.541 -> And to explain AWS Amplify Studio
to you in more detail,
3461.261 -> I would like to welcome Ali Spittel,
Senior Developer Advocate
3465.132 -> on the Amplify team.
Ali.
3466.95 -> [music playing]
3478.795 -> AWS Amplify is a set of tools
that bring the power of AWS
3483.8 -> to frontend web
and mobile developers.
3486.803 -> With Amplify, you can enable data
storage, file storage,
3490.657 -> authentication and hosting.
3492.926 -> And you can use the frontend
libraries,
3495.028 -> hosting,
and backend resource
3497.447 -> provisioning either a la carte
in an existing application,
3501.885 -> or end to end in a new one
for a seamless experience.
3506.974 -> When I have an idea for an app,
3509.543 -> I cannot wait to get it built
and shipped.
3512.746 -> Development speed is so,
so important.
3516.183 -> So I am so excited
to introduce Amplify Studio.
3520.37 -> It allows me to build my ideas
faster,
3522.806 -> and my designs are pixel perfect
3524.942 -> without needing to write
custom-styling code.
3528.011 -> Amplify Studio makes it
easy to work with AWS
3531.114 -> no matter your cloud
of knowledge.
3534.234 -> You'll find you can quickly
build feature rich cloud
3537.721 -> connected apps that have skill
and security built-in.
3542.693 -> To show you what
Amplify Studio can do,
3544.845 -> let's build an app together.
3547.814 -> I end up at a lot of technical
events like this one,
3551.435 -> and I'm thinking
of starting my own.
3554.104 -> So I'm going to build an app
to show off the sessions for my talk.
3559.943 -> I want to put their sessions
on a site,
3561.945 -> so that potential attendees
3563.463 -> can start giving me feedback
about the sessions.
3568.485 -> I've gotten a couple of
the session descriptions back,
3571.371 -> and I'm waiting to hear
from a few others.
3573.841 -> So I need to make sure
that the site is dynamic,
3576.143 -> so that I can keep adding
the sessions as they come in.
3580.047 -> So earlier I created this data
model, and it has four fields.
3583.267 -> As you can see, name, description,
speaker name, and speaker image.
3588.272 -> I can add data fields or even
another data model
3591.141 -> if I need
as my application grows.
3593.527 -> So for example, what room
each speaker’s going to speak in.
3598.815 -> I'll change this field type to date,
time here.
3600.634 -> You can see how customizable this is.
3604.238 -> And you can also add relationships
between the data as well.
3607.341 -> You can see that I had
seven sessions
3609.943 -> already entered in to the Data
Manager provided by Amplify.
3615.148 -> While I was at stage I asked Werner
if he would like to talk,
3618.986 -> and he said he wanted to give a talk
about the Everyware Cloud.
3623.574 -> So let's use this information
that I got from Werner
3626.126 -> to create a new session.
3628.262 -> I'll plug in that title, description,
speaker image and speaker name.
3633.467 -> And now you can see that there
are eight sessions for my app.
3637.905 -> Amplify Studio helps developers
3640.724 -> and UX designers work
better together.
3644.494 -> In addition to the significant time
it takes for developers
3647.314 -> to make pixel perfect designs,
3649.533 -> oftentimes, those UX designs
aren't implemented properly,
3653.437 -> which makes UX designers frustrated
and makes it
3656.473 -> to the end-user experience
isn't as good as it could be.
3660.394 -> With Studio, developers
can import custom UI code
3665.482 -> from their designers
using the popular design
3668.785 -> and prototyping tool Figma.
3672.656 -> So in Studio we'll paste
in the link to our Figma file.
3677.995 -> This will import the UI components
3679.78 -> that my designer has made
into Amplify Studio.
3682.816 -> You can see that there are all sorts
of different ones,
3685.035 -> marketing nav bar, ecommerce,
and my session card.
3691.375 -> So now I have a data model.
3692.993 -> And I have these UI components,
I need to link the two and make it
3698.098 -> so that my session card
3699.833 -> shows the information
about my speakers and their sessions,
3703.403 -> not just this
hard-coded speaker name.
3707.124 -> So I'll configure my component.
3709.626 -> And then I can click to add
a new component property.
3713.463 -> You can see that I can name it
myself, and then choose the type,
3717.15 -> which auto fills from the models
that I've created.
3720.604 -> Then I can click into the attributes
on the UI
3724.424 -> and click into, example,
for the image.
3726.81 -> And I'll set the source attribute
to my image from my database.
3731.331 -> Then I'll do the same
for speaker name
3733.317 -> and set that to the speaker name
from, again, my data model.
3739.273 -> I'll do the same for title
and description.
3748.665 -> And now I have my live data on
my application on these components.
3756.006 -> I want to display all my sessions,
not just this one.
3759.81 -> So I'm going to take the session
component and create a collection.
3764.331 -> This will allow me to create a list
or grid
3767.251 -> of all the different sessions
that I have.
3772.005 -> So I can choose from different
layouts here,
3774.441 -> so the grid or the list.
3776.326 -> I can choose which direction
they go in,
3778.712 -> how many columns, the centering,
the margin, and padding,
3782.766 -> all those fun types of things.
3786.854 -> And I can also choose exactly
what data goes in the component.
3792.092 -> So I can add filters and also sort,
for example, by the name of the talk.
3800.15 -> Now I need to integrate this
into my application.
3803.453 -> And I call this part Copy
and Paste Driven Development.
3807.641 -> Studio gives me these code snippets
3809.66 -> that I can use directly
within my own application code
3813.297 -> to integrate the Studio components
into there.
3818.118 -> I have already created a boilerplate
React app with Create React App.
3823.207 -> So it's a brand new project.
3825.158 -> But you could also use these components
in an existing one if you wanted to.
3829.596 -> So first, we'll run the command
Amplify Pull.
3832.416 -> And this will generate
all the React components
3834.618 -> from all the Figma components
that I had synced into Studio,
3837.855 -> so you can see all the different
components as they're listed out.
3842.526 -> Then I can use these React components
however I want within my code base.
3846.63 -> So Amplify Studio saves developers
from having to write
3849.983 -> thousands of lines of custom code,
3852.269 -> it auto generates human readable,
credible React code.
3857.274 -> Later if I need I would be able
to extend this code myself
3860.894 -> for additional control
over my components
3863.213 -> or add more data properties
if I need as well.
3866.917 -> So in my React code
I just need two lines of code.
3870.254 -> One to import
that session card component,
3872.656 -> and one to render it on the page.
3875.609 -> And I can just copy and paste
these from Studio.
3878.612 -> I don't even have to think of them.
3881.665 -> So here's what my app looks like.
3883.333 -> All the sessions are displayed,
didn't take a lot of time to build.
3888.105 -> At any points you can make changes
to your designs in Figma.
3891.775 -> So I'm not a designer by any means.
3894.228 -> But let's round these corners
out a little bit on the card.
3896.98 -> And I'll also bump out the font size
on the speaker name.
3904.171 -> I’ll go back to Studio
and import those changes.
3907.441 -> And you can see that I can either
accept
3909.376 -> or reject the differences
between Figma and Studio.
3913.213 -> So for example, if I'm not ready yet,
3915.315 -> or there's a problem
with the styling,
3917.868 -> it's going to save me
from accepting too early.
3921.922 -> Also, I don't need to hand author
all of these changes
3926.293 -> to the design in my own code.
3930.664 -> So I go back to my development
environment, re-run Amplify Pull,
3935.035 -> and all of my component changes
3937.054 -> and the designers changes
are implemented in the app,
3940.507 -> Look at those beautiful
rounded corners.
3944.561 -> As an apps use cases expand
or an app moves into production,
3948.665 -> developers may require deeper control
over their back end
3952.085 -> and deployment operations.
3954.404 -> Amplify’s newly launched
extensibility features
3957.808 -> give developers the ability
to integrate any AWS service
3961.044 -> in their application
3962.346 -> beyond just those offered
by the Amplify tool chain.
3967.584 -> First, you can override the auto
generated Amplify settings
3971.572 -> using Amplify Override,
then within your code you can use CDK
3976.276 -> to get exactly the settings
that you need.
3980.43 -> You can run Amplify Add Custom
to add any of the 175
3984.585 -> Plus AWS services directly
into your Amplify application,
3988.805 -> again, using CDK.
3992.192 -> And then, you can also run
Amplify Export.
3996.096 -> And if you need to implement Amplify
within your own deployment pipelines,
4002.135 -> you can export
your Amplify app to CDK.
4006.29 -> And you can run that export
process over and over again.
4008.942 -> It's not an eject where you
escape out of the ecosystem.
4015.132 -> With many other front end
developer focused cloud solutions,
4018.719 -> you hit a wall
when you keep growing and building.
4021.872 -> But with Amplify
that does not happen.
4025.859 -> With Amplify Studio, you can quickly
go from a designer's vision
4029.913 -> to a full stack AWS
connected application
4033.283 -> that can scale as your business does.
4036.203 -> Thank you all so much.
4037.855 -> [music playing]
4043.527 -> Thank you, Ali.
4045.712 -> Great story.
4046.813 -> And I'm really looking forward to see
what kinds of things
4049.766 -> you guy’s going to build
with Amplify Studio.
4053.103 -> Now, how do we build
these compound machines?
4056.723 -> How do all these components
get together and get connected?
4062.095 -> And, of course, all driven by APIs.
4065.632 -> But there is one thing within AWS
4069.603 -> is that we sort of value innovation
over coordination.
4075.108 -> This means that it's not just
a service,
4077.311 -> it's actually a team
behind the service
4079.78 -> that is in contact
with their set of customers.
4083.183 -> And really thinking about sort of,
how can we move as fast as possible,
4087.871 -> addressing exactly the needs
of our customers,
4090.774 -> and work backwards
from what they need?
4093.794 -> Now, they're not coordinating
with other teams
4096.563 -> that have other sets of customers
4098.031 -> and waiting for them to get sort
of their interfaces together,
4102.236 -> we really are focused in each team
on their set of customers
4106.173 -> working backwards from the customer
to create their APIs.
4110.377 -> If we would be waiting for
coordination,
4113.096 -> we would be in this five-year
waiting game.
4116.183 -> Because then innovation would get
stifled
4118.919 -> and we would not be able
to move as fast
4121.355 -> as that we are now able
to move this fast.
4124.424 -> Now, it comes with a downside,
this lack of coordination,
4130.814 -> namely that our APIs
are not necessarily coherent
4135.135 -> and consistent across each other.
4137.404 -> And why is because these teams
are focused on their customers
4140.741 -> not on coordinating with other teams.
4144.478 -> And now quite a few of our partners
have asked
4147.364 -> whether we can do
something about that.
4149.316 -> Because for them, you know,
the fact that for example here
4152.135 -> if you have a Lambda API call,
you know, one that is a get function,
4157.658 -> and the Kinesis one
is a described stream
4159.893 -> on all creating
different types of resources.
4163.497 -> You've asked us can we do something
that sort of supersedes this,
4168.685 -> that make it easier to start
integrating new features and services
4172.973 -> into our products?
4174.474 -> And so, we delivered the Cloud
Control API,
4177.828 -> which actually gives you
a more coherent approach
4182.266 -> to all the different AWS API calls.
4185.135 -> It is not replacing the API calls
that you have now.
4189.873 -> Yeah?
4191.091 -> All of our teams continue to be
focused on their customers,
4194.545 -> working from their customers
backwards,
4196.463 -> and giving them exactly
the APIs that they need.
4200.501 -> And I really, really want
to continue to push for that,
4203.153 -> because I think premature
optimization is a killer.
4207.09 -> Yeah?
4208.292 -> And really, really starting to think
about uniform
4211.478 -> APIs before you actually understand
4213.997 -> how your customers are going
to use your service is very risky.
4218.085 -> And to be honest, you know,
we've launched sometime services
4221.972 -> where customers were using
the service
4223.874 -> then suddenly, in every way,
with the one that we intended it to.
4229.346 -> And it sets sort of really sort
of taking the Cloud Control API
4233.984 -> as something that is layered
over the standard APIs.
4237.905 -> This still gives our partners
the ability
4240.524 -> to sort of quickly
integrate this into their systems.
4244.311 -> And companies like Pulumi,
4246.246 -> and HashiCorp are using
the Cloud Control API
4249.733 -> to really quickly integrate new AWS
resources into their applications.
4257.474 -> Now think about 15 years of AWS,
4261.745 -> we've created a lot of APIs
over time,
4265.549 -> and there's also lots of lessons
learned from that.
4269.069 -> And I just speak six of them,
but there could be many more.
4273.307 -> If I think about how to build APIs,
4276.376 -> these are sort of my six shortlist
or things that I first tell engineers
4281.081 -> that you need
to be thinking about, yeah?
4283.584 -> It starts off with that APIs
are forever.
4289.122 -> That means you cannot change
or remove
4292.943 -> an API once you've created it.
4294.811 -> And why?
4295.913 -> Because once you put out an API
out there
4298.832 -> customers are going to build
their business on top of it.
4302.202 -> And you changing that API will
basically break their business.
4306.323 -> That's the last thing you want.
4308.392 -> And the same is for,
if you are evolving your API
4313.981 -> you can never break
backwards compatibility.
4318.635 -> And the way to actually make that
easier is to not have your engineers
4323.123 -> be in charge
of what should be in the API.
4325.676 -> You should make your customers
in charge.
4327.177 -> You should use your customers work
backwards from their use cases,
4331.415 -> and then come up with the minimal
and simplest form of API
4335.886 -> that you can actually offer them.
4338.472 -> And this is really important.
4340.123 -> Imagine you have an
advertisement system.
4343.01 -> And you do three or four
different types of campaigns.
4348.098 -> Should you have one API
call to create a campaign
4350.517 -> with all sorts of flags
4352.169 -> and other things to actually
modify the API call?
4356.323 -> Or should you just keep it simple?
4358.458 -> Just have one create campaign call,
4361.078 -> and then other API calls
to actually modify the resource
4365.315 -> that you've created
with this create campaign call.
4369.236 -> So make sure that you keep your APIs
as simple as possible,
4374.107 -> because then you create really good
building blocks for others to use.
4379.146 -> Yeah, and so again,
don't only describe APIs.
4382.983 -> I think, actually five is, you should
be able to look at the API,
4386.336 -> and more or less be able to
figure out immediately what it does.
4390.591 -> And also, not only what it does,
4391.959 -> you actually really have
to document the failure modes.
4394.645 -> Because you know, it's not only
about what your API does,
4397.714 -> it is how it fails.
4399.7 -> And whether that is because
of the input parameters,
4402.436 -> or maybe security reasons, or others,
you actually have to make sure
4406.223 -> your failure modes
are well described.
4412.162 -> And the last one is a tricky one.
4416.166 -> Avoid leaking implementation
details for your API,
4420.771 -> because if you do your customers
will rely on it.
4425.075 -> And they will start to figure out
4426.81 -> how you’ve actually implemented
this under the covers
4429.313 -> and will start
to actually use that knowledge.
4432.95 -> It's not a good plan,
4434.084 -> because that means you can no
longer change your implementation,
4437.204 -> because now your customers
4438.355 -> are relying on sort of
non-functional information.
4443.727 -> So before all of this, I hope that
you actually take a look
4446.496 -> at sort of all the documentation
4448.315 -> and sort of the builders
library documents
4450.701 -> that we have to dive into
best practices around API design.
4457.074 -> Now, of course, you know, we want to
give you tools for wherever you are.
4462.796 -> And actually where you are right now
4464.631 -> is that most of you are making
use of SDKs to connect to AWS.
4470.337 -> Yeah, and you're very comfortable
with that.
4472.623 -> And we've created SDKs for lots
of different programming languages.
4476.844 -> And I'm happy to announce today
that we got three more,
4480.764 -> Swift, Kotlin, and Rust.
4483.367 -> [applause]
4488.589 -> And then especially, of course,
you know,
4490.34 -> Swift and Kotlin are targeting
particular platforms.
4493.227 -> But I'm really happy that
we finally have a Rust SDK,
4496.763 -> because I see an enormous interest
in Rust,
4499.416 -> especially also when it comes
to issues of sustainability,
4503.153 -> making use of the most sustainable
programming languages out there.
4507.441 -> Now, it's not only where you are,
it's also where you're going.
4511.745 -> Yeah, and I do think as much
as I think
4513.797 -> that the SDKs will be around forever,
4518.652 -> it's also if you’re looking
at sort of,
4520.771 -> how would you actually like
to build your applications?
4524.441 -> And I know many of you are
programmers,
4527.211 -> and would actually really like
4529.396 -> to build your own
infrastructure as code.
4533.901 -> There are no longer a descriptive
list
4537.287 -> that you need to use
to setup your infrastructure,
4540.007 -> you really would like to do this
from inside your code.
4543.844 -> And so that's what the CDK targeted.
4547.431 -> Yeah, and now you're able to build
these constructs using the CDK.
4552.386 -> And you can share them with others.
4554.872 -> Yeah, and whether that is
with your colleagues,
4556.573 -> or sort of as open source,
the CDK has become very popular.
4561.211 -> And we've been actually
working really hard to improve it.
4564.715 -> So in CDK v2, we fixed a number
of the problems
4570.254 -> and issues
that were in CDK version one.
4574.124 -> [applause]
4580.097 -> One mistake we made in v1 was
4583.133 -> that we basically had a package
for each service.
4585.903 -> And it made it very hard
for dependency management.
4590.057 -> And so, especially for our partners
that were building constructs
4593.944 -> on top of this, you know,
4595.195 -> they basically needed to load
50 or 100 different libraries
4599.166 -> before they can actually have all
of their dependencies resolved.
4603.904 -> So now, everything goes into one
library,
4606.573 -> that's the one that you need to use.
4608.492 -> And we're able to actually then
really open up the world
4612.663 -> for much less complex
dependency management.
4619.236 -> Yeah, we also start making use of
what's called semantic versioning,
4622.856 -> so that you actually know
which of the versions
4625.709 -> of particular objects you're using.
4628.145 -> And there is something really cool,
they call it CDK-watch,
4631.565 -> I'm not really sure about that name,
I call it CDK hot swap.
4635.752 -> Basically, if you write a new Lambda
handler, or a new ECS task,
4640.591 -> you do not need to restart
your complete infrastructure
4643.11 -> and restart your CloudFormation
templates, and things like that.
4647.281 -> Basically, you can just hot swap
your Lambda code
4650.267 -> in and out without taking
your application down.
4652.87 -> I think that's really
absolutely cool,
4659.56 -> and allows you to continue
to have your applications
4661.912 -> running even though you're
updating and changing code.
4666.717 -> Now, generally available today
is also the Construct Hub,
4670.07 -> which is an environment
or the main sites for us
4673.841 -> to actually give you access,
and find all the open source,
4678.362 -> and partner cloud development
kit libraries out there.
4685.118 -> To talk a little more about the CDK
and our customers have been using it,
4690.324 -> I would like to welcome Matt Coulter,
4692.125 -> the Technical Architect
at Liberty Mutual Insurance
4695.078 -> to talk more
about that, Matt.
4697.164 -> [applause]
4710.861 -> Thank you, Werner.
4712.746 -> Driven by the conviction
that progress happens
4715.148 -> when people feel secure,
4716.667 -> Liberty Mutual is a global property
and casualty insurer,
4720.47 -> protecting everything from homes,
to cars, to businesses.
4725.893 -> We're there to back up
our millions of customers
4728.679 -> when the unexpected happens.
4731.114 -> Today, every customer interaction
is digital,
4735.035 -> from our applications,
to our call centers, to our websites.
4738.972 -> And these interactions need
to be easy 24/7, 365 days a year.
4746.763 -> Our story today is about
adaptability,
4750.868 -> change, new ways of working
and it's about innovation.
4755.489 -> As a 109 year old company,
4758.125 -> we've learned a thing or two
about adapting to change.
4760.594 -> But in the last 10 years
we've seen more change
4764.965 -> than in the previous
100 combined.
4768.418 -> Just thrive amongst this change.
4771.271 -> Our journey to the cloud
became our Northstar.
4775.893 -> This journey began in 2014.
4778.462 -> We needed to relearn everything about
how we delivered software at a time
4783.534 -> before most serverless
AWS services even existed.
4787.738 -> To succeed, we needed to spark,
4790.023 -> a continuous learning
and experimentation culture
4792.576 -> within our developers.
4794.845 -> That's why between 2014 and 2019
4798.315 -> we created world
class automated guardrails
4801.335 -> on our AWS accounts.
4803.42 -> This meant that our developers
could have the confidence
4806.273 -> to go out and experiment
with new capabilities,
4809.443 -> and then bring back
the learnings for everybody else.
4813.864 -> We also instilled the attitude
that code is a liability,
4818.952 -> it's not an asset.
4821.121 -> What this means is that
every single line of code
4824.808 -> must have demonstrable
business value.
4827.778 -> And this has been core to our
evolutionary architecture strategy,
4832.432 -> rapidly delivering business value
in a well-architected way.
4838.689 -> In 2019, it was time for us
to go through another evolution,
4843.41 -> this time using AWS CDK.
4846.613 -> But like everything else in life,
we needed to start slow
4850.067 -> before we could gain some speed,
and then optimize on best practices.
4854.988 -> It was August of 2019
when we started slow.
4859.176 -> I created the TypeScript proof
of concept.
4861.712 -> And this, it was an L3 construct
for a fully compliant
4865.482 -> private API gateway with
a custom authorizer Lambda function.
4870.737 -> This might not sound like much,
4872.573 -> but it reduced over 1500 lines
of CloudFormation
4877.094 -> dying to just 14 lines of CDK.
4886.186 -> And not only is that impressive,
because it's less code,
4889.022 -> but all our teams could share
a common construct,
4891.808 -> which reduces the code liability
of the overall company.
4894.878 -> Plus, it enabled our standard CI/CD
practices like unit testing,
4899.8 -> which was amazing.
4902.653 -> We then took things to the next level
by pairing AWS CDK with AWS SAM
4909.176 -> for the enhanced local testing.
4911.712 -> This felt like a game changer.
4915.532 -> But we were still a long way
from using it at scale.
4919.069 -> To gain speed, we needed to win the
hearts and minds of our developers.
4923.323 -> And that's why before the end of 2019
4926.71 -> we launched a platform
called The Software Accelerator.
4930.297 -> The accelerator allows any developer
to clone a working pattern
4934.585 -> and have a compliant production
ready pipeline in seconds.
4939.79 -> It allows anyone to contribute
back their working software,
4943.81 -> further accelerating our continuous
4945.679 -> learning flywheel
through inner source.
4949.416 -> My L3 construct was added
to the accelerator at launch
4953.036 -> along with the strip
back compliance starter pattern.
4956.707 -> From here, education was key.
4960.06 -> We ran the tutorial at cdkworkshop.
4962.379 -> com several times internally
across the globe.
4966.383 -> And we always finished with
every developer
4969.152 -> creating a working pipeline
through our accelerator.
4972.206 -> This meant that after they left
they could always add
4975.392 -> the business logic later from any of
the open source CDK patterns.
4979.596 -> Then, I worked with some amazing
people to create CDK Day.
4985.435 -> This was a global virtual conference.
4988.021 -> And it was so important that
Liberty Mutual has had
4990.574 -> several speakers feeding back
into the wider community.
4996.063 -> A great example of how CDK combined
with our accelerator
4999.783 -> has been core
to our continuous learning
5002.052 -> was at re:Invent last year 2020.
5005.923 -> AWS Lambda Container Image Support
was the big announcement on Tuesday.
5011.044 -> By the Friday, a working pattern
was in our accelerator,
5015.115 -> and it was being used to solve
real business problems
5017.668 -> by the following Monday,
less than seven days later.
5022.422 -> [applause]
5028.095 -> Throughout 2020, our flywheel
had accelerated to the point
5031.381 -> we deployed more than three and
a half thousand serverless patterns.
5036.103 -> That meant in 2021 optimization
became key.
5040.507 -> We'd spent all this time
embracing divergence,
5043.377 -> but now we needed to converge
on best practices.
5046.747 -> This is where we use the AWS
5048.966 -> Well-Architected Framework
to drive those discussions.
5052.236 -> We looked at what was common
across all of our stacks
5054.605 -> and introduced core
constructs for everyday capabilities
5057.224 -> like VPCLookups
right out of the box.
5060.644 -> We then experimented
with CDK Aspects
5063.914 -> to automatically warn
on compliance issues
5066.667 -> right in the IDA
further reducing developer burden.
5072.456 -> We now have an ecosystem
of Well-Architected,
5075.542 -> reusable constructs that allows us
to rapidly deliver business value
5079.713 -> in a Well-Architected way.
5081.899 -> The proof, we have teams
leaving discovery
5084.601 -> and framing to deliver
working Well-Architected products
5088.956 -> less than three days later.
5091.692 -> We're delivering industry
leading capabilities
5094.811 -> like our unstructured
data ingestion pipeline.
5097.915 -> It is 96% faster than the manual
process and every bet is accurate,
5104.721 -> all built using well
architected CDK patterns.
5109.476 -> In fact, a great story
is we're so fast now
5112.713 -> that I had an intern
join my team last year,
5115.065 -> and he was pushing code to production
on his first day and nothing broke.
5123.724 -> This morning, you heard me talk
through how we started slow
5126.927 -> by learning what CDK
could bring to Liberty,
5129.179 -> how we gained speed
through developer education,
5131.431 -> and scaled through inner source,
until finally we were taking advantage
5135.619 -> of everything CDK has to offer
rapidly delivering business value
5140.29 -> in a Well-Architected way.
5142.659 -> We've embraced continuous learning
and experimentation
5146.847 -> to be there and deliver
on our promise
5149.433 -> to our customers
in their time of need.
5152.536 -> This is our mission.
5154.838 -> A great example of this is we built
a serverless call center
5158.942 -> that can automatically process
a claim after a natural disaster
5163.347 -> in less than four minutes.
5165.849 -> This allows our customers to piece
their lives back together.
5171.722 -> This is our mission.
5172.973 -> And this is why we want to use CDK
to tell dozens of stories like this.
5177.16 -> So going forward, we're going
to continue to empower
5179.997 -> and enable our developers to be
the best versions of themselves
5182.733 -> that they can be.
5183.884 -> We see this as a key differentiator,
5186.37 -> enabling us to push the boundaries
of digital product,
5189.239 -> reuse an inner source whilst enabling
our developers to stay
5193.06 -> in lockstep
with our customer needs.
5197.03 -> So I challenge all of the builders,
dreamers and doers out there,
5204.538 -> what was announced this week that
you're going to enable tomorrow?
5207.558 -> Thank you.
5208.825 -> [applause]
5212.346 -> Matt, wait, wait, wait.
5217.067 -> Wait here, Matt.
5219.319 -> Come up here.
5221.488 -> And Matt has done tremendous work
for the community,
5226.293 -> and creating really a truly
fervent community around the CDK.
5231.431 -> And he's gone way beyond just sharing
his knowledge and learning,
5236.336 -> and a sit I would like to give you
the Now Go Build Award
5240.073 -> as a reward
for all the efforts that you've done.
5243.11 -> [applause]
5245.612 -> Thank you, thank you so much.
5247.881 -> Thank you.
Thank you Matt.
5255.389 -> So actually, what I haven't told you
is that
5258.559 -> Matt also is part of our AWS
Heroes program.
5263.597 -> And so AWS Heroes
5265.766 -> is a group of worldwide
enthusiasts around AWS
5271.238 -> that are very much invested
into sharing their knowledge.
5275.175 -> And there's about 230 of them
around the world right now.
5279.279 -> I'm very happy that about
the hundreds are here
5282.132 -> today in a room, upfront, over there.
5285.886 -> [applause]
5289.957 -> I'd like to thank every one of those
heroes
5292.893 -> for all the incredible hard work
5294.895 -> that you're doing to build
a community around AWS.
5300.284 -> Now, if we go then to Peter’s
keynote yesterday,
5303.287 -> and quite a few of the other
leadership sessions as well,
5307.674 -> you actually have heard us
talk about something
5310.277 -> that is probably on the forefront
of everybody's mind’s today.
5315.349 -> We've been building technological
infrastructures around the world
5319.152 -> that consume significant energy.
5321.772 -> And everyone should be aware
of actually how much energy
5326.393 -> they are consuming.
5328.812 -> And so if you think about,
I'm taking this quote from Peter,
5333.183 -> from last year,
5334.935 -> “The greenest energy is
the energy you don't use.
5338.155 -> ” So how to be more efficient
and be more green at the same time.
5344.161 -> According to a 451 Research report,
moving on premises workloads to AWS
5350.667 -> can lower your carbon footprint
by 88%.
5355.355 -> Remember, we're able to actually
get much higher
5359.776 -> CPU and memory utilization
by sort of the management techniques
5364.264 -> that we use to place your instances
and to run your functions for you.
5368.769 -> And especially those services
that are serverless.
5372.606 -> Now, there we can really make
an impact,
5375.275 -> because we can actually engineer
there for sustainability
5378.762 -> and higher efficiencies in ways
that are way beyond you
5382.099 -> would ever be able to do yourself.
5384.701 -> And remember, in the earlier days
5386.136 -> when we were talking to enterprise
data center management,
5390.057 -> typical utilization
in the data center is 12 to 15%,
5395.062 -> which basically means
that 85% of the energy
5398.665 -> that you're using is lost,
is useless.
5402.786 -> And so in AWS, we're coming up
with this model where we will
5408.442 -> call it shared responsibility model,
when it comes to sustainability.
5412.212 -> There where AWS is responsible
for sustainability of the cloud,
5417.935 -> meaning that we do good
water stewardship,
5420.32 -> we do lots of innovation
in energy management,
5423.023 -> we are building our own silicon,
5425.843 -> so that we can really drive
that cost down efficiency up.
5432.316 -> You however, as our customers
are responsible
5436.303 -> for sustainability in the cloud,
5439.223 -> to make sure you pick
those technologies
5442.292 -> that have
the most impact for you.
5445.863 -> And one of them is, for example,
to move to serverless.
5450.317 -> Lambda, our serverless
function service
5453.003 -> can actually spin up compute
to incoming requests.
5456.657 -> Yeah?
And so as a result,
5458.992 -> we're able to get far
greater utilization,
5461.578 -> CPU utilization, memory utilization,
and therefore energy,
5466.2 -> Because we manage
that fleet of servers,
5468.602 -> and can do absolute
best placement for that.
5472.556 -> And as, you know, you can also
get insights into say
5476.093 -> how many of the services
are running,
5477.845 -> for how long they've been running
in a sort of a good proxy,
5481.415 -> of course, for cost,
but often also a very good proxy
5484.468 -> for sort of how much energy
are you actually really using.
5489.056 -> And without actually really
getting detailed insights,
5493.794 -> it's very hard for you
to really understand
5497.047 -> exactly sort of what is
your carbon footprint.
5500.534 -> Now, coming soon, and Peter announced
this yesterday
5503.67 -> is AWS carbon footprint tool,
which gives you clear metrics around
5509.009 -> how much carbon you are using
in your applications.
5514.031 -> So one really simple thing is,
of course,
5517.935 -> if you provision something use it.
5520.821 -> Don't let it sit around
doing nothing.
5523.056 -> Yeah, and actually go back 2012,
again,
5527.861 -> where I said,
don't forget to turn off the lights.
5531.031 -> And what I mean by that is that
5532.583 -> with one click of a button
you can scale up.
5535.485 -> But with that same button
you can also scale down.
5538.639 -> Scaling is not only about scaling up.
5540.841 -> Scaling down is equally important.
5543.71 -> And every resource that you're
not using
5546.496 -> is the greenest resource
that you can think of.
5550.517 -> Now, I've also been thinking
about something else,
5552.219 -> so it doesn't really fit yet
in this shared responsibility model.
5557.074 -> There's also something you can
start thinking about,
5560.043 -> is what is actually a good
latency towards my customers?
5564.681 -> Imagine
the average latency or the 99.
5567.734 -> 9% latency of your web pages
will not be 1.
5571.004 -> 2, but 1.
5572.272 -> 5 seconds.
5574.074 -> How much more energy
would you save there?
5577.594 -> If you look at current Twitter stream
probably was at 60
5581.365 -> or 70% of these tweets
have rich imagery associated with it.
5586.086 -> Well, if your images are not
at high resolution,
5589.306 -> what if you use less imagery?
5591.525 -> How much less energy are you using?
5593.76 -> And so thinking about your customers,
5596.713 -> and how you present your products
to your customers,
5599.333 -> and what can you do
at the design level to think about
5603.537 -> if I design it this way,
it will cost more energy.
5606.557 -> So thinking about the architectures,
not only, but how am I using AWS?
5610.544 -> Am I using the most
sustainable technology possible?
5613.964 -> But am I building
the most sustainable application?
5617.518 -> So start thinking about that.
5618.752 -> Keep that in your mind.
5621.305 -> Now, to think about sort
of sustainability,
5625.375 -> you know, we always talked about
the Well-Architected Framework.
5629.346 -> Yeah, that had basically
five different pillars,