Most developers learn the web backwards.

They learn React, or Django, or Express, and only later—usually during a production incident—do they discover what DNS actually does, why a 301 and a 302 behave differently, or what the browser is doing between the request and the painted page.

I found a curriculum that teaches the layer underneath first. It's on KandZ Tuts, and it's 10 chapters on what happens when you type a URL and press Enter—no prior networking knowledge assumed.

Here's the breakdown.

Chapter 1 — How the Internet Works

The largest engineered system humans have built: no central controller, no master switch, no single point of failure. This chapter establishes the mental model before any protocol details.

Chapter 2 — IP Addresses and MAC Addresses

Every device needs two identities, and they serve different purposes. A MAC address is a permanent hardware identifier. An IP address is a software-assigned, changeable location. Understanding why both exist is the foundation for everything that follows.

Chapter 3 — What is a Domain Name

A domain is not a website, not an email address, and not a server. It is a name that maps to an IP address. This distinction is where most beginners get confused.

Chapter 4 — Anatomy of a URL and URI

Every link and API endpoint is a structured string with defined components. Knowing what each part does is the difference between treating a URL as a magic string and treating it as an address you can reason about.

Chapter 5 — What is Web Hosting

Something has to answer when you press Enter. That something is a server, and this chapter explains what it actually is.

Chapter 6 — DNS and How It Works

The global lookup service that translates names into destinations. This explains the delay you see before a page starts loading.

Chapter 7 — What is HTTP

The language the browser and server speak. The rules that define how a client asks for a document and how a server responds.

Chapter 8 — Basic HTTP Requests and Responses

The structure of those messages: what each part does, what order it appears in, and why the format matters.

Chapter 9 — Browsers and How They Work

A browser is not a single program. It is a collection of processes and threads—one for the UI, one for the network, one for rendering—each responsible for a different part of the job.

Chapter 10 — Inspecting Networks with Browser DevTools

Every page load is an invisible conversation. DevTools makes it visible: the requests, the headers, the timing, the reason one resource arrived instantly and another took two seconds.

Why the Ordering Matters

The curriculum does not start with HTTP.

It starts with the internet as a system, then identities (IP and MAC), then names (domains), then addresses (URLs), then hosting, then DNS, and only then HTTP. That sequence mirrors the actual dependency chain: you cannot understand DNS without understanding IP addresses, and you cannot understand HTTP without understanding what a URL is.

Most tutorials invert this. They start with GET /index.html and work backward. This one works forward, which is why the mental model holds together.

The DevTools Chapter Is the Payoff

Chapter 10 is where everything connects.

After nine chapters of theory, you open the Network tab and see the DNS lookup, the TCP connection, the request headers, the response status, and the timing waterfall. The abstract concepts become observable. That's the moment the curriculum is designed to produce.

Who This Is For

  • Complete beginners: No prior networking knowledge assumed. The emphasis is on mental models over configuration.
  • Self-taught developers: If you learned to build web apps without learning what happens below the framework, this is the gap-filler.
  • Anyone who has debugged a production issue and guessed: If you've added a Cache-Control header without knowing what it does, or wondered why a CORS error appeared, this is the foundation that makes those concepts legible.

The Link

Internet Beginner — KandZ Tuts

Free, no signup, 10 chapters.

If you've been building for the web without understanding the web, this is the most direct path to fixing that.

What networking topics do you wish had better free resources? Let me know in the comments.