The World Wide Web
Required Reading for this lecture:
-
WWW: Past, Present, and Future
by Tim Berners-Lee from 1996.
Tim Berners-Lee, Hypertext, and the birth of the WWW
The World Wide Web is the brainchild of Tim Berners-Lee.
The following chronology is taken from the online article:
A Little History
of the World Wide Web
at the
[
World Wide Web Consortium]
website.
-
Mar 1989. Berners-Lee circulated a
proposal
for the development of a
distributed hypertext system for managing information at CERN,
the European Laboratory for Particle Physics.
-
Oct 1989. Berners-Lee coins the term "World Wide Web" and
begins work on a hypertext-based Graphical User Interface
for browsing the World Wide Web.
- May 1991. WWW browsers/servers released on central CERN machines.
- Feb 1993. Marc Andreessen's "Mosaic for X" browser
released by NCSA.
- Mar 1993. WWW packets total 0.1% of total internet traffic
- Mar 1994. Andreessen and colleagues leave NCSA to start
a company which would become Netscape Corporation.
During the last five years of the millenium, the WWW expanded
rapidly into the mainstream. Some of the major developments are
- Search engines. See
The Internet for Historians, Lecture 3, for a history of search
engines.
- The migration of business onto the web.
- Online product information is now widely available
- E-commerce: many companies allow one to buy products online
- Intranets: many business use local webs for managing
communication within the company and with suppliers.
- Personal Webpages and Email
- Newsgroups
- Instance messaging, chat rooms, groupware.
- High-speed home connections (DSL, Broadband)
- Meta-computing (Seti-at-home)
- The Secure Socket Layer
- Multicasting (Web radio, ...)
Research into the infrastructure
of the WWW has continued (see
the W3C list of talks for an overview of how the infrastructure
has developed).
The World Wide Web as a Concept
In a 1992 seminar (
archived here) Tim Berners-Lee,
the primary force behind the creation
of the World Wide Web, described the World Wide Web as a
"distributed heterogeneous collaborative multimedia information system."
This string of buzzwords is a fairly accurate reflection of the
current state of the web. Lets examine the
jargon one word at a time:
-
Distributed
means that there is no central repository of all the data,
rather each machine on the web contains some of the information.
-
Heterogeneous
means that it consists of a wide variety of computers.
No particular hardware and software are required to use the web.
- Collaborative means that the web is a creation of all users
of the web.
-
Multimedia
refers to the fact that the web stores not just
text, but images, movies, sounds, and other data.
-
Information system
refers to the fact that the WWW is primarily
a source of information of various sorts.
More recently the web has become a communication system
(with internet telephony), a broadcast system (with so
called internet multicasting), and a computing system
(with Java as the main computing engine).
Berners-Lee conceived of the World Wide Web
as being
a general
information system with
the following properties.
- Universal Readership -- information on the web should
be accessible to anyone on any computer anywhere in the world,
and everyone should be able to use the same browser to access
that information
- Hypertext -- the information should be organized by
placing hyperlinks in each page allowing the user to
visit related pages just by clicking on the appropriate
link.
- Searching -- users should also be able to find information
by using search engines that generate a list of pages meeting
some user-given criteria.
- Client-Server Model -- any one on the internet should
be able to create web pages as well as read web pages. All users
become publishers.
- Format Negotation -- the format of the information
stored on the web is free to evolve and browsers and servers
will first agree on the format of the data to be
exchanged before actually sending the data.
Web Services today
Many types of web services are offered today. These include
the following:
- Hypertext/Multimedia retrieval - This refers to the situtation
where the client request a page of information from the server.
The page can contain formatted text, images, sound, movies, or
other types of information. The information however is primarily
static and the only interaction the user has is through the
hypertext links and the other data controls (e.g. scrollbars for
text, play/reverse buttons for movies, etc.)
- Server-side computing (CGI-bin programming)
-- This refers to the
situation where the user not only accesses a web page stored
on a server, but also runs some program on the server.
The standard approach to server-side computing is
called CGI-bin. It is most visible in
the on-line search engines (where the computers at altavista or
hotbot will run a search for you) and in on-line commerce where
you can send your credit card number and the server will update
its database, send you the merchandise and debit your credit card.
- Client-side computing
(Java, JavaScript, Scheme programming) --
This refers to situtation where the server not only sends a
web page to the client, but also sends a program (written in Java,
JavaScript, or Scheme) and the clients computer then runs that
program. We are starting to see this sort of web program more
frequently but it is still relatively uncommon. Some
examples of client-side computing are
Image Manipulation (e.g., fancy billboard ads)
Navigators (e.g. as Sun Java site, or CS2a site)
Calculators: Mortgage, BMI, ..
General Applications (see Gamelan).
- Peer-to-Peer computing This refers to programs
which establish communication between two client computers, sometimes
with an early assist from a Server-side match-making program. Good examples
of peer-to-peer computing are the various Instant Messaging systems and the
Napster file sharing system.
The WWW as a meta-computer
With the advent of Java and other client-side computing paradigms,
the WWW can be viewed as a single, extremely large computer system.
- File System -- (read only = HTTP servers, read/write = disk services, personal disk)
- CPU -- client-side computing, cooperative/distributed computing, server-side computing
- Peripherals -- (browsers)
References:
-
CERN Information Management proposal of 1989
-
WWW: An Illustrated Seminar
by Tim Berners Lee from 1992.
-
W3 Concepts
from the 1992 online seminar by Berners-Lee.
-
A Little History
of the World Wide Web
-
World Wide Web Consortium
-
"As We May Think" by Vannevar Bush, published in
The Atlantic Monthly, July 1945. See especially,
Section 8 where he describes a future which has, for
the most part, become realized by the WWW.
-
WWW Beyond the Basics -- an online book written
by a graduate level CS class at Virginia Tech in 1996
This lecture is largely based on materials taken from the
web site of the
World Wide Web Consortium