Web Development on AWS

A presentation at Computer Science Association - AWS Bootcamp in October 2020 in by Jenna Pederson

Slide 1

Slide 1

Web Development on AWS Oh! The Possibilities. @jennapederson

Slide 2

Slide 2

How will this work I’m going to talk. A lot. Use the chat! I have questions for you, too. Next week, we will build. @jennapederson

Slide 3

Slide 3

Question CHECK THE CHAT @jennapederson

Slide 4

Slide 4

1989 BIRTH OF THE WORLD WIDE WEB @jennapederson

Slide 5

Slide 5

Invented the web Sir Tim Berners-Lee by Paul Clarke licensed under CC BY-SA 4.0

Slide 6

Slide 6

The World Wide Web made the Internet more accessible. @jennapederson

Slide 7

Slide 7

Patrice Loïez CERN licensed under CC BY-SA 4.0

Slide 8

Slide 8

This machine is a server. DO NOT POWER IT DOWN!!

Slide 9

Slide 9

http://info.cern.ch/hypertext/WWW/TheProject.html @jennapederson

Slide 10

Slide 10

1991 WEB SOFTWARE WAS RELEASED PUBLICLY @jennapederson

Slide 11

Slide 11

Slide 12

Slide 12

EARLY 1993 BROWSERS RELEASED FOR X-WINDOW SYSTEM, PC, AND MAC @jennapederson

Slide 13

Slide 13

APRIL 30TH 1993 SOURCE CODE PUT INTO THE PUBLIC DOMAIN @jennapederson

Slide 14

Slide 14

LATE 1993 500+ WEB SERVERS + THE WEB ACCOUNTED FOR 1% OF THE INTERNET @jennapederson

Slide 15

Slide 15

Slide 16

Slide 16

END 1994 10K WEB SERVERS + 10M USERS @jennapederson

Slide 17

Slide 17

Design Principles Web for All Ensuring long-term growth of the Web W3C PRINCIPLES + VISION Web on Everything Vision Web for Rich Interaction Web of Data and Services Web of Trust @jennapederson

Slide 18

Slide 18

Today https://www.internetlivestats.com/

Slide 19

Slide 19

Connects us

Slide 20

Slide 20

Enables telehealth

Slide 21

Slide 21

Allows us to feel like we ate out

Slide 22

Slide 22

Empowers makers + small businesses

Slide 23

Slide 23

Enables volunteer efforts

Slide 24

Slide 24

Makes us laugh

Slide 25

Slide 25

Building quickly has the power to impact people’s lives. @jennapederson

Slide 26

Slide 26

Question CHECK THE CHAT @jennapederson

Slide 27

Slide 27

How Do Websites Work? @jennapederson

Slide 28

Slide 28

Files are hosted on a server and sent over the internet to your browser @jennapederson

Slide 29

Slide 29

Your browser looks up the server address using the URL and DNS @jennapederson

Slide 30

Slide 30

A copy of the files is downloaded to your computer @jennapederson

Slide 31

Slide 31

Frontend EVERYTHING THE USER EXPERIENCES DIRECTLY @jennapederson

Slide 32

Slide 32

HTML HyperText Markup Language. Defines the structure of your web page. @jennapederson

Slide 33

Slide 33

HTML Element PARAGRAPH ELEMENT

<p>Hello, World!</p> @jennapederson

Slide 34

Slide 34

HTML Element PARAGRAPH ELEMENT

<p>Hello, World!</p> THE OPENING TAG @jennapederson

Slide 35

Slide 35

HTML Element PARAGRAPH ELEMENT

<p>Hello, World!</p> THE CLOSING TAG @jennapederson

Slide 36

Slide 36

HTML Element PARAGRAPH ELEMENT

<p>Hello, World!</p> THE CLOSING TAG @jennapederson

Slide 37

Slide 37

HTML Element PARAGRAPH ELEMENT

<p>Hello, World!</p> THE CONTENT @jennapederson

Slide 38

Slide 38

Nesting <p>Hello, <strong>World</strong>! </p> A NESTED ELEMENT @jennapederson

Slide 39

Slide 39

Attributes EXTRA INFORMATION <a href=”/index.html”>Home</a> THE ATTRIBUTE @jennapederson

Slide 40

Slide 40

Empty IMAGE ELEMENT <img src=”images/puppy.jpg”> NO CONTENT OR CLOSING TAG @jennapederson

Slide 41

Slide 41

CSS Cascading Style Sheets. Code to style your content. @jennapederson

Slide 42

Slide 42

CSS Rule <p>Hello, World!</p> THE SELECTOR p { color: red; } @jennapederson

Slide 43

Slide 43

CSS Rule <p id=”hello-world”>Hello, World!</p> THE SELECTOR #hello-world { color: red; } @jennapederson

Slide 44

Slide 44

CSS Rule <p class=”text-red”>Hello, World!</p> THE SELECTOR .text-red { color: red; } @jennapederson

