The World Wide Web: History, Architecture, and Net Neutrality

Distinction Between the Internet and the World Wide Web

  • Conceptual Difference: While the terms "Internet" and "World Wide Web" are often utilized interchangeably in colloquial language, they represent different layers of technology.
  • The Internet: Defined as the underlying "plumbing" or infrastructure. It consists of the wires, signals, switches, packets, routers, and protocols that facilitate data conveyance.
  • The World Wide Web (Web): A massive, distributed application that runs on top of the internet. It is akin to other applications like Skype, Minecraft, or Instagram that utilize the internet's infrastructure to function.
  • Infrastructure: The Web consists of millions of servers globally and is accessed via a specialized program known as a web browser.
  • Web Page: The fundamental building block of the Web. It is a document containing content and references to other documents.
  • Hyperlinks: Clickable text or images that allow a user to "jump" to another page. This interconnected structure of information is what gives the "Web" its name.
  • Conceptual Origin:     * Vannevar Bush (1945): Conceptualized the value of hyperlinked information in an article describing a hypothetical machine called the "Memex."     * Associative Indexing: Bush described a process "whereby any item may be caused at will to select another immediately and automatically."     * The Core Process: Bush emphasized that "The process of tying two things together is the important thing… thereafter, at any time, when one of those items is in view, the other [item] can be instantly recalled merely by tapping a button."
  • Hypertext: The term for text containing hyperlinks, which is the primary format of modern web pages.

Web Addressing and Navigation Protocols

  • URL (Uniform Resource Locator): A unique address required for every hypertext page. An example provided is thecrashcourse.com/courses.
  • Connectivity Process:     1. DNS Lookup: The computer takes a domain name (e.g., thecrashcourse.com) and retrieves the corresponding IP address.     2. TCP Connection: Using the IP address, the web browser opens a Transmission Control Protocol (TCP) connection.     3. Port 80: The standard port number for web servers is port 8080.
  • HTTP (Hypertext Transfer Protocol): The protocol used to request and transfer hypertext pages.     * HTTP 0.9 (1991): The first documented version which featured only one command: GET.     * Request Example: A browser sends the raw ASCII command GET /courses to the server.     * Server Response: The server replies with the requested hypertext, which the browser renders on the screen.
  • HTTP Status Codes: Added in later versions to prefix sent hypertext.     * Code 200: Means "OK" — the page has been found and is being delivered.     * 400-series Codes: Indicate client errors.     * Code 404: The error indicating a page does not exist.

Web Content and HTML

  • Data Encoding: Hypertext is stored as plain text, using encoding standards such as ASCII or UTF-16.
  • HTML (Hypertext Markup Language): Developed to "mark up" plain text files with hypertext elements.
  • HTML Version 0.a (1990): Contained only 1818 commands.
  • Common HTML Tags:     * <h1>...</h1>: Indicates a first-level heading.     * <a>...</a>: An anchor tag used for hyperlinks, combined with an href attribute (Hyperlink Reference) to specify the destination.     * <h2>...</h2>: Indicates a second-level heading.     * <ol>...</ol>: Defines an ordered list.     * <li>...</li>: Defines a specific list item.
  • Modern Web Development:     * HTML5: The current version, containing over 100100 tags for images, tables, forms, and buttons.     * CSS (Cascading Style Sheets): Used for styling and layout.     * JavaScript: Embedded into HTML to provide interactive and advanced functionality.

The History and Evolution of Web Browsers

  • Tim Berners-Lee: Created the first web browser and web server in 19901990 while working at CERN in Switzerland. Over a two-month period, he established three fundamental standards: URLs, HTML, and HTTP.
  • Public Release: The software was released to the public in 19911991, marking the birth of the World Wide Web.
  • Mosaic (1993): Created by a team at the University of Illinois at Urbana-Champaign.     * It was the first browser to embed graphics directly alongside text (previous browsers used separate windows for graphics).     * Introduced features like bookmarks and a Graphical User Interface (GUI).
  • 1990s Proliferation:     * Browsers: Netscape Navigator, Internet Explorer, Opera, OmniWeb, and Mozilla.     * Servers: Apache and Microsoft’s Internet Information Services (IIS).     * E-commerce: Major sites like Amazon and eBay were founded in the mid-19901990s.

Content Discovery: Directories and Search Engines

  • Web Directories: Early human-edited lists of links.     * Example: "Jerry and David's guide to the World Wide Web," which became Yahoo in 19941994.
  • Search Engines: Developed because directories became unwieldy as the web grew.
  • JumpStation (1993): Created by Jonathon Fletcher at the University of Stirling. It used three components:     1. Web Crawler: Software that follows links across the web to find new pages.     2. Index: A database recording text terms found on the crawled pages.     3. Search Algorithm: A tool to consult the index when a user enters a query.
  • Early Ranking Metrics: Initially based on simple metrics like the frequency of a search term on a page, which led to users "gaming the system" by repeating keywords unnecessarily.

The Google Search Algorithm

  • Origin: Started as a research project called "BackRub" at Stanford University in 19961996. It spun out into Google in 19981998.
  • Innovation: Instead of trusting on-page content, the algorithm evaluated how other websites linked to a page.
  • Backlinks: The number of links from other websites, particularly reputable ones, served as an indication of the page's quality and authority. Spam pages with repeated keywords would typically have no backlinks, whereas authoritative sources would have many.

The Net Neutrality Debate

  • Definition: The principle that all packets on the internet should be treated equally regardless of content, sender, or receiver. Data should travel at the same speed and priority (e.g., an email vs. a video stream).
  • Arguments in Favor of Net Neutrality:     * Prevention of Exploitation: Prevents ISPs (Internet Service Providers) from acting as gatekeepers or setting up "tolls."     * Innovation: Ensures small startups aren't at a disadvantage compared to large companies (like Netflix or Google) that could afford to pay for premium delivery.     * Fair Competition: Prevents ISPs from prioritizing their own services over competitors. For example, Comcast (which owns NBC and The Weather Channel) could theoretically prioritize its own streams while throttling (intentionally slowing) others.
  • Arguments Against Net Neutrality:     * Technical Efficiency: Some data types require higher priority for user experience (e.g., a Skype call requires real-time speed, whereas an email delay of a few seconds is negligible).     * Market Forces: Opponents argue that competition among ISPs would discourage bad behavior, as customers would leave providers that throttle popular sites.