100+ Web Development Things you Should Know

Fireship
14 Jun 202213:18

Summary

TLDRThis video script offers an insightful overview of web development, highlighting its potential to impact global issues and the vast opportunities it presents. It delves into the foundational concepts necessary for building full-stack web applications, including the Internet's role, HTML for content structure, CSS for styling, and JavaScript for interactivity. The script also touches on advanced topics like server-client communication, responsive design, and back-end technologies, concluding with the reality that web development is a vast field where continuous learning is key.

Takeaways

  • 🌐 Web development is a dynamic field with the potential to impact global issues and create wealth through various online activities.
  • 💡 The Internet, born on January 1, 1983, is a global network of devices communicating via standardized protocols like IP and TCP.
  • 🌐 The World Wide Web is a software layer that sits on top of the Internet, allowing users to access web pages through URLs.
  • 🖥️ Browsers and servers facilitate the exchange of HTTP messages, with browsers as clients requesting data and servers responding with web page content.
  • 🔍 Domain names are translated into IP addresses through the Domain Name System (DNS), which acts as the Internet's phone book.
  • 📄 HTML is the language used to structure web pages, with elements and attributes defining the content and behavior of a page.
  • 🎨 CSS is used to style HTML elements, offering various methods to apply styles, including inline styles, internal style sheets, and external stylesheets.
  • 📱 Responsive design in CSS ensures web pages are accessible and visually appealing across different devices and screen sizes.
  • 💻 JavaScript adds interactivity to web pages, handling user events and manipulating the Document Object Model (DOM).
  • 🔧 Front-end frameworks like React, Vue, and Angular simplify UI development by representing the UI as a tree of components.
  • 🌟 Node.js enables server-side JavaScript execution, providing a non-blocking event loop for efficient handling of multiple connections.

Q & A

  • What is the significance of the internet in the context of web development?

    -The internet is crucial in web development as it serves as the platform connecting nearly 5 billion daily active users, allowing for global communication and data exchange, which forms the basis for building web applications.

  • What role does the Internet Protocol (IP) play in the internet's functionality?

    -The Internet Protocol is used to identify different computers on the network by assigning each a unique IP address, enabling them to send and receive data using the Transmission Control Protocol (TCP).

  • How is the World Wide Web different from the internet?

    -The World Wide Web is a software application that sits on top of the internet, allowing users to access web pages through the Hypertext Transfer Protocol (HTTP), while the internet is the underlying global network of interconnected computers.

  • What is the function of a URL in web development?

    -A URL (Uniform Resource Locator) is a unique identifier for a web page, allowing users to access specific content on the internet using a web browser.

  • Can you explain the concept of HTTP messages in web development?

    -HTTP messages are the requests and responses exchanged between a client (web browser) and a server in web development, facilitating the retrieval and transmission of web page content.

  • What is the purpose of the Domain Name System (DNS) in web development?

    -DNS serves as the phone book of the internet, mapping domain names to IP addresses, allowing browsers to locate and access web servers hosting specific websites.

  • How does HTML structure a web page?

    -HTML structures a web page using elements, which are tags with content in between, to define the content and the structure, such as paragraphs, headings, and forms.

  • What is the role of CSS in web development?

    -CSS (Cascading Style Sheets) is used in web development to change the appearance of HTML elements, providing styling and layout to web pages.

  • Why is JavaScript essential for web development?

    -JavaScript is essential for web development as it enables interactivity on web pages, handling user events, and manipulating the Document Object Model (DOM) to create dynamic and responsive user interfaces.

  • What is the significance of the Document Object Model (DOM) in web development?

    -The DOM represents the structure of a web page as a tree of objects, allowing developers to interact with and manipulate the web page's content, structure, and style with JavaScript.

  • How does server-side rendering differ from a single-page application in web development?

    -Server-side rendering generates the HTML on the server and sends it as a response to the client, while a single-page application renders most of the HTML client-side using JavaScript, making the website feel more like a native app.

Outlines

00:00

🌐 Web Development Overview