Slide 45

Slide 45

CSS Rule p { color: red; } THE RULE @jennapederson

Slide 46

Slide 46

CSS Rule p { color: red; } THE PROPERTY TO INFLUENCE @jennapederson

Slide 47

Slide 47

CSS Rule p { color: red; } THE VALUE @jennapederson

Slide 48

Slide 48

Browser Differences @jennapederson

Slide 49

Slide 49

JS JavaScript. Makes your website more interactive. @jennapederson

Slide 50

Slide 50

JS REFERS TO THE HTML OF THE PAGE document.querySelector(‘button’).onclick = function() { alert(‘Hello, world!’); } @jennapederson

Slide 51

Slide 51

JS SELECTS BUTTON ELEMENTS FROM THE DOCUMENT document.querySelector(‘button’).onclick = function() { alert(‘Hello, world!’); } @jennapederson

Slide 52

Slide 52

JS ADDS A CLICK ACTION OR HANDLER TO ALL ELEMENTS SELECTED document.querySelector(‘button’).onclick = function() { alert(‘Hello, world!’); } @jennapederson

Slide 53

Slide 53

JS document.querySelector(‘button’).onclick = function() { THE CLICK HANDLER alert(‘Hello, world!’); } @jennapederson

Slide 54

Slide 54

JS document.querySelector(‘button’).onclick = function() { alert(‘Hello, world!’); } SHOWS AN ALERT WITH “HELLO, WORLD!” TEXT @jennapederson

Slide 55

Slide 55

Let’s See This In Action! @jennapederson

Slide 56

Slide 56

Backend EVERYTHING BEHIND THE SCENES, ENABLES THE FRONTEND TO BE MORE DYNAMIC @jennapederson

Slide 57

Slide 57

Backend servers contain frontend files @jennapederson

Slide 58

Slide 58

Backend servers contain frontend files, run our backend code @jennapederson

Slide 59

Slide 59

Backend servers contain frontend files, run our backend code, + store data in databases @jennapederson

Slide 60

Slide 60

Slide 61

Slide 61

Datacenters Buy physical hardware Pay for heating and cooling costs Maintain a building Over-provision resources Took months to build Had to physically go there @jennapederson

Slide 62

Slide 62

Not a big company? YOU, ME, A NEW BUSINESS, OR SMALL BUSINESS @jennapederson

Slide 63

Slide 63

What if… WE COULD DEPLOY OUR WEBSITE OR APP TO SOMEONE ELSE’S SERVERS IN DATACENTERS STRATEGICALLY PLACED AROUND THE GLOBE? @jennapederson

Slide 64

Slide 64

What if… IT WAS MANAGED BY SOMEONE ELSE? @jennapederson

Slide 65

Slide 65

What if… WE ONLY PAID FOR WHAT WE USED, AS WE USED IT? @jennapederson

Slide 66

Slide 66

What if… WE COULD DO THIS IN MINUTES, NOT WEEKS OR MONTHS? @jennapederson

Slide 67

Slide 67

What if… WE COULD DO THIS WITH THE CLICK OF A BUTTON? @jennapederson

Slide 68

Slide 68

That is the cloud. @jennapederson

Slide 69

Slide 69

The cloud empowers us Innovate and experiment faster Deploy globally in minutes Grow and shrink resources as our business needs change Pay for what we use @jennapederson

Slide 70

Slide 70

Amazon Web Services SINCE 2006 Secure, extensive, and reliable cloud platform Offers over 175 fully featured services from data centers globally 24 regions covering 245 countries and territories @jennapederson

Slide 71

Slide 71

AWS Developer Community THEY SUPPORT YOU AND CHEER YOU ON @jennapederson

Slide 72

Slide 72

Question CHECK THE CHAT @jennapederson

Slide 73

Slide 73

Let’s build a blog! WHY A BLOG? Show off what you learn Build an audience Make you more attractive to employers Hone your writing skills @jennapederson

Slide 74

Slide 74

Next week FOR THOSE WHO’VE NEVER PROGRAMMED BEFORE (OR ANYONE, REALLY) Workshop-style. Learn more about web development with HTML, CSS, and JS and build a static website on AWS Amplify. @jennapederson

Slide 75

Slide 75

Week 3 FOR THOSE FAMILIAR WITH WEB DEVELOPMENT Workshop-style. Build on first two sessions and build a web app deployed to AWS Amplify. Learn about more Amplify features. @jennapederson

Slide 76

Slide 76

Before you join MAKE SURE YOU ARE PREPARED

  1. Install a text editor - VS Code is preferred (not Notepad or TextEdit) 2. Have access to Chrome or Firefox browser (not IE, Edge, or Safari) @jennapederson

Slide 77

Slide 77

Last questions CHECK THE CHAT @jennapederson

Slide 78

Slide 78

Thank you! Slides and resources can be found at: https://jenna.link/csa @jennapederson