Unit 1 home
FSWD · MERN CLASS 2 / 48 60-MIN SESSION
CLASS 2 · P 1/14PGDN NEXT · PGUP BACK
UNIT 1 · CLASS 2 OF 12 UI23PC510CS · THEORY FIRST CODE TODAY

Class 2 · 60 minutes

HTTP, web servers, and your very first HTML file.

Last class you learned who talks on the web — clients ask, servers answer. Today you learn how they talk, meet the software that does the answering, set up your own toolkit, and — before this hour ends — write a file the browser can actually open.

THE PROMISE OF THIS HOUR

By the end of this session there will be a folder on your computer, created by you, containing a real HTML file, written by you, open in your browser. Not an example on the projector — yours. Everything else today exists to make that moment make sense.

Define HTTP and explain what "stateless" means
Say precisely what a web server is — for the exam and for real
Install VS Code + Live Server, verified working
Create and open your first HTML file
TODAY, IN ORDER
01What HTTP actually is — the language of askingIDEAEXAM Q
02HTTP has no memory — the "stateless" surpriseIDEA
03One page load, five steps — the request ladderIDEA
04What a web server really isIDEAEXAM Q
05Everything you need to start building (it's a short list)IDEA
06Install VS Code + create your practice folderINSTALL
07Install the Live Server extensionINSTALL
08Your first HTML file — six lines, fully understoodCODE
09Fill-in-the-code challenge + wrap-upTRY IT

Idea one

HTTP: the language clients and servers agreed to speak.

Last class ended with a browser asking and a server answering. But asking in what language? Two machines built by different companies, on different continents, running different software — they can only converse because both sides follow one shared set of rules for how an ask and an answer must be phrased. That rulebook is HTTP.

BROWSER THE CLIENT WEB SERVER THE ANSWERER HTTP REQUEST · "SEND ME THAT PAGE" HTTP RESPONSE · THE PAGE ITSELF
One round trip. Every page, image, and video you have ever loaded travelled exactly this shape.

A protocol is just an agreed procedure — the way "hello, may I speak to…" starts a phone call, or the way a bank challan must be filled in the bank's format or the clerk hands it back. HTTP is that, for the web: a fixed format for requests going one way and responses coming back the other. Because every browser and every web server honours the same format, any client can talk to any server, anywhere, first try — no introductions needed.

THE NAME, UNPACKED · HYPERTEXT TRANSFER PROTOCOL
HYPERTEXT
Text with links in it — text that can jump you somewhere else when clicked. The defining trick of the web pages Tim Berners-Lee invented, which you met last class. That's the cargo this system was designed to carry.
TRANSFER
Moving that cargo from the server's disk to your browser — as a copy, remember, never the original. HTTP is a delivery arrangement, not a viewing arrangement.
PROTOCOL
The agreed rules both sides follow so the delivery works between total strangers. Machine etiquette, written down once, obeyed everywhere.
So that's what http:// in the address bar means — and the padlock too.

The prefix literally announces "this conversation will follow HTTP rules." And the padlock you toured in Chrome last class? That's HTTPS — the same conversation with one upgrade: everything is encrypted in transit, so anyone tapping the wire sees scrambled noise instead of your password. Same language, sealed envelope. Nearly every serious site today insists on it.

HOW THIS IS ASKED IN YOUR EXAM PAPER 4 · Q1 2 MARKS
asked as-is!

Q. Define HTTP. [2M]

Ans. — the four-move shape, then deeper than two marks demand ↓

1

HTTP (HyperText Transfer Protocol) is the standard protocol used for communication between web browsers (clients) and web servers.✓ ½

2

It defines the rules for how a client sends a request for a resource such as a web page, and how the server returns a response containing that resource.✓ ½

3

It follows a request–response model✓ ½

4

…and is a stateless protocol — each request is treated independently, with no memory of previous requests.✓ ½

Diagram — one full HTTP cycle, drawn:
BROWSER the client · asks WEB SERVER the shopkeeper · answers ① REQUEST · GET /menu.html ② RESPONSE · 200 OK + the page STATELESS: cycle ends → server forgets → next request starts from zero ①+② is ONE complete conversation — there is no ③
ONE REQUEST–RESPONSE CYCLE · BOTH ARROWS = THE WHOLE PROTOCOL · THE DASHED BOX = THE 4TH MARK-WINNING WORD

Beyond the marks — why “stateless” is worth memorising. Statelessness is not a flaw; it is why the web scales — a server that remembers nobody can serve anybody next, millions per minute. Everything that feels like memory (staying logged in, a cart that persists) is bolted on top with cookies and sessions — which is exactly where Unit 4 picks up the story.✚ depth

definition + one property = full 2 marks ✓ — the diagram and depth are course habit, not exam padding

DEPTH FOR THE CURIOUS · THE ECONOMY OF A 2-MARK ANSWER

Notice the shape of that model answer: expand the abbreviation, state what it connects, name the model, add one property. Four moves, four sentences at most. A 2-mark question pays for precision, not length — an examiner reading "HTTP is used for websites and the internet and browsing" finds nothing to award marks to. Practise compressing every definition this semester into that four-move shape and 2-mark questions become free marks.

ADD-ON · THE MAN WHO INVENTED ALL OF THIS — IN ONE YEAR

Tim Berners-Lee, 1989–91: three inventions, one working web.

The web was not assembled from pieces by many companies over decades. One physicist at CERN, trying to help scientists share documents, designed all three missing pieces together — because each is useless without the other two. You've just met one of them formally; here is the full set.

SIR TIM BERNERS-LEE · CERN, GENEVA · THE THREE INVENTIONS THAT ARE THE WEB
1

HTML

HYPERTEXT MARKUP LANGUAGE

The language for writing the documents themselves — pages whose text can carry links to other pages. Without it, there is nothing to share.

ITS JOB: the CARGO — what a page IS
2

HTTP

HYPERTEXT TRANSFER PROTOCOL

The agreed rules for moving those documents between any client and any server — the request–response conversation you just defined for 2 marks.

ITS JOB: the DELIVERY — how a page MOVES
3

URL

UNIFORM RESOURCE LOCATOR

The addressing scheme — one unambiguous name for every document on Earth, so a request can say exactly which page it wants. It's what you type in the address bar.

ITS JOB: the ADDRESS — where a page LIVES
Why all three had to arrive together: a language with no delivery system is a diary; a delivery system with no addresses can't find anything; addresses with no documents point at nothing. HTML says what, URL says where, HTTP says how — remove any one and the other two collapse. He also wrote the first browser and the first server to prove the trio worked — then gave it all away, patent-free, which is why the web belongs to everyone.
GOING DEEPER — THE EXAM SENTENCE AND THE COURSE MAP

One-line exam answer worth memorising: "Tim Berners-Lee invented the World Wide Web at CERN (1989–91) by creating its three core technologies: HTML for writing hypertext documents, HTTP for transferring them, and the URL for addressing them." Note the web ≠ the internet — the internet (Class 1) is the road network; the web is one service running on it, the way postal mail and phone calls share the same roads.

His trio is literally this course's map: HTML is Classes 3–8 — you're writing it already; URLs you use every time you type an address, and their anatomy returns with forms and servers; HTTP came today and runs beneath everything from here to Unit 5. Three inventions, one semester.

Idea two

The surprise inside HTTP: it has no memory.

Here's the property that catches everyone off guard — and that word from the exam answer: HTTP is stateless. The server treats every single request as if it has never seen you before. Even the request you sent two seconds ago? Forgotten. Compare two conversations you already know:

The canteen annaA CONVERSATION WITH MEMORY
YOU · MONDAYOne samosa, anna.
ANNAHere. That's ₹15.
YOU · TUESDAYThe usual, anna.
ANNAOne samosa coming up — and you still owe me ₹5 from yesterday!
An HTTP serverA CONVERSATION WITH A STRANGER · EVERY TIME
BROWSER · REQUEST 1Send me the menu page.
SERVERHere's the menu page.
BROWSER · REQUEST 2, SECONDS LATERNow the samosa photo, please.
SERVERHere's a samosa photo. (Who are you? Have we met? Doesn't matter — here it is.)