This paragraph introduces web development as an influential field with the potential to connect billions of users worldwide. It highlights the internet's role in facilitating communication and innovation, but also acknowledges its everyday uses like sharing memes and creating social connections. The paragraph emphasizes the importance of understanding web development basics, such as the Internet Protocol suite, IP addresses, and the distinction between the internet and the World Wide Web. It explains how HTTP messages are used for client-server communication and how domain names are resolved to IP addresses through DNS. The discussion also covers HTML, the building blocks of web pages, including elements, attributes, and the DOM structure. The paragraph concludes with an introduction to CSS for styling web pages and the importance of responsive design.

05:01

🎨 CSS and Responsive Design

The second paragraph delves into the intricacies of CSS, starting with the box model that includes padding, border, and margin. It discusses the display property and how it affects the layout of elements on a webpage. The paragraph explains the concept of positioning, including relative, absolute, and fixed positioning. A significant focus is on responsive design, which ensures web pages are accessible and visually appealing across various devices. Media queries and layout tools like Flexbox and Grid are introduced as essential for creating responsive layouts. The paragraph also touches on advanced CSS features like calc() for mathematical operations and custom properties for reusability. It briefly mentions the use of preprocessors like Sass to enhance CSS capabilities.

10:01

💻 JavaScript and Front-end Frameworks

This paragraph introduces JavaScript as a critical component of web development, detailing its role in making web interfaces interactive. It explains how JavaScript is executed in the browser and how variables are declared using 'let' and 'const'. The paragraph discusses event handling, a core aspect of JavaScript, and how it interacts with HTML elements through APIs. It also covers data structures like arrays and objects, and the concept of prototypal inheritance. The paragraph introduces front-end frameworks like React, Vue, and Angular, which simplify UI development by representing it as a tree of components. It concludes with a brief mention of Node.js, a server-side runtime environment that allows for server-side JavaScript execution, and the importance of delivering web content efficiently to clients.

🌐 Server-Side Rendering and Web Performance

The fourth paragraph explores server-side rendering (SSR), explaining how servers generate HTML and send it as a response to client requests. It contrasts SSR with single-page applications (SPAs), where the server only renders a shell and JavaScript handles subsequent page rendering. The paragraph also introduces static site generation (SSG) as a method to pre-render pages for better bot readability. It emphasizes the importance of web performance, suggesting tools like Lighthouse for optimization. The discussion includes module bundlers, web servers, and deployment strategies, such as using cloud providers or decentralized blockchain technologies. The paragraph concludes by acknowledging the vastness of web development knowledge and the common practice of learning through problem-solving.

Mindmap

Keywords

💡Web Development

Web development refers to the building and maintenance of websites. It encompasses several skills, including front-end and back-end development, which are crucial for creating interactive and functional websites. In the video, web development is portrayed as a dynamic field with the potential to impact global issues and create economic opportunities. The script mentions that web developers need to know a plethora of concepts to build full-stack web applications, highlighting the complexity and breadth of the field.

💡Internet

The Internet is a global network of interconnected computers that use the Internet Protocol Suite (TCP/IP) to communicate with one another. It was officially born on January 1, 1983, and it serves as the foundational infrastructure for the World Wide Web. The video script emphasizes the Internet's role in connecting billions of users and facilitating various forms of communication and data exchange, from sharing memes to advancing science.

💡World Wide Web (WWW)

The World Wide Web is a system of interlinked hypertext documents accessed via the Internet. It was invented by Tim Berners-Lee and is a service that sits on top of the Internet. The video explains that while the Internet is the hardware, the WWW is like software, allowing users to access web pages through URLs using tools like web browsers. The script highlights the WWW's role in making information accessible and user-friendly.

💡Hypertext Markup Language (HTML)

HTML is the standard markup language for creating web pages and web applications. It is composed of a series of elements, each defined by a start tag, an end tag, and the content in between. The video script describes HTML as the building blocks of web pages, allowing developers to structure content and create interactive forms. It is essential for defining the structure and semantics of web content.

💡Cascading Style Sheets (CSS)

