The Web took off in 1993.
The Internet is older than the Web.
The Web provided the unifying way to access sites on the Internet.
It is instructive to consider what the Web did to the Internet.
Many archives of data and programs existed on the Internet before the Web.
You accessed them as follows:
ftp
Run the ftp program.
c ftp.cs.ucla.edu
Connect to some ftp site that you know of.
There is no easy way of bookmarking
or linking to these sites.
People have to build and maintain their own lists
of sites and passwords.
enter userid "anonymous"
enter password (your full email address)
Typing or Pasting all this in every time was VERY tedious.
ls
List files. Plain format, showing list of filenames.
Little or no idea what is in these files.
get index.txt
Get a master file that will explain
what is in the archive.
You have to read it offline and then find what you are
interested in - say a collection of Shakespeare plays.
cd Shakespeare
Go into a sub-category.
get index.txt
Find out what is in there.
get macbeth.txt
Finally get what you are looking for (possibly).
All these files you get end up in random places
on your disk. They are not all stored in a place
like the browser cache, periodically wiped.
Instead, you have to manage them all.
With this user interface, isn't it no wonder that the Internet
never took off!
In fact, there were even worse interfaces.
Some archives were accessible only by commands
embedded in email messages!
There was lots of information and resources online before the Web,
but it simply wasn't "browsable".
You couldn't casually follow links, and move on.
You had to invest lots of effort in everything you looked at.
So it was only used by those who were basically interested
in the technology.
Mass adoption had to wait for a "browsable", "memory-free" user interface.
1989 - The Web
Tim Berners-Lee
invents the idea of the Web in 1989,
and builds early software to make it work.
He combines all of the above complexity in a single address:
ftp://ftp.cs.ucla.edu/index.txt
And crucially, he combines it with the already-existing concept of
hypertext.
So the above address returns a "page" containing other addresses.
This turned out to be the right idea to unify navigation on the Internet.
But it needed the right software to make it take off.
The Mosaic web browser
- Perhaps the most revolutionary program of all time.
Made
the Web easy to use, and mouse-driven.
We start with an address, like:
ftp://ftp.cs.ucla.edu/index.txt
The above is the address
of a file.
You can bookmark it privately,
or provide a link on your page for others to follow.
No passwords, no typing, just an address.
To view it, you click on this address.
It downloads into temporary file space (browser cache).
Browser maintains this space - you don't have to manage it.
And the final act of beauty:
This file contains within it a description
of what is in the archive, including a link to:
ftp://ftp.cs.ucla.edu/Shakespeare/index.txt
which contains a link to:
ftp://ftp.cs.ucla.edu/Shakespeare/macbeth.txt
You can browse, "graze", and move on,
with no clean-up to be done afterwards.
You can casually follow links with little effort,
no typing, just mouse clicks.
Why Mosaic?
Strictly speaking, Mosaic wasn't the first
mouse-driven web browser.
It was the first that was widely used.
This seems to be because it was the first that:
ran on Windows, Mac and UNIX
(Berners-Lee's browser was for NeXT)
Share the work (people construct links for you to follow).
Browsable (cache, no passwords).
Index files browsable and discardable.
Clickable (there were text-based Web browsers before Mosaic,
but they involved
typing numbers to say which link to follow).
A mouse is perfect for once-off,
"discardable" selections like this.
Readable texts - The text-based browsers
filled the text with
intrusive numbers, so many didn't see the point of the system.
Mouse-clicking on underlined words restores the readability of the text.
Distributed hypertext - Hypertext had been around for years.
But when hypertext meant you could click
on words in a help system, many said "cute"
but didn't really see the point.
When the click could take you to points in new systems,
suddenly everyone saw the point
and hypertext finally became popular.
Browsers allow handy organisation
and editing of private bookmarks.
Not restricted to one interaction - Browsers allow you to spawn off
multiple simultaneous window sessions
while waiting for slow downloads.
New tab
New window
A nice tip: Preferences - Save windows and tabs of last time
Providing info through
Javascript pop-ups
or other pop-ups
can break the model
(can't bookmark, have to follow a process to see data
rather than go to it direct).
Using
HTTP POST
for a Web form
breaks this model
(you can't link to a filled-in version of the form).
You might do this deliberately, of course.
Many forms should use POST.
e.g. Form contains password. This should not end up in a URL that might get shared.
Or form uploads a binary file, or a large amount of text.
To allow someone link to the form filled in with arguments, use
HTTP GET.
Listing an email address without making it a mailto: link
breaks this model.
Unfortunately this is increasingly essential
because of spam.
See example
using image and JavaScript.
Sending email attachments round a company
(instead of having the file on a public Internet page or private Intranet page)
breaks the model
(harder to see an archive of all such files,
not so easily browsable,
can't link to it).
Referencing things online without providing a hyperlink to them
breaks this model.
Not linking to other sites, not linking creatively within your site,
and in short, just using hypertext to present a series of menu options,
breaks this model
(back to hypertext as it was used before the Web,
to just present a few menu options within a site).
Many P2P file-sharing systems
break this model,
by having temporary "web sites",
that you can't link to.
Under
BitTorrent
you can
link to a .torrent file
to launch your download.
This address can be permanent
if the file is legal.