"The usual" works on anna because he carries state — the running memory of who you are and what happened before. An HTTP server carries none. Request 2 arrives as a complete stranger's request, even though it came from the same browser, on the same laptop, in the same second-long visit.

You have personally felt statelessness — every time a site "logged you out."

If HTTP forgets you between requests, how does any site keep you logged in from one page to the next? Short answer: it can't — not with HTTP alone. Sites bolt memory on top, by handing your browser a token it re-presents with every request, like a canteen coupon anna stamps instead of remembering your face. When that token expires or gets lost — you're suddenly "logged out." The site didn't forget you; it never remembered you. The coupon ran out.

Why would anyone design it this forgetful, on purpose?

Because forgetting is what lets the web scale. If a server had to hold a running conversation-memory for every visitor, a site with ten million visitors would drown in bookkeeping — and no two servers could share the load, because only one of them "knows" you. Stateless servers can answer any request from anyone, in any order, on any machine in the fleet. The web handles billions of users precisely because its servers are allowed to forget. It's not a flaw that was tolerated; it's the trade that made the whole thing possible.

DO THE MATHS YOURSELF · WHAT "REMEMBERING EVERYONE" WOULD COST ONE SERVER

Say remembering one visitor's conversation costs a modest 2 KB of server memory. Drag the visitors up and watch the bill — versus the stateless server, which spends the same 0 KB at every scale.