CSS is a stylesheet language used for describing the presentation of a document written in HTML or XML. It allows web developers to control the layout, colors, and fonts of web pages. The video script explains that CSS is used to make web pages visually appealing by changing the appearance of HTML elements. It also touches upon CSS's cascading nature, which allows styles to be applied to multiple elements and the use of selectors for granular control over styling.

💡Domain Name System (DNS)

DNS is the system that translates human-friendly domain names (like example.com) into IP addresses that computers use to identify each other on the network. The video script uses DNS as an analogy to a phone book, mapping domain names to IP addresses so that users can access websites via familiar names rather than numeric addresses.

💡JavaScript

JavaScript is a high-level, interpreted programming language commonly used for adding interactivity and dynamic content to web pages. The video script positions JavaScript as an essential part of web development, allowing developers to handle user events, manipulate the Document Object Model (DOM), and create a more engaging user experience. It is also noted as being a dynamically typed language, which simplifies development but can lead to errors without proper type management.

💡Event Handling

Event handling in web development refers to the way browsers respond to user actions like clicks, mouse movements, or form inputs. The video script explains that JavaScript is used to listen to these events and execute functions in response, creating interactive web pages. Event handling is crucial for making web applications responsive and user-friendly.

💡Front-end Frameworks

Front-end frameworks are libraries or sets of tools that help developers build user interfaces for the web more efficiently. The video script mentions frameworks like React, Vue, and Angular, which allow developers to create components and manage the UI in a declarative manner. These frameworks abstract complex DOM manipulations and state management, making it easier to build and maintain complex web applications.

💡Node.js

Node.js is a runtime environment that allows developers to run JavaScript on the server side, enabling the creation of full-stack JavaScript applications. The video script highlights Node.js's use of an event-driven, non-blocking I/O model, which makes it efficient for handling multiple connections and ideal for real-time applications. It also mentions the importance of the Node Package Manager (npm) for managing dependencies and sharing code.

💡Databases

Databases are essential for storing and managing data in web applications. The video script briefly touches on the need for databases in full-stack web development, where they serve as the backbone for user data, content management, and application logic. Databases can be relational, like MySQL, or non-relational, like MongoDB, depending on the application's requirements.

Highlights

Web development is a dynamic field with the potential to connect billions of users worldwide.

The Internet, born on January 1, 1983, is a global network of machines communicating via standardized protocols.

The World Wide Web is a software layer that sits on top of the Internet, allowing access to web pages through URLs.

HTML is the language used to structure web pages, consisting of elements and attributes.

CSS is essential for styling web pages, offering tools like media queries for responsive design.

JavaScript adds interactivity to web pages, handling events and manipulating the DOM.

Frameworks like React, Vue, and Angular simplify UI development with component-based architectures.

Node.js enables server-side JavaScript, leveraging the same language and engine as modern browsers.

HTTP methods like GET, POST, and PATCH are crucial for client-server communication in web applications.

Single Page Applications (SPAs) use JavaScript to render pages client-side, enhancing user experience.

Static Site Generation (SSG) is a strategy for pre-rendering web pages, improving SEO and performance.

Lighthouse is a tool for optimizing web page performance, focusing on metrics like First Contentful Paint.

Full stack frameworks like Next.js, Ruby on Rails, and Laravel simplify backend and frontend development.

Module bundlers like Webpack and Vite package assets for efficient loading in browsers.

User authentication is a critical aspect of web development, ensuring secure access to user data.

Web servers like Nginx and Apache are used for hosting and serving web applications.

Cloud providers and PaaS services offer scalable infrastructure for deploying web applications.

Decentralized hosting on blockchain platforms is an emerging trend in web development.

Web development is a vast field, and professionals often rely on real-time problem-solving and learning.

Transcripts

play00:00

web development is the best job in the

play00:01

world you build on a platform with

play00:03

nearly 5 billion daily active users all

play00:05

connected together like the neurons of a

play00:07

global super intelligent brain a system

play00:09

that can cure disease eliminate poverty

play00:11

advance science and stuff like that but

play00:13

mostly it's used to share memes create

play00:15

parasocial relationships amplify drama

play00:17

and most importantly make tons and tons

