origins of the web
march, 1989, tim berners-lee writes a short proposal for a networked information project he'd like to embark on at cern in switzerland (cern is the european laboratory for particle physics). he also writes a related paper on hypertext. well worth reading a decade later, his skeletal outline explains the key concepts upon which the web is built: content (ideally universally readable/translatable), links (hypertext), a client viewer (browser), and server app (httpd) that delivers the content.
- some nuggets from the above papers:
"HyperText is a way to link and access information of various kinds as a web of nodes in which the user can browse at will."
"The current incompatibilities of the platforms and tools make it impossible to access existing information through a common interface, leading to waste of time, frustration and obsolete answers to simple data lookup."
"A program which provides access to the hypertext world we call a browser. When starting a hypertext browser on your workstation, you will first be presented with a hypertext page which is personal to you : your personal notes, if you like. A hypertext page has pieces of text which refer to other texts. Such references are highlighted and can be selected with a mouse (on dumb terminals, they would appear in a numbered list and selection would be done by entering a number). When you select a reference, the browser presents you with the text which is referenced: you have made the browser follow a hypertext link."
"The texts are linked together in a way that one can go from one concept to another to find the information one wants. The network of links is called a web."
"The texts are known as nodes. The process of proceeding from node to node is called navigation. Nodes do not need to be on the same machine: links may point across machine boundaries. Having a world wide web implies some solutions must be found for problems such as different access protocols and different node content formats."
"We should work toward a universal linked information system, in which generality and portability are more important than fancy graphics techniques and complex extra facilities."
may, 1991, the www environment is deployed on most machines at cern. several months later tim declares prophetically that "sgml syntax is not beautiful".
november, 1992, the w3c lists 26 www servers as being reliably online.
march, 1994, marc andreeson, the creator of an early web browser called mosaic, leaves ncsa to create "mosaic communications corp", which would become netscape.
october, 1994, w3c is formed, proclaiming its goal to "lead the web to its full potential". the w3c becomes the international organization responsible for maintaining the standards which govern the technical implementation of the web (eg. html, xml, css, dhtml, and http (which was originally written in part by berners-lee, but is now a joint effort by the w3c and the ietf)).
if you're interested in more of this stuff, go read weaving the web, tim's book on the history of the web, available sept. 1999.
how does it work?
- data transfer infrastructure: the world wide web is only one application of the internet, the largest open global network of computers. all networked applications (email, ftp, www) rely fundamentally on data (information) transfer, that is, you have some content you want to access or distribute.
- content: many formats of content, only some suitable for transfer/viewing over the web. the foundation format of almost all web content is html. other formats usually piggy-back on html. a web page can be one file or many files.
- client: most users of the web simply want to access content. they need an app that can receive incoming content and
display it. this kind of app is called a client. (eg. strictly speaking, an email program is considered a client.) many kinds of possible web clients (real player, winamp), but most popular is a web browser (displays html, plus many other common media formats). client cache: the location data is temporarily stored while it is displayed in your browser.
- server: so where does a web page come from? servers, the host computers that act as storage and distribution centres for web content waiting to be delivered to web clients. a web server is a 24-hour communication application that works something like an automated telephone switchboard. it listens for calls ("requests") placed by people using web browsers asking for web pages. once a request is made by a browser, the server checks to see if it can find the requested page. if it can find the page, the server sends it back to the browser and the browser displays it. if the server can't find the page, or there is some other problem, it sends back an error response in the form of a numeric code. some responses are: "404--the web server can't find the page you asked for", "403--you're not allowed to access the page you asked for without authorization".
servers:
- are actual computers physically hooked up to the internet via ethernet, cable, telephone line, etc.
- run software that listens for requests for web content and returns messages and data.
- can perform tasks (run programs/scripts, query databases) before responding to clients.
- can cease functioning without affecting the stability of the rest of the web/internet.
- protocol: the language used by the a client and server to negotiate the transfer of data. web: http (hyper-text transfer protocol), file transfer: ftp (file transfer protocol), transmission control protocol/internet protocol (tcp/ip...tcp disassembles data into packets, ip handles addressing and routing of the packets).
some examples
- the go network, disney's online empire
- ebay, online goods trading by users
- the gap, clothing retailer goes online with authority
- amazon.com, an entirely virtual bookstore
- epinions.com, consumer product rating community
- goultralightsgo, art by naoki mitsuse
- snarg, communimage, or jodi.org, web art
- dmoz, netscape's open web directory project
- lots more in my bookmarks
the future
- presentational sites vs interactive sites (guiding the experience instead of dictating it)
- interactive tv (once the bandwidth gets there)
- tim's dreams (www8 conference):
- universal data. anything points to anything.
- technological independence (hardware/software/interface/language/culture)
- collaborative authoring: anything links to anything. make a link if you see a connection.
- self-describing documents (means for reading format is encoded with data)
- useful identifiers on *everything* (make vr model from any camera shots)
(copyright colin moock, fall 1999)