1,000VISITORS
RIGHT NOW
2 MBMEMORY IF THE SERVER
REMEMBERS EVERYONE
0 KBMEMORY THE STATELESS
SERVER SPENDS — ALWAYS

visitors × 2 KB each = 2 MB of pure bookkeeping — manageable… for now. Keep dragging.

DEPTH FOR THE CURIOUS · THE COUPON HAS NAMES

The "coupon" trick comes in two main flavours you'll hear about long before you build one: cookies — small labelled notes the server asks your browser to keep and automatically attach to every future request to that site — and tokens — signed passes the browser presents to prove who it is. In Unit 4, when you build your own server, you'll implement this yourself and statelessness will go from trivia to a design constraint you personally wrestle with.

Bonus vocabulary: engineers literally call these mechanisms "state management" — managing the memory HTTP refuses to carry.

Idea three

One page load, five steps — every single time.

You now know the language (HTTP) and its strange memory (none). Let's slow down one page load — the thing that takes under a second — into the five steps it always contains. This ladder is worth memorising: every debugging session for the rest of your career is about finding which rung broke.

BROWSER SERVER 1 You type vce.ac.in and press Enter 2 HTTP REQUEST: "GET ME THE HOME PAGE" 3 Server locates the file on its disk 4 HTTP RESPONSE: 200 OK + A COPY OF THE PAGE 5 Browser renders the copy into the page you see
Steps 1 and 5 happen on your machine. Step 3 happens on theirs. Steps 2 and 4 are the internet doing its road job.
1
You act.