play00:19

of money if you want to get into it

play00:21

you're gonna need to know some stuff

play00:22

like a lot of stuff in web development

play00:24

101 we'll take a look at a 101 different

play00:26

concepts that you'll need to know when

play00:28

building full stack web apps this is the

play00:30

internet it's a network of billions of

play00:32

machines connected together what do you

play00:34

write to it like mail no a lot of people

play00:36

use it and communicate i guess they can

play00:38

communicate with nbc writers and

play00:39

producers alison can you explain what

play00:41

internet is it was officially born on

play00:43

january 1 1983 thanks to the

play00:45

establishment of the internet protocol

play00:47

suite which standardized the way these

play00:49

computers communicate the internet

play00:51

protocol is used to identify different

play00:52

computers on the network by assigning

play00:54

each one of them a unique ip address

play00:56

these computers can then send data back

play00:58

and forth with the transmission control

play01:00

protocol it breaks data into a bunch of

play01:02

small packets kind of like puzzle pieces

play01:04

then sends them through a bunch of

play01:05

physical components like fiber optic

play01:07

cables and modems before they're put

play01:09

back together by the receiving computer

play01:11

you can think of the internet as

play01:12

hardware but the internet is not the

play01:14

same thing as the web the world wide web

play01:16

is like software that sits on top of the

play01:18

internet where people can access web

play01:20

pages with the hypertext transfer

play01:22

protocol what's special about it is that

play01:24

it gives every page of content a uniform

play01:26

resource locator or url humans typically

play01:29

use a tool called a web browser to

play01:31

access a url where it can be rendered

play01:33

visually on their screen the browser is

play01:35

called the client because it's consuming

play01:37

information but on the other end of that

play01:39

url there's another computer called a

play01:41

server it received an http request from

play01:43

the client then sent a response

play01:45

containing the web page content these

play01:47

are called http messages but more on

play01:49

that later what's interesting is that

play01:50

every web page has a unique domain name

play01:53

like fireship.io or example.com a domain

play01:56

name can be registered by anyone via a

play01:58

registrar who's accredited by icann a

play02:00

nonprofit responsible for overseeing

play02:02

namespaces on the internet when you

play02:04

navigate to a domain in a browser it

play02:06

gets routed through the domain name

play02:07

system that maps these names to an

play02:09

actual ip address on a server somewhere

play02:11

dns is like the phone book of the

play02:13

internet now when you look at a webpage

play02:15

the actual content you see is

play02:17

represented by hypertext markup language

play02:19

most browsers have devtools where you

play02:21

can inspect the structure of the html at

play02:23

any time to build your own web page

play02:25

you'll want a text editor like vs code

play02:27

an html document is just a collection of

play02:30

elements where an element is an opening

play02:32

and closing tag with some content in the

play02:34

middle like a paragraph and heading it

play02:36

also has elements that handle user input

play02:38

like the select and input elements which

play02:40

are used to build forms in addition

play02:42

elements can have one or more attributes

play02:44

to change their behavior for example an

play02:46

input can have a type like text or

play02:48

number which the browser will render

play02:50

differently to collect the appropriate

play02:51

value but the element that puts the

play02:53

hypertext in html is the a tag or anchor

play02:57

it's a link that allows one page to

play02:59

navigate to a different page based on

play03:00

its url these elements are nested

play03:02

together in a hierarchy to form the

play03:04

document object model or dom from the

play03:07

root element a web page is split into

play03:09

two parts the head contains invisible

play03:10

content like metadata and a title then

play03:13

we have the body for the main content

play03:14

that the end user actually sees the

play03:16

reason we wrap everything in tags is to

play03:18

give browsers and bots hints about the

play03:20

semantic meaning of the web page this

play03:22

allows search engines to display results

play03:24

properly and also helps with

play03:26

accessibility for devices like screen

play03:27

readers that allow anybody regardless of

play03:29

disability to enjoy the content my

play03:31

computer reads me the text bro smash

play03:34

that like button and subscribe one of

play03:36

the most common elements you'll come

play03:37

across is div or division to define a

play03:40

