1st Principles

24 steps · About 22 hours

How the Internet Works: Atoms to Apps

Build a causal chain from shared wires to the page in your browser, without memorizing acronym soup.

A guided sequence through the internet's essential abstractions: packets and layers, local delivery, addressing and routing, network feedback, ports, UDP and TCP, naming, cryptography, HTTP and HTTPS, web state, APIs, and the browser. Each step rests on the last. Read it in order or use the sequence as a reference. Lessons are written as short chapters, not stubs.

  1. 01Not started
    First Principles

    Set the habit: strip slogans, keep mechanisms.

    Reason from irreducible truths instead of analogies, slogans, or inherited procedures, especially when learning technical systems like networks.

    Open
  2. 02Not started
    Abstraction

    Learn to change altitude without getting lost.

    Hide details that do not matter for the current question so you can think at the right altitude, and know when to drop altitude because the abstraction leaked.

    Open
  3. 03Not started
    Packets

    Why networks ship bite-sized units.

    Why networks chop data into small, independently routable pieces instead of one continuous stream, and what that choice forces every higher layer to confront.

    Open
  4. 04Not started
    Network Layers

    Stack contracts so each problem is solved once.

    Why the internet is built as stacked contracts (link, internet, transport, application) so each problem can be solved once and reused, and where those contracts deliberately leak.

    Open
  5. 05Not started
    Link Layer

    Neighbor delivery with frames and MAC addresses before IP.

    How neighboring machines on a local segment deliver frames using MAC addresses, shared media rules, and link-specific framing before IP routing enters the picture.

    Open
  6. 06Not started
    IP Addresses

    Coordinates for locating interfaces.

    Numeric locators that identify network interfaces for routing: how address structure, prefixes, and public versus private space make a global map computable.

    Open
  7. 07Not started
    Routing and Forwarding

    How each hop chooses the next hop.

    How packets find a path: local forwarding decisions at each hop, guided by routes learned or configured across independently operated networks.

    Open
  8. 08Not started
    ICMP

    Errors, ping, traceroute, and path MTU feedback.

    The internet's control and error messaging companion to IP: how hosts and routers report problems, probe reachability, and discover path limits.

    Open
  9. 09Not started
    Ports and Sockets

    Demultiplex apps on a host; the socket as the programmer's handle.

    How transport-layer port numbers multiplex many conversations on one host, and how the socket abstraction turns those numbers into a programming interface.

    Open
  10. 10Not started
    NAT and Private Networks

    Private space and translation at the edge.

    How private address spaces and network address translation stretch IPv4 and hide internal topology, at the cost of true end-to-end addressing.

    Open
  11. 11Not started
    UDP

    Minimal datagrams when you want control.

    A minimal transport: multiplex apps with ports, deliver datagrams, and leave reliability, ordering, and congestion response to the application when that is the right tradeoff.

    Open
  12. 12Not started
    TCP/IP

    Reliable streams on an unreliable network.

    The internet's core contracts: IP for addressing and forwarding, TCP for reliable byte streams on top of an unreliable network, including handshake, ACK, and windowing mechanics.

    Open
  13. 13Not started
    Congestion Control

    Shared links survive only if senders back off.

    How endpoints detect a busy network and slow down so shared links do not collapse into congestive failure, including classic TCP dynamics and modern signal debates.

    Open
  14. 14Not started
    DNS

    Human names meet machine addresses.

    The distributed naming system that turns human-readable names into machine-routable addresses and other records, via hierarchy, caching, and delegation.

    Open
  15. 15Not started
    Encryption

    Primitives for secrecy, integrity, authenticity.

    Transforming data so only holders of the right secrets can read or forge it: confidentiality, integrity, and authenticity on public networks.

    Open
  16. 16Not started
    HTTP

    The web's request-response language.

    The application protocol of the web: structured requests and responses for transferring documents and calling APIs, including methods, status codes, and caching metadata.

    Open
  17. 17Not started
    HTTPS and TLS

    HTTP inside an authenticated, encrypted channel.

    How HTTP rides inside an authenticated, encrypted transport: certificates, handshakes, and what the lock icon actually promises.

    Open
  18. 18Not started
    Cookies and Sessions

    Layer state onto a stateless protocol.

    How the web layers state onto a largely stateless protocol: cookies as client-stored tokens, sessions as server-side memory keyed by those tokens.

    Open
  19. 19Not started
    HTML, CSS, and JavaScript

    Structure, presentation, behavior.

    The three native web languages: structure (HTML), presentation (CSS), and behavior (JavaScript), and why separating them remains a useful discipline.

    Open
  20. 20Not started
    Browsers

    The universal client that ties it together.

    The universal web client: how browsers fetch, parse, sandbox, and render, tying DNS, TLS, HTTP, and HTML/CSS/JS into one user-facing machine.

    Open
  21. 21Not started
    Client-Server

    Zoom out: who asks and who answers.

    The dominant networked application pattern: clients initiate requests, servers listen and respond, and responsibilities split across an asymmetric relationship.

    Open
  22. 22Not started
    REST APIs

    Resources and representations over HTTP.

    Resources and representations over HTTP: designing networked interfaces around nouns, uniform methods, and evolvable contracts rather than ad-hoc RPC soup.

    Open
  23. 23Not started
    Caching and CDNs

    Copies close to users, kept just fresh enough.

    How copies of content near users cut latency and origin load, and how cache validators and CDNs keep those copies just fresh enough.

    Open
  24. 24Not started
    Causal Models

    Close the loop: debug with mechanisms, not vibes.

    Explain systems with mechanisms and counterfactuals: what would change if this part failed, so debugging becomes structured rather than vibes-based.

    Open