Type an address, click a link, tap an app icon — every load starts with the client being told to fetch something. (Class 1's iron rule, still holding: the client always starts.)

2
The browser sends an HTTP request.

Phrased in the standard format from today's Idea One, addressed to the server that holds the site, carried across the internet's roads from Class 1.

3
The server finds what was asked for.

The web-server software looks in its folders for the requested file. Found it? Great. Not there? You get the web's most famous apology — 404 Not Found — which is simply this step failing, reported honestly.

4
The server sends an HTTP response.

A status ("200 OK" — the success code you'll come to love) plus a copy of the file. The original never leaves the server's disk.

5
The browser renders.

It reads the HTML in the copy and paints actual text, images, and buttons. Rendering is the browser's whole talent — and from next class onwards, you'll be writing the very HTML it reads.

Under one second, five steps, two machines, one protocol. Web development is the craft of controlling what happens at both ends of this ladder.

Idea four

"Web server": the term with two honest meanings.

You've been hearing "server" since Class 1. Time to sharpen it, because the industry uses the word in two ways — and your exam paper asks about one of them, twice.

Meaning 1 · The hardware

A physical computer — usually a slab in a rack in a data centre — that stays on 24/7 and is connected to the internet so it can be reached at any hour. No screen, no keyboard; just power, network, and disks full of files. When someone says "the server is in Mumbai," they mean this.

Meaning 2 · The software

A program running on that computer whose entire job is: listen for HTTP requests, find the requested file, send back the response. Steps 3 and 4 of the ladder, performed millions of times a day without boredom. When an exam asks "what is a web server," this is the star of the answer.

The shop and the shopkeeper

Class 1 called websites "shops" on the internet's roads. Refine it: the building is the hardware — it exists, it has an address, it holds the stock. But a building sells nothing. The shopkeeper — hearing "one samosa," fetching it from the shelf, handing it over — is the web-server software. Same counter, two meanings, and the second one does all the work. From now on in this course, "web server" means the shopkeeper unless we say otherwise.

HOW THIS IS ASKED IN YOUR EXAM PAPER 1 · Q2 PAPER 2 · Q1 2–3 MARKS
two papers, same idea

Q. What is a web server? [2M]  /  Define web server and give examples. [3M]

Ans. — definition first, then name names, then deeper than the marks ↓

1

A web server is software (running on an internet-connected computer) that listens for HTTP requests from clients and responds by locating and sending back the requested resources — HTML pages, images and other files.✓ 1

2

The term can also refer to the physical machine on which this software runs — say both in the exam; the nuance is a free half-mark.✓ ½

3

Examples: Apache HTTP Server — the long-standing open-source workhorse; Nginx — handles huge traffic efficiently.✓ 1

4

Microsoft IIS — for Windows systems; Node.js with Express — the one we will build with in Unit 4.✓ ½

Diagram — where the web server stands, drawn:
BROWSER 1 BROWSER 2 BROWSER 3… WEB SERVER software + the machine it runs on RESOURCES .html · .css images · files requests locates sends back THE FOUR NAMES EXAMINERS EXPECT Apache · Nginx · Microsoft IIS · Node.js+Express
MANY CLIENTS · ONE SERVER · ITS FILES — EVERY ARROW IS A SENTENCE OF THE DEFINITION

Beyond the marks — the double meaning that trips students. “Server” names a role, not a shape — the same laptop you own could run Apache tonight and be a web server; a million-rupee rack machine running nothing is just metal. Software earns the title, hardware merely hosts it — which is why point 2's half-mark exists at all.✚ depth

definition + software/hardware nuance + 2–3 named examples = full marks ✓

EXTRA DEPTH · READ ON YOUR OWN

Meet the four shopkeepers you just named.

The exam wants their names; a developer should know their faces. Ten minutes of reading, zero of it needed for today's build — but the next time an article mentions Nginx, you won't scroll past it blankly.

THE WEB-SERVER FAMILY · WHO RUNS WHAT
ApacheSINCE 1995 · OPEN SOURCE
The server that carried the early web on its back — for two decades the default answer to "what runs websites?" Free, endlessly configurable, still serving a huge share of all sites. If the web were a city, Apache laid its older neighbourhoods.
NginxSAY "ENGINE-X" · 2004
Built to answer one question: how does a single machine hold ten thousand simultaneous conversations without collapsing? Its trick is doing many things concurrently instead of dedicating a worker to each visitor. Powers many of the world's busiest sites, and often stands in front of other servers directing traffic.
Microsoft IISSHIPS WITH WINDOWS SERVER
Microsoft's shopkeeper, tightly woven into the Windows ecosystem. Common inside enterprises and government systems that standardised on Microsoft stacks. You'll meet it in job descriptions more than in tutorials.
Node.js + ExpressJAVASCRIPT · 2009 / 2010
The different one: not a finished shopkeeper you install, but a kit for writing your own — in JavaScript, the same language you'll spend Units 2 and 3 mastering. Instead of configuring someone else's server, you author its behaviour line by line. YOU'LL BUILD ONE OF THESE YOURSELF IN UNIT 4
DEPTH FOR THE CURIOUS · WHY THE MERN STACK SKIPS APACHE

This course teaches the MERN stack — MongoDB, Express, React, Node. Notice what's missing: none of the classic standalone servers. That's deliberate. In the MERN world, your server is a program you wrote in JavaScript; Express handles the HTTP plumbing while you decide what each request gets back. One language from the browser to the server — that's the stack's whole sales pitch, and by Unit 4 you'll be living it.

Idea five

Everything you need to start building. It's two things.

Students routinely assume web development begins behind a wall of installations, licences, and powerful laptops. Here is the honest, complete list of what building web pages requires — and the reassuring list of what it doesn't.

A browser YOU ALREADY HAVE THIS

Chrome, which you toured last class. It's both the audience for your work and — via the developer tools behind F12 — your inspection instrument. The renderer of step 5 of the ladder, sitting on your desktop, free.

A text editor built for code WE INSTALL IT TODAY, TOGETHER

HTML files are plain text — you could write them in Notepad. A code editor simply makes the writing humane: it colours your code so mistakes stand out, completes tags as you type, and manages whole project folders. Ours is VS Code — free, made by Microsoft, and the most widely used editor in the industry today.

Genuinely not needed to start — whatever the internet told you:
A compiler A framework A database Any account or sign-up Anything paid A high-end laptop

HTML is not compiled, not executed as a program, and not fussy about hardware — the browser just reads it, like a very fast, very literal reader. The lab machines run everything in this course comfortably, and so will almost any personal laptop from the last decade.

A browser and an editor. The entry fee to the entire profession is two free downloads.

Install guide 1 of 2 · Do this along with the page

Install VS Code — carefully, together, once.

WHAT · WHY · HOW LONG

What: Visual Studio Code ("VS Code"), your code editor for all 48 classes and all 12 labs. Why now: your first HTML file is twenty minutes away and it deserves a proper home. Time: about five minutes on lab Wi-Fi. Follow the numbered dots — every click that matters has one.

This is a drawn illustration of the real page, matched to its current layout — colours simplified, positions faithful. The real site may shuffle its wording; the big download button is always front and centre.

1
Type the address yourself: code.visualstudio.com

Into the address bar — pointer ① — not into a search engine. Searching "vs code download" surfaces look-alike sites that bundle junk. Going straight to the address is a professional habit worth starting today: you know where the shop is; don't ask a stranger for directions.

2
Click the big download button — pointer ②.

The site detects your operating system and offers the right build (Windows in the lab). The file is roughly 90–100 MB; it lands in your Downloads folder.

3
Open the downloaded installer.

Double-click VSCodeUserSetup-…exe in Downloads. Accept the licence agreement, then keep clicking Next — the defaults are right for us, with one screen worth a pause, shown below.

4
On "Select Additional Tasks": make sure Add to PATH stays ticked, then Install.

It's ticked by default — just don't untick it. This one checkbox lets other tools find VS Code later in the course, and its absence is a classic source of mysterious errors weeks from now. Tick, Install, wait for the green bar, Finish.

5
On a Mac at home?

The same page gives you a .zip. Open it, then drag the Visual Studio Code app into your Applications folder — that drag is the installation. Launch it from Applications like any other app.

You'll know it worked when: VS Code launches and greets you with a Welcome tab — a dark window with "Start" and "Recent" lists. That's success; you can close the welcome tab. (Extra proof for the curious: it also now answers to code --version typed in a terminal — a trick that matters in Unit 4.)

One more ritual while we're here: a home for your practice files.

Every file you create in this course will live in one tidy place — not scattered across the desktop like everyone's first semester of code. Sixty seconds, once, and "where did I save that?" never happens to you.

1
Go to your desktop.

Press Win+D — every window minimises instantly. (Same keys bring them back.)

2
Right-click empty desktop space, choose New, then Folder.

The menu below appears; the path to follow is highlighted. A folder called "New folder" appears with its name ready to be typed over.

3
Name it exactly: fswd-practice

All lowercase, one hyphen, no spaces — then press Enter. The naming rules below aren't fussiness; they're the first professional convention of this course.

You'll know it worked when: an empty folder named exactly fswd-practice sits on your desktop. Empty is correct — its first resident arrives in a few minutes.
DEPTH FOR THE CURIOUS · WHY LOWERCASE-AND-HYPHENS?

Because folder names become parts of web addresses. A space in a name turns into the ugly %20 in a URL — you've seen it in broken links. And most web servers run on Linux, where capital letters matter: Menu.html and menu.html are two different files — a site that works on your Windows laptop can 404 the moment it's uploaded. All-lowercase-with-hyphens sidesteps both traps forever. Every professional repo you'll ever open is named this way.

Install guide 2 of 2 · Two minutes

One extension: Live Server.

WHAT IT DOES — AND WHAT IT SECRETLY IS

Extensions are add-ons that teach VS Code new tricks. Live Server adds the best one for beginners: it shows your page in the browser and auto-reloads it every time you save — no manual reload, ever. And quietly, it is exactly what its name says: a tiny real web server, running on your machine, doing steps 3 and 4 of today's ladder for an audience of one. From next class, today's theory literally runs on your laptop.

Drawn illustration of the Extensions view, faithful to where things sit in the real editor. The publisher name matters: pick the one by Ritwick Dey — it's the overwhelmingly popular original.

1
Open the Extensions panel — pointer ①.

Click the icon of four squares (one drifting away) in the left rail, or press Ctrl+Shift+X. The rail is VS Code's main corridor; this door leads to its add-on shop.

2
Search: live server — pointer ②.

Type it in the search box at the top of the panel. Several similarly named results appear; the one you want says Ritwick Dey underneath.

3
Click its blue Install button — pointer ③.

A few seconds of spinner, then the button flips to a gear icon. Done — no restart needed.

You'll know it worked when: a small "Go Live" button appears in the blue status bar at the bottom-right of the VS Code window. Don't click it yet — it earns its moment next class, when there's a project folder open for it to serve.
DEPTH FOR THE CURIOUS · THE ADDRESS IT WILL GIVE YOU

When Live Server runs, your address bar will read something like 127.0.0.1:5500. That first number is the internet's strangest address: it always means "this very machine" — the loopback address, where your computer talks to itself. The :5500 is a port: one numbered door on that machine, out of 65,535 available. Your browser (client) will knock on door 5500 of your own laptop, and Live Server (server) will answer from inside the same laptop. The full client–server ladder, five centimetres of travel.

The moment

Your first HTML file. Six lines.

Tools installed, folder waiting. Now the promise gets kept. Open VS Code, and let's write the smallest complete web page that exists — then read every line of it like it matters, because it does.

MINI PROBLEM · HELLO.HTML
PROBLEM
Write the smallest complete web page that exists — six lines — and open it in your own browser. The promise of this hour, kept.
REQUIRE­MENTS
  • <!DOCTYPE html> as line 1 — the declaration, always first, always exactly this.
  • An <html> pair wrapping everything, a <body> pair wrapping the visible part.
  • One heading: <h1>Hello, Web!</h1> — that exact text, opened and closed.
  • Saved as hello.html inside your desktop fswd-practice folder.
EXPECTED OUTPUT
Chrome shows one big bold headline — Hello, Web! — and nothing else. Six lines in, one loud headline out.
hello.html — VS CODE
1<!DOCTYPE html>
2<html>
3<body>
4 <h1>Hello, Web!</h1>
5</body>
6</html>
file:///C:/Users/student/Desktop/fswd-practice/hello.html

Hello, Web!

What Chrome renders from those six lines. Six lines in, one loud headline out.
SAVE THIS AS — EXACTLY
FOLDERfswd-practice/ — the desktop folder you just made
FILENAMEhello.html — lowercase, and the .html ending is the whole point
EDITORVS Code: File menu, New File, type it in, then Ctrl+S to save into the folder
VIEW ITFind the file in your folder, right-click it, choose Open with, then Google Chrome. (Live Server gets its debut next class.)
READ IT LIKE A DEVELOPER · LINE BY LINE
<!DOCTYPE html>
A declaration, not a tag: "browser, read everything below as modern HTML." Always line one, always exactly this.
<html> … </html>
The outermost container — the covers of the book. Every other line lives between these two.
<body> … </body>
The visible part: only what sits inside the body appears in the browser window.
<h1> … </h1>
Heading, level one — the most important headline on the page. The browser renders it big and bold because of what it means, not because we asked for big letters.

Notice the pattern already: tags come in pairs — an opener like <body> and a closer like </body> with a slash — and pairs sit inside other pairs, never overlapping. That single idea, meaning marked out by nested pairs, is the entire grammar of HTML. Next class we give it a proper name and a proper skeleton.

DEPTH FOR THE CURIOUS · WAIT — WHERE WAS THE SERVER?

Sharp catch: you opened this page and no server was involved. The address bar proves it — it says file:///, not https://. Your browser read the file straight off your own disk: steps 1 and 5 of the ladder with the middle three skipped, because the file was already here. That's fine for a first hello — but it's also why your page is invisible to every other device on Earth. Making the middle steps happen — a server, an address, anyone able to visit — is exactly where this course is headed.

Your turn

Make the page yours: one missing line.

THE TASK · 5 MINUTES

Below is your hello.html grown by one line — except the new line is blank. Fill it so the page shows, under the big greeting, a smaller line with exactly this text: K Student · Roll No 160123733001 — type it character-for-character so your render matches the answer sheet's browser preview exactly (swap in your own name and roll number only after it matches). You haven't been taught the tag you need — that's deliberate. You know <h1> is "heading, level one"… so take one guess at what a slightly-less-important heading might be called. Type your line into the real file in VS Code, save, and re-open it in Chrome.

MINI PROBLEM · HELLO.HTML, GROWN BY ONE LINE
PROBLEM
Your six-line page gains a seventh: a smaller line under the big greeting, using a tag you haven't been taught — guess it from the pattern you already know.
REQUIRE­MENTS
  • Fill line 5 only — every other line stays exactly as it is.
  • The new line's text, character for character: K Student · Roll No 160123733001.
  • It must render smaller than the h1 — pick the tag by its meaning (a slightly-less-important heading), not by styling.
  • Open your tag and close it — same name, one slash, like line 4 does.
EXPECTED OUTPUT
Hello, Web! big and bold, and beneath it K Student · Roll No 160123733001 — noticeably smaller, still bolder than plain text.
hello.html — ONE LINE MISSING
1<!DOCTYPE html>
2<html>
3<body>
4 <h1>Hello, Web!</h1>
5 <- your line goes here: the text “K Student · Roll No 160123733001”, as a smaller heading
6</body>
7</html>
file:///C:/Users/student/Desktop/fswd-practice/hello.html

SAMPLE OUTPUT — YOUR FINISHED FILE MUST RENDER EXACTLY THIS

Hello, Web!

K Student · Roll No 160123733001

STUCK? TWO HINTS, SPEND THEM SLOWLY

Hint 1: If level-one importance is h1, the naming scheme for level-two importance is not a wild guess away. Headings go down to level six.

Hint 2: Whatever tag you open, close — same name, one slash, like the h1 on line 4 does. If your page shows raw angle brackets as text, look at your closing tag first.

Answer sheet

The line, revealed.

Try your guess in the real file first — a wrong guess that renders teaches more than a right answer that's read.

hello.html — COMPLETE
1<!DOCTYPE html>
2<html>
3<body>
4 <h1>Hello, Web!</h1>
5 <h2>K Student · Roll No 160123733001</h2>
6</body>
7</html>
file:///C:/Users/student/Desktop/fswd-practice/hello.html

Hello, Web!

K Student · Roll No 160123733001

Smaller than the h1, bigger than plain text — importance level two, rendered as such.
Grade your own attempt — three checks:
  1. Did you write a matching pair — <h2> opened and </h2> closed? If you forgot the slash, everything after your line probably went huge — congratulations, you've just experienced the dangling-tag bug, and you're now vaccinated against it.
  2. Is your line inside the body pair? A line placed after </body> may still display today, but it's outside the visible part by the rules — browsers just forgive it. Precision now saves debugging later.
  3. Did the h2 come out smaller than the h1 — without you specifying any size? Sit with that: you declared meaning ("second-level heading") and the browser chose the look. That inversion — meaning first, appearance follows — is the deepest habit in this entire course, and you just used it correctly on your first day of writing code.
EXTRA DEPTH · READ ON YOUR OWN

Why the file must end in .html

The most common Class-2 casualty, in every batch: a perfectly written page that opens as plain text or refuses to open at all. The culprit is almost always the file's ending. Three files that look similar — and behave nothing alike:

hello.html RENDERS AS A PAGE

The .html ending tells Windows and the browser: "this is a web page — render it." Tags become headings. This is yours.

hello.html.txt THE NOTEPAD TRAP

Saved from Notepad, which quietly appends .txt — and Windows hides known endings, so it still displays as "hello.html". The browser shows your tags as raw text. Maddening, unless you know the trick below.

hello.docx NOT EVEN TEXT

A Word file is not plain text — it's a compressed bundle of formatting data. Browsers can't render it as a page at all. Word is for essays; VS Code is for code. Never the twain.

The five-second diagnosis every senior knows

Open File Explorer, open the View menu, tick File name extensions. Windows stops hiding endings forever, and "hello.html" that's secretly "hello.html.txt" is exposed on sight. Do this once on your laptop after class; it's permanent, and it converts the most confusing beginner bug into a thing you spot across the room. (VS Code users mostly never hit this trap — one more quiet reason we installed a real editor today.)

DEPTH FOR THE CURIOUS · EXTENSIONS ARE A PROMISE, NOT MAGIC

The ending doesn't transform the contents — hello.html and hello.txt can contain byte-for-byte identical text. The extension is a label that tells software how to treat the file. Rename a .html to .txt and back: nothing inside changes, only the treatment. That's also why renaming a .docx to .html can't make Word output into a web page — the label changed, the contents didn't keep the promise.

Closing the hour

What you can now do — that you couldn't an hour ago.

Define HTTP in exam-ready form — and unpack all three words of its name.
Explain "stateless" with the canteen-anna contrast, and say why the web was designed to forget.
Walk the five-step ladder of any page load — and name the rung that breaks when you see a 404.
Define a web server both ways — hardware and software — with four named examples.
Work inside VS Code with Live Server installed and verified.
Write, save, and open an HTML file — and explain every one of its lines.
Files created today: 1

fswd-practice/hello.html — six lines that grew to seven, written by you, rendered by your browser. Keep it; you'll be oddly fond of it by Unit 5. Next class the real project begins — our campus food-court app, Poshtik Campus, gets its first folder and its first page, served by that "Go Live" button you installed today.

YOUR FOLDERS AFTER TODAY — CHECK BEFORE YOU LEAVE
Desktop\fswd-practice\ <- born today · your sandbox for the whole course
└─ hello.html <- your first page · 7 lines

GIT? Not yet — and that's correct. fswd-practice\ is scratch paper: it will never be a git repository, today or any day. Git enters your life in Lab 1, watching one folder only — poshtik-campus\, the real project. Sandbox files get made, broken and thrown away freely; that freedom is the whole point of having a sandbox.

Before next class — three 15-minute pieces of homework:

SPOT HTTPS IN THE WILD

Visit five sites you use daily and check the address bar of each: padlock or no padlock, https or http? Find even one plain-http site if you can — they're nearly extinct, and now you know exactly what went extinct and why.

BREAK IT ON PURPOSE

In your hello.html, delete the slash in </h1>, save, reload. Watch what the page does. Put the slash back, fix the world. Breaking code deliberately, in a file that can't hurt anything, is how fear of breaking code fades away.

EARN A 404

Go to any real site and edit its address to a page that can't exist — vce.ac.in/samosa, say. Read the 404 page you get and narrate the ladder: which step just failed, and which machine told you so?

Yesterday you learned who talks. Today you learned how — and wrote your first words in the conversation.

EXIT TICKET · ANSWER BEFORE YOU LEAVE

Two sentences: (1) What does it mean that HTTP is stateless? (2) When you opened hello.html in Chrome today, why was no web server needed — and what in the address bar proves it?