section of the webpage on its own a div

play03:42

might not seem to do anything and

play03:44

currently produces this plain black and

play03:45

white website that begs the question how

play03:47

do we make this website look cool the

play03:49

second language you'll need to learn as

play03:50

a web developer is cascading stylesheets

play03:53

or css which allows you to change the

play03:55

appearance of the html elements one way

play03:57

to accomplish that is with an inline

play03:59

style using the style attribute on an

play04:01

element the style itself contains a

play04:03

collection of properties and values that

play04:05

change the appearance of the element

play04:07

like we might make the background color

play04:08

black and the text color red what we've

play04:10

created here is an inline style that

play04:12

will only be applied to this one element

play04:14

however css cascades which means it can

play04:16

be applied to multiple elements at the

play04:18

same time providing better code

play04:20

reusability another option is to move

play04:22

our code into a style tag but to make

play04:24

the code work we'll first need to define

play04:25

a selector so it knows which elements to

play04:27

target a selector for example can target

play04:30

all of the paragraph elements on the

play04:32

page but that's too broad we can be more

play04:34

granular by defining a class that style

play04:36

can then be applied to one or more

play04:38

elements with the class attribute what's

play04:39

interesting though is that we now have

play04:41

classes that apply different styles to

play04:43

the same element css contains a bunch of

play04:45

specificity rules that determine which

play04:47

styles are relevant to an element in a

play04:49

way that's self-evident and elegant like

play04:51

a benevolent elephant most often though

play04:53

we don't use style tags but instead use

play04:55

an external style sheet which is linked

play04:56

to the webpage and the head of the

play04:58

document when it comes to css by far the

play05:00

most difficult thing to learn is layout

play05:02

and positioning think of every element

play05:04

like a box the outside of that box is

play05:06

wrapped with padding border and margin

play05:08

the boxes then take up space on the page

play05:10

from top to bottom some elements like

play05:12

heading have a display of block by

play05:14

default which means they take up all

play05:16

available horizontal space other

play05:17

elements like image are displayed inline

play05:20

which means they can line up

play05:20

horizontally side by side the problem is

play05:23

that the default position is usually not

play05:25

desirable it can be changed by

play05:26

customizing the position property on an

play05:28

element relative positioning allows an

play05:31

element to move a certain number of

play05:32

pixels from its normal position absolute

play05:34

positioning is similar but the position

play05:36

values are relative to its nearest

play05:38

ancestor and then we have fixed

play05:40

positioning which will keep an element

play05:42

on the screen even as the user scrolls

play05:43

away from it because it's fixed to the

play05:45

entire viewport changing the position of

play05:47

an element is one thing but one of the

play05:49

biggest challenges web developers face

play05:50

is creating responsive layouts users can

play05:53

access your web page from all kinds of

play05:54

different screens and it should look

play05:56

good on all of them css provides a bunch

play05:58

of different tools to help make this

play06:00

happen one of which is media queries a

play06:02

media query allows you to get

play06:04

information about the device that's

play06:05

rendering the web page and apply

play06:07

different styles accordingly but more

play06:09

importantly it provides layout tools

play06:10

like flexbox applying display flex

play06:13

allows the parent to control the flow of

play06:15

the children to easily create rows and

play06:17

columns for more complex layouts display

play06:19

grid can be used to control multiple

play06:21

rows and columns at the same time now

play06:23

css is usually not considered a turing

play06:25

complete programming language on its own

play06:27

however it does have mechanisms like

play06:29

calc to perform mathematical operations

play06:31

and custom properties which are like

play06:33

variables that you can reuse in multiple

play06:35

places vanilla css is rarely enough

play06:37

though and many developers choose to

play06:39

extend it with tools like sas that add

play06:41

additional programmatic features on top

play06:43

of it and that brings us to the third

play06:44

language you'll need to know as a web

play06:46

developer javascript technically you

play06:48

don't need javascript to build a website

play06:50

however most developers choose to use it

play06:51

to make the user interface more

play06:53

interactive to run javascript code on a

play06:55

web page open up a script tag then write

play06:57

some javascript code inside of it the

