0% found this document useful (0 votes)
9 views18 pages

History and Evolution of the Web

Know basics

Uploaded by

leavefranch
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views18 pages

History and Evolution of the Web

Know basics

Uploaded by

leavefranch
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Short History of the Web

🌍 1. Before the Web

 In the early days (1960s–1980s), computers were not connected like today.
 Scientists used a small network called ARPANET — this was the foundation of the
Internet.
 It allowed a few universities and military computers to share information.

💡 2. Birth of the World Wide Web (1989–1991)

 Sir Tim Berners-Lee, a British scientist at CERN (in Switzerland), wanted a way for
researchers to share documents easily.
 He invented the World Wide Web in 1989.
 By 1991, the first website went live.
 He also created three key technologies we still use today:
1. HTML (HyperText Markup Language) – for writing web pages
2. URL (Uniform Resource Locator) – web addresses
3. HTTP (HyperText Transfer Protocol) – the communication system between
browsers and servers

🖥️3. Web Growth (1990s–2000s)

 The first browser called Mosaic appeared in 1993, later becoming Netscape
Navigator.
 Companies and people started building websites.
 Search engines like Yahoo (1994) and Google (1998) appeared.
 The Web became a place for information, communication, and commerce.

💳 4. E-Commerce Era (2000s–2010s)

 Online shopping exploded with Amazon, eBay, and others.


 Web technologies improved — we got dynamic websites using databases.
 Social media (Facebook, YouTube, Twitter) changed how people interacted online.

📱 5. Modern Web (2010s–Now)

 The web moved to mobile-first design.


 Apps became more powerful using JavaScript frameworks like React and Angular.
 Now, we have AI-based, cloud-hosted, and interactive websites — the Web is
everywhere.
1. Introduction — What Is “The Web”?
Start simple:

 Ask: “What do you do when you open Google or YouTube?”


 Explain difference between Internet and Web:
o Internet: The global network of computers (the roads).
o Web (WWW): Collection of websites and web pages (the cars using the
roads).

Example analogy:

The Internet is like electricity — it powers everything.


The Web is one of the devices that uses that electricity.

Basic components:

 Website: A collection of web pages (e.g., [Link])


 Web Page: A single document shown in a browser (e.g., login page)
 Browser: Software to access the web (Chrome, Edge, Firefox)
 URL: The web address you type in (like house address)

🌍 2. How the Web Works


Use a simple diagram or analogy:

1. You type a web address (e.g., [Link])


2. Browser sends request to server
3. Server finds the web page (HTML file or app)
4. Server sends back data
5. Browser displays it

Explain terms:

 Client: The user's computer or phone


 Server: The machine where the website is hosted
 Hosting: Storing the website files on the server
 Domain: Human-friendly name for a website (e.g., [Link])

🛒 3. Introduction to E-Commerce
Start with examples: Daraz, Amazon, Alibaba, Foodpanda.
Explain simply:

 E-Commerce = Electronic Commerce = Buying/Selling online


 Types:
1. B2C: Business to Consumer (Amazon)
2. B2B: Business to Business (Alibaba)
3. C2C: Consumer to Consumer (OLX, eBay)
4. C2B: Consumer to Business (Freelancers selling to companies)

Benefits:

 24/7 business
 Global reach
 Cost-effective
 Data-driven marketing

Risks:

 Security threats
 Payment fraud
 Delivery issues

🧰 4. Web Development Basics


Ask: “How is a website made?”

Frontend vs Backend:

Part Description Examples


Frontend What user sees HTML, CSS, JavaScript
Backend What happens behind the scenes PHP, [Link], Python, [Link]
Database Where data is stored MySQL, SQL Server, MongoDB

Why We Use Backend Technologies


When a user opens a website, they see only the frontend — the visible part (HTML, CSS,
images, buttons).
But behind the scenes, something much smarter is happening — that’s the backend.

💡 1. Backend = Brain of the Website

 The frontend is like the face of a website.


 The backend is the brain — it makes decisions, processes data, and communicates
with the database.
 Without the backend, your website can only show static information — it can’t handle
logins, searches, or payments.

🧮 2. Backend Handles Logic and Data

Examples of what backend code does:

 User login & authentication


 Saving form data to a database
 Processing orders in e-commerce
 Fetching products from the database
 Sending emails or notifications
 Calculating totals, prices, or results

🧰 3. Languages Used in Backend

Different programming languages can be used to build the backend — depending on


developer choice or project needs.

Language /
Common Uses Key Strength
Framework
Simple, widely supported on cheap
PHP WordPress, dynamic websites
servers
[Link] (by
Enterprise, web apps Secure, powerful for large systems
Microsoft)
Easy to read, strong in AI and data
Python Web apps, data-based sites
handling
Real-time apps (chat, live
[Link] Fast, uses JavaScript on server too
updates)