play06:59

browser interprets the html from top to

play07:01

bottom and runs this code when it

play07:02

encounters it in the dom in most cases

play07:04

javascript is written in a separate file

play07:06

then referenced as the source on the

play07:08

script tag usually it's preferred that

play07:09

this code runs after the dom content has

play07:11

loaded which can be accomplished with

play07:13

the defer attribute js is a big

play07:15

complicated programming language which

play07:17

is more formally known as ecmascript and

play07:19

is standardized in all major browsers

play07:21

there are several different ways to

play07:22

declare a variable a variable that might

play07:24

be reassigned in the future uses the let

play07:26

keyword while a variable that can't be

play07:28

reassigned uses const it's a dynamically

play07:30

typed language which means no type

play07:32

annotations are necessary that's not

play07:33

always ideal so many developers choose

play07:35

typescript as an alternative to add

play07:37

static typing on top of javascript now

play07:39

one of the most common reasons you would

play07:41

use javascript in the first place is to

play07:43

handle events whenever the user does

play07:44

something on a web page the browser

play07:46

emits an event that you can listen to

play07:48

like a click mouse move form input

play07:51

change and so on we can tap into these

play07:52

events using browser apis like document

play07:55

which in this case provides a method

play07:57

called query selector that allows us to

play07:58

grab an element with a css selector once

play08:01

we have that element set as a variable

play08:03

we can then assign an event listener to

play08:04

it an event listener is a function that

play08:07

will be called or re-executed anytime

play08:09

the button is clicked the language has a

play08:11

variety of built-in data structures like

play08:13

an array to represent a collection of

play08:15

values but the most fundamental data

play08:17

structure is the object also commonly

play08:19

called a dictionary or hashmap anything

play08:21

that's not a primitive type like a

play08:23

string or number inherits its base

play08:25

functionality from the object class it

play08:27

relies on a technique called prototypal

play08:29

inheritance where an object can be

play08:30

cloned multiple times to create a chain

play08:33

of ancestors where the child inherits

play08:35

the properties and methods of its

play08:36

ancestors this is different from

play08:38

class-based inheritance which is kind of

play08:40

confusing because javascript also

play08:41

supports classes however these classes

play08:44

are just syntactic sugar for prototypal

play08:46

inheritance but now we're getting a

play08:47

little too low level most developers

play08:49

don't ever want to have to touch the

play08:50

word prototype so what we do instead is

play08:52

use a front-end framework like react

play08:54

view spelt angular and so on all of

play08:56

these frameworks do the same thing in a

play08:58

slightly different way which is

play08:59

represent the ui as a tree of components

play09:02

a component can encapsulate html css and

play09:05

javascript into a format that looks like

play09:07

its own custom html element most

play09:09

importantly they produce declarative

play09:10

code that describes exactly what the ui

play09:13

does and that's much easier to work with

play09:14

than imperative code that you would

play09:16

normally get with just plain vanilla

play09:18

javascript at this point we've taken a

play09:19

look at the frontend stack but now we

play09:21

need to switch gears to the back end

play09:23

starting with nodejs which is a

play09:24

server-side runtime based on javascript

play09:27

you can run server-side code for web

play09:28

applications in all kinds of different

play09:30

languages but node is the most popular

play09:32

because it relies on the same language

play09:33

as the browser it's also based on the

play09:35

same v8 engine that powers the chromium

play09:37

browser to run code in a single threaded

play09:39

non-blocking event loop this allows node

play09:41

to handle many simultaneous connections

play09:43

quickly and efficiently in addition it

play09:45

allows developers to share work remotely

play09:47

thanks to the node package manager a

play09:49

package is also called a module which is

play09:51

just a file that contains some code with

play09:54

an export statement so it can be used in

play09:56

another file the file can consume a

play09:58

module with an import statement but now

play10:00

we need to think about how to deliver

play10:02

the actual website from the server to

play10:04

the client the classic option is server

play10:06

side rendering in this approach the

play10:08

client will make a get request for a

play10:10

certain url every request has an http

play10:13

method and git means you want to

play10:15

retrieve data from a server as opposed

play10:17

to methods like post and patch where the

play10:19

intent is to modify data the server

play10:21

receives the request and then generates

play10:23

all the html on the server and sends it

play10:25

back to the client as a response the

play10:27

response contains a status code like 200

play10:29

for success or levels 4 and 500 for

play10:32

errors for example if the web page

play10:34

doesn't exist the server will return a

play10:36

404 status code which you've likely seen

play10:38

before as a web user ssr is extremely

play10:41

popular but in some cases it may not be

play10:43

fast enough another approach is the

play10:45

single page application with this

play10:47

approach the server only renders a shell

play10:49

for the root url then javascript handles

play10:51

the rendering for all other pages on the

play10:53

website the html is generated almost

play10:55

entirely client-side in the browser

play10:57

making the website feel more like a

play10:59

native ios or android app when the app

play11:01

needs more data it still makes an http

play11:03

request but only requests a minimal

play11:05

amount of data as json which is called a

play11:08

data interchange format that can be

play11:09

understood by any programming language

play11:11

this can result in a great user

play11:13

experience however it can be very

play11:14

difficult for bots like search engines

play11:16

and social media link previews to

play11:18

understand content on the page this led

play11:21

to another rendering strategy called

play11:22

static site generation in this case

play11:24

every webpage on the site is uploaded to

play11:26

a server in advance allowing bots to get

play11:29

the information they need a front-end

play11:30

javascript framework usually takes over

play11:32

to hydrate the html to make it fully

play11:34

interactive and behave like a single

play11:36

page application performance is

play11:38

extremely important and you'll want to

play11:39

use tools like lighthouse to optimize

play11:41

metrics like first contentful paint and

play11:43

time to interactive now to implement one

play11:45

of these patterns most developers will

play11:47

use a full stack framework like next js

play11:49

ruby on rails laravel and so on they

play11:52

abstract away many of the more tedious

play11:54

things developers don't want to deal

play11:55

with one of which is module bundlers

play11:57

which are tools like webpack and veed

play11:59

that take all of your javascript css and

play12:01

html and package it in a way that can

play12:03

actually work in a browser they might

play12:05

also provide a linter like eslint to

play12:07

warn you when your code doesn't follow

play12:08

the proper style guidelines oh and i

play12:10

almost forgot you are definitely going

play12:12

to need a database to build a full stack

play12:14

web application because you need

play12:15

somewhere to store your data like data

play12:17

about your users but in order to get

play12:19

that data you'll need to give users a

play12:21

way to log in via a process called user

play12:23

authentication now before you deploy

play12:25

your code you'll need to test it with a

play12:26

web server there are tools like nginx

play12:28

and apache you create an http server but

play12:31

your framework will likely do this for

play12:33

you by serving the files on localhost

play12:35

which makes your own ip address behave

play12:36

like a remote web server when it comes

play12:38

time to deploy you'll likely use a big

play12:40

cloud provider like aws most apps are

play12:42

containerized with docker making them

play12:44

easy to scale up and down based on the

play12:46

amount of traffic that they receive

play12:48

there are many tools out there that

play12:49

function as a platform as a service to

play12:52

manage this infrastructure for you in

play12:53

exchange for your money or if you don't

play12:55

want to get locked in with a giant tech

play12:56

corporation you might host your app on a

play12:58

decentralized blockchain with web3 and

play13:01

that's about one percent of what you'll

play13:02

need to know to call yourself a full

play13:04

stack web developer if that seems

play13:05

overwhelming don't worry too much almost

play13:07

nobody knows what the hell they're doing

play13:09

and we all just use google to figure

play13:10

things out on the fly congratulations

play13:12

you just passed web development 101

play13:14

thanks for watching and i will see you

play13:16

in the next one

Rate This

5.0 / 5 (0 votes)

الوسوم ذات الصلة
Web DevelopmentInternet ProtocolHTML StructureCSS StylingJavaScriptFront-end FrameworksBack-end TechnologiesNode.jsFull StackWeb3
هل تحتاج إلى تلخيص باللغة الإنجليزية؟