🌍 4. Why Backend Is Important

The backend makes websites interactive, dynamic, and connected.


When you log in to Facebook, check your balance online, or add an item to a cart — backend
code is doing the work.

Without a backend:

 You could only view pages, not interact.


 Websites couldn’t store user data.
 E-commerce wouldn’t exist.

⚡ In Short

Frontend shows → Backend thinks and processes → Database remembers.

Role of JavaScript in Web Development


🎨 1. JavaScript on the Frontend (In the Browser)

JavaScript started as a frontend language — it runs directly inside your browser.

When you open a website:

 HTML → creates the structure (headings, paragraphs, images).


 CSS → styles the design (colors, fonts, layouts).
 JavaScript → adds behavior and interactivity.

Examples:

 Dropdown menus that open when you click.


 Image sliders and animations.
 Form validation (showing “Please enter a valid email”).
 Dynamic updates (like showing live search results as you type).

So yes — JavaScript makes the web more attractive, interactive, and alive ✨

🧠 2. JavaScript on the Backend (with [Link])

Later, developers realized — “If JavaScript can handle the frontend so well, why not use it on
the server too?”
That’s where [Link] came in.

With [Link], JavaScript can now:


 Run on the server (not just in the browser).
 Handle backend tasks like databases, logins, file uploads, etc.
 Power real-time applications (like chat apps or live notifications).

So JavaScript became the only language that can:

Work both on the frontend (browser) and backend (server) sides.

That’s why it’s incredibly popular today.

WebSockets and SignalR — Real-Time Communication


on the Web
💭 1. The Problem with Normal Websites

Normally, websites use the HTTP protocol — this means:

 The browser (client) sends a request


 The server sends a response
 Then the connection closes

If you want new data (for example, new chat messages), the browser must keep asking again
and again — like:

“Do you have anything new now?”


This is called polling, and it’s slow and wastes bandwidth.

⚡ 2. The Solution — WebSockets

WebSockets solve this problem.

 It creates a constant, two-way connection between browser and server.


 Once connected, both can send messages instantly — no need to keep asking.
 It’s perfect for live updates, such as:
o Chat applications
o Live sports scores
o Real-time dashboards or notifications
o Collaborative tools (like Google Docs)

Example analogy:

Instead of repeatedly knocking on someone’s door (HTTP), you open a phone line
(WebSocket) and stay connected — both sides can talk anytime.
🧩 3. What Is SignalR?

SignalR is a framework by Microsoft (used in [Link]) that makes it easy to use


WebSockets — plus it automatically switches to other methods if WebSockets aren’t
available.

SignalR provides:

 Automatic connection management


 Group messaging (send to all connected users)
 Built-in support for .NET apps
 Real-time updates without writing complex WebSocket code

So developers use SignalR to build features like:

 Live chat
 Instant notifications
 Real-time dashboards
 Online gaming interactions

🔗 4. In Simple Words

Term Purpose Example


HTTP One-time request & response Loading a page
WebSocket Continuous two-way connection Chat, live data
SignalR .NET framework using WebSockets easily Live notifications in [Link] apps

WebSockets give speed — SignalR gives simplicity.


Together, they make the web feel alive and instant ⚡.

⚙️5. Modern Web Development Flow


Stages:

1. Planning (What do you want to build?)


2. Designing (UI/UX)
3. Frontend Development (HTML/CSS/JS)
4. Backend Development (Server-side logic)
5. Database Setup
6. Testing & Deployment

Tools / Technologies to mention briefly:

 HTML / CSS / JavaScript


 Frameworks: React, Angular, [Link] Core
 CMS: WordPress
 Databases: SQL, Firebase
 Hosting: GitHub Pages, SmarterASP, AWS, etc.

Brief Note on <div> Tag in HTML

The <div> tag in HTML is a block-level container element used to group and organize
content.
It doesn’t have any visual effect by itself but is very useful for layout, styling, and scripting
purposes.

Key Points:

 Full form: Division


 Type: Block-level element (starts on a new line and takes full width)
 Purpose: To group related HTML elements together.
 Common uses:
o Structuring sections of a webpage (e.g., header, footer, sidebar)
o Applying CSS styles to multiple elements at once
o Creating page layouts with CSS Grid or Flexbox
o Wrapping content for JavaScript manipulation

Example:
<div class="container">
<h2>Welcome to My Website</h2>
<p>This is a section of content inside a div.</p>
</div>
Notes:

 You can add id or class attributes for styling or scripting:


 <div id="main-content" class="section"></div>

 Often used with CSS and JavaScript to control layout and behavior.
👉 In short, <div> is like an invisible box used to structure, style, and control parts of a
webpage.

While <div> is a generic container (used for grouping and layout), HTML5 introduced
semantic elements that make code more meaningful and SEO-friendly.

Let’s go over them clearly 👇

🧩 Alternatives to <div> in HTML5


Tag Purpose / Description Example Use

Represents the top section


of a page or an article — html <header><h1>My
<header>
usually contains logos, Website</h1></header>
navigation, or titles.

Defines a navigation bar or


<nav> ```html <nav><a href="#">Home</a>
set of links.

Specifies the main content


html <main><p>Main page content
<main> area of the webpage here.</p></main>
(unique section).

Groups related content


html <section><h2>Services</h2><p>We
<section> together — like chapters or offer...</p></section>
topic sections.

Used for independent, self-


html <article><h2>Blog
<article> contained content like blog Title</h2><p>Post text...</p></article>
posts or news articles.

For side content like a


html <aside><h3>Quick
<aside> sidebar, tips, ads, or Links</h3></aside>
related links.

Defines the bottom section


of a page or article —
<footer> html <footer>© 2025 My Website</footer>
usually contains contact
info or copyright.
html <figure><img
<figure> and Used for images, diagrams,
src="[Link]"><figcaption>Image
<figcaption> or charts with captions. Caption</figcaption></figure>

🧠 Key Difference
Tag Type Meaning Example
<div
<div> Generic, no meaning — purely structural class="header"></div>

Semantic Meaningful and descriptive — improves readability,


<header></header>
tags SEO, and accessibility

CSS

<p id="main" class="text">Apple</p>

<style>

.text { color: blue; }

#main { color: red; }

</style>

Why the <p> becomes red

 .text { color: blue; } is a class selector (specificity = 0,0,1,0).


 #main { color: red; } is an ID selector (specificity = 0,1,0,0).
 Higher specificity wins, so the #main rule overrides .text and the paragraph text
becomes red.

CSS cascade priority (short)

1. Inline style="..." (highest, unless !important used elsewhere)


2. ID selectors (#id)
3. Class/attribute/pseudo-class selectors (.class, [attr])
4. Tag selectors (p, h1)
5. Browser default

Examples to show differences

 If element had style="color: orange;" → orange (inline wins).


 If #main { color: blue !important; } and .text { color: red; } → blue
(the !important on the ID still wins because specificity + important).
 If .text { color: blue !important; } and #main { color: red; } → blue
(class with !important beats ID without !important).

🎯 Specificity = CSS Priority System


CSS gives each type of selector a weight:
Selector Type Example Specificity Weight

Inline style <p style="color:red"> 1000

ID selector #main 100

Class / attribute / pseudo-class .text, [type=submit], :hover 10

Tag selector p, h1 1

Universal selector * 0

✔ Example (Your Case)


<p id="main" class="text">Apple</p>

<style>
.text { color: blue; } /* class → 10 */
#main { color: red; } /* ID → 100 */
</style>

 .text → 10 points
 #main → 100 points

100 > 10, so red wins.

💡 Why CSS Needs Specificity?


If you write:

p { color: green; }
.text { color: blue; }
#main { color: red; }

CSS must decide which one to apply.

Specificity gives a clear rule:

More specific selector (more points) overrides less specific ones.

🔥 Quick Specificity Examples


Example 1
p { color: red; } /* 1 */
[Link] { color: blue; } /* 1 + 10 = 11 */
#main { color: green; } /* 100 */
Winner → green

Example 2
.text { color: red !important; } /* 10 but with !important */
#main { color: blue; } /* 100 */

Winner → red
Because !important beats normal rules.

📌 Simple Definition
Specificity = a scoring system that decides which CSS selector has higher priority.
The selector with higher specificity overrides the others.

🔹 1. What Does “Flex” Mean?

The word “flex” in CSS means flexible — it comes from Flexible Box Layout, often just called
Flexbox.

👉 Flexbox is a modern layout system in CSS designed to easily arrange elements in rows or columns,
even when their sizes are dynamic or unknown.

In older CSS, developers used:

 float and clear (very hard to control)

 table layouts (not responsive)

 position hacks (messy)

Flexbox solves all these layout problems elegantly.

🔹 2. What is Flexbox?

Flexbox (short for Flexible Box Layout) is a one-dimensional layout system in CSS.

 “One-dimensional” means it controls either rows or columns at a time (not both).

 It helps you align, order, and space elements — without using float, table, or positioning
tricks.

🧠 Think of it like a smart container that automatically arranges its child elements to fit neatly, even if
their sizes change.
🔹 3. How to Activate Flexbox

You turn on Flexbox by applying:

display: flex;

to a parent element (the container).

Example:

<div class="container">

<div>Box 1</div>

<div>Box 2</div>

<div>Box 3</div>

</div>

.container {

display: flex;

✅ Now .container becomes a Flex Container,


and all direct children (divs inside it) become Flex Items.

🔹 4. The Two Main Parts

Term Meaning

Flex Container The parent element where you apply display: flex;

Flex Items The child elements inside the container that will be arranged automatically

🔹 5. The Two Axes

Flexbox works along two axes:

+------------------------------------------+

| cross axis (up-down) |

| |

| --> main axis (left-right) |

| [item][item][item] |

+------------------------------------------+

Axis Controlled by Description

Main Axis flex-direction The direction items flow (row or column)


Axis Controlled by Description

Cross Axis align-items The perpendicular direction

🔹 6. Important Flex Container Properties

Property What It Does Common Values

display Turns Flexbox on flex, inline-flex

flex-direction Sets the direction of the items row, column

flex-wrap Allows items to wrap to new line nowrap, wrap

justify-content Aligns items along the main axis flex-start, center, space-between

align-items Aligns items along the cross axis flex-start, center, flex-end, stretch

align-content Aligns multiple rows space-between, center

🔹 7. Flex Item Properties

You apply these to the children (items) inside the flex container.

Property Meaning

flex-grow How much an item should grow if there’s extra space

flex-shrink How much an item should shrink if space is tight

flex-basis The initial size of the item before flexing

flex Shorthand for all three above

align-self Aligns one specific item differently from others

order Changes the display order of items (without changing HTML order)

🔹 8. Basic Example

<div class="container">

<div class="box1">A</div>

<div class="box2">B</div>

<div class="box3">C</div>

</div>

.container {

display: flex; /* Activate Flexbox */


justify-content: space-around; /* Space around boxes horizontally */

align-items: center; /* Center vertically */

height: 200px;

background: #eee;

.container div {

background: #4CAF50;

color: white;

padding: 20px;

width: 100px;

text-align: center;

✅ Result:

 Boxes A, B, and C are arranged in a row,

 Evenly spaced,

 Vertically centered inside the container.

🔹 9. Common Layout Example (Header–Content–Footer)


<body>
<header>Header</header>
<main>Main Content</main>
<footer>Footer</footer>
</body>
html, body {
height: 100%;
margin: 0;
}

body {
display: flex;
flex-direction: column;
}

main {
flex: 1; /* Take all remaining space */
background: #f9f9f9;
}

header, footer {
background: #333;
color: white;
text-align: center;
padding: 10px;
}

✅ Footer stays at the bottom — even if the page is empty.

🔹 10. Why Use Flexbox?


Problem How Flexbox Helps

Hard to center elements justify-content + align-items make it easy

Responsive design needed Items automatically resize and wrap

Uneven item sizes Flexbox evenly distributes space

Complex alignment Fewer lines of CSS than float/grid

🔹 11. Flexbox vs Grid


Feature Flexbox Grid

Two-dimensional (rows and


Layout Type One-dimensional (row or column)
columns)

Navigation bars, buttons, cards, layouts in a


Best for Whole page layouts, dashboards
line

Key CSS Property display: flex; display: grid;

🧩 1. display: flex;

💡 Meaning:

This property turns an element into a Flex Container, and all its direct child elements become Flex
Items.

🧠 What it does:

 Activates flexbox layout mode.

 Gives powerful control over alignment, spacing, and order of elements.

 Replaces old layout tricks like using float or table.

🔍 Example:

.container {

display: flex;

}
Now all elements inside .container will automatically align next to each other in a row by default.

🧩 2. flex-direction: column;

💡 Meaning:

Defines how flex items are arranged — in a row (horizontal) or a column (vertical).

🧠 Values:

Value Layout Direction

row Left → Right (default)

column Top → Bottom

row-reverse Right → Left

column-reverse Bottom → Top

🔍 Example:

.container {

display: flex;

flex-direction: column;

Now the items will stack vertically, like:

Header

Content

Footer

✅ Use case: Perfect for webpage layouts — header → content → footer.

🧩 3. flex: 1;

💡 Meaning:

flex is a shorthand for:

flex: grow shrink basis;

In this case:

flex: 1;

means:

flex-grow: 1;

flex-shrink: 1;
flex-basis: 0;

🧠 What it does:

It tells the flex item to grow and take up available remaining space in the container.

🔍 Example:

.content {

flex: 1;

If you have:

<header>Header</header>

<div class="content">Main Content</div>

<footer>Footer</footer>

and the container is:

body {

display: flex;

flex-direction: column;

Then .content will expand to fill all vertical space between the header and footer — keeping the
footer at the bottom.
✅ This is how sticky footers are usually created with Flexbox.

You might also like