Week 1 - The People Involved / Beginning HTML
The People Involved
If you've ever gone to a play, you know that one of the first things you get
is a brochure which describes the parts and who will be playing them. It does
not tell how the story will proceed or how it would end. Surprisingly, most
every presentation of the Internet leaves the reader with the impression that
there was this magical thing called TCP/IP, somehow a bunch of wire was laid
out, and POOF! the Internet just shot up out of the ground.
This kind of report hardly gives an accurate portrayal, nor does it do justice
to the people who put in the long hours to bring the Internet to fruition. To
that end, I will attempt to introduce the Internet by describing the groups of
people involved and the contributions they made. Following the descriptions of
the various groups, some links to other sites are given which represent those
groups.
If you are looking for a grand overview of the history of the Internet, I
reccommend the following URLs:
The Military
It may be surprising to learn that the system of freeways across the United
States began as a Military project with the goal of being able to transport
goods, troops, and machinery all across the country in the event of a domestic
war. The freeway system has since evolved into a network of mass-transit roads
used not only by the government, but by private citizens and businesses as
well. It was the kind of project that was so expensive and elaborate that it
could only be proposed as a "half-baked" government program.
The Internet had a similar humble beginning. It began as a military project to
create a communication network which would allow the various military stations
across the country (and eventually across the world) to communicate with each
other. One of the design goals was to build a system which would be flexible
enough and robust enough to continue routing information even if a major
metropolitain city should be destroyed.
So, very similar to the freeway system, the Internet began as a wild-eyed,
half-baked government project whose costs were enormous and whose benefits
were questionable. Also like the freeway system, the Internet has evolved into
a world-wide network which is used not only by the government but by private
citizens and businesses as well.
Research Organizations
After the military put the foundation in place, the development of the
Internet was furthered by research organizations, most of which were also
government-funded.
Research organizations found the Internet to be a useful way for scientists
who were geographically dispersed to collaborate together and share
discoveries. The Internet is still used extensively by these organizations and
is a bastian of resources, both practical and esoteric.
The following are some examples of research organizations.
- NASA - The National Aeronautics
and Space Administration. This organization takes people to the moon,
looks at stars through big telescopes, and puts the photos up on the web
for all to see.
- NCSA - The National Center
for Supercomputing Applications. It was here that Tim Berners Lee
developed the URL and hypertext. The development of these things were huge
milestones towards the furthering and proliferation of the Internet.
- MIT - The Massachusets Institute
of Technology. These people have some of the best jobs in the world. This
place does experiments with genetics, have researched "electronic paper",
have attracted / produced some very bright folks (i.e. Nicholas
Negroponte).
- AT&T Bell Labs - Now known
as Lucent Technologies, this is the place where UNIX was born. The
prophets of old--Brian Kernigan, Dennis Ritchie, and Ken Thompson--still
wander these corridors.
Colleges and Universities
Many universities also have research departments, similar but not quite as
elaborate as the aforementioned research organizations. These schools also saw
the benefits of being able to share academic information over the Internet and
were therfore one of the early groups that got wired.
- U.C. Berkely - This was one
of the first universities to obtain the UNIX source code from AT&T
labs when it was released. The students and research labs there added a
tremendous amount of features, including but not limited to: batch
processing with at and cron, printing with lp, interprocess / Internet
communication with sockets, a TCP/IP stack implementation, DNS, and a
whole host of things too numerous to mention.
- University of New South Wales
- This Australian university was one of the first to take the UNIX source
code and port it to another architecture.
- The University of Utah - Yes,
our own little hometown has a University which has made a name for
themselves. One piece of Internet history that the U of U will always be
famous for, is that they were the place where The
Great Internet Worm of '88 was spawned.
The Free Software Community
As we have already seen with the previous two groups, they followed the
Western Academic Tradition of making discoveries and inventions fuled by
curiosity or an "itch that had to be scratched", and then shared those
discoveries with their peers in return for recognition and renown.
The Free Software Community followed in this tradition, but brought the notion
of software development to individual hobbyists and enthusiasts. As a result,
a great deal of Free software has been written, and much of it powers and runs
the Internet.
- The Apache Group - This group
of developers created a very stable, scalable, and extensible web server,
based on or inspired by the old NCSA web server code. The Apache web
server is the most popular server on the Internet and powering over half
of all web sites.
- Sendmail Inc. - An
enterprising individual by the name of Eric Allman wrote the software
which would support the Internet's first "killer app": Sendmail. This MTA
(Mail Transport Agent) routes +80% of all email on the Internet. Any email
you send probably gets handled by sendmail somewhere along the way. In
recent years, Eric has started a company which provides commercial support
and customization to the sendmail program, while keeping the core source
code free.
- The Berkely Software Distribution - U.C. Berkely (mentioned above)
took the software they made and bundled it into a distribution. They have
also created a licence, known as the BSD license, which they release their
software under. Formerly, their distribution was commercial, but has since
become free as well. The best site for explaining this is at FreeBSD.org. If there is a name to
attach to this group, it is probably Paul Vixie, who has written several
key pieces of software, most notably 'bind' which resolves DNS names to
addresses.
- The Free Software Foundation - In
1984 a graduate from MIT (discussed above) named Richard Stallman began a
non-profit organization dedicated to producing a completely free version
of the UNIX operating system, known as GNU (which is short for "GNU's not
UNIX"). To date, this organization has created a plethora of useful tools
and applications which are used on numerous different operating systems,
both commercial and free. In addition to these tools, Richard Stallman
created the GNU Public License (or "GPL") under which they release their
software. With the advent of free Unicies such as Linux and FreeBSD (mentioned above), their mission
has largely been accomplished.
- Open Source - A more
contemporary movement, this organization was started by a very active
developer in the free software world by the name of Eric S. Raymond. His
essays "The
Cathedral and the Bazzar", and the follow-up "Homesteading the
Noosphere" have helped to explain the open development model and make
a business case for openly-developed software. His papers were a large
influence in convincing Netscape to release the source code to their Mozilla browser. Eric has trademarked
the term "Open Source" and has started a non-profit organization dedicated
to defining and defending the term.
Standards Committes
The development of the Internet was not accomplished with a great deal of
top-down planning (possibly excepting the military, of course), but rather by
convention and consensus. Over time, these conventions became traditions, and
as the Internet scaled up in size people generally agreed that it would be
necessary to codify these traditions into hard-and-fast rules. A number of
committees and standards organizations have emerged to help define the
standards for the Internet, and help to make interoperability over a large,
heterogenous network a reality.
- The World-Wide-Web Consortium -
These people help to define the rules for the various markup languages
that are used on the World Wide Web (SGML, HTML, XML, among others). The
HTML documentation that we will use for this class is found on their
website.
- The Internet Engineering Task
Force - (IETF) The Internet Engineering Task Force (IETF) is a large
open international community of network designers, operators, vendors, and
researchers concerned with the evolution of the Internet architecture and
the smooth operation of the Internet. It is open to any interested
individual
- The Open Group This
standards group owns the UNIX brand name and the X Window source code.
- The RFC (Request
for Comment) process is a long-standing method for drafting and accepting
new protocol standards. The suite of TCP/IP protocols all have RFCs
written for them.
The Underground
Just like any society the Internet has its own "wrong side of the tracks".
There are a number of folks on the Internet dedicated to finding security
holes, defacing websites, pirating software, and in general, poking holes in
things.
It may be a little difficult to imagine that these folks could make any
positive contribution to the Internet but they have: They've dramatically
raised our awareness of backdoors, weak encryption, and other exploits, and
have made the Internet much more robust and secure.
The following are some notable groups.
- L0pht Heavy Industries - A very
well-respected security organization and makers of the ISS port-scanning
software. They are a legitimate business which offers consulting services
to help you improve the security of your computer systems. Recently, this
group went before U.S. congress to tell them about just how insecurity the
Internet really is. (Anybody got a URL for this?)
- Cult of the Dead Cow -
Makers of the infamous "Back Orifice" program, Cult of the Dead Cow (aka:
cDc) is one of the oldest underground groups on the Net. Back in the good
old days of Commodore 64s, you could download cDc text files and get a
good laugh. The good news is, the text files are still there and still
being updated. One note of caution, the humor on this site tends to be a
bit... robust for some tastes. If you are easily offended, it's probably
best to just stay away.
- Phrack - An online 'zine that
gives monthly updates on exploits.
- 2600 - This group was named after
the (now legendary) "Phone Phreaking" exploit. If you directed a radio
signal at 2600 Mhz, you could pretty much do anything you wanted to with
the phone company. They have a page which lists all the sites they have
broken into. They also have a newsgroup where people can post their latest
exploits, curse at each other, and otherwise engage in bad spelling and
poor sentence construction.
- rootshell - Also known as
the "script kiddies" site, this location serves as a clearinghouse for
well-known security holes. You can search through an indexed database of
exploits along with descriptions and sample source code. With this site,
any kid with a shell account and a C compiler can wreak havok on the
Internet. (But if you read the disclaimer on their home page, you'll find
that the description I just gave is not the site's official
purpose.)
- Warez d00dz / Warez Kiddies - These people are dedicated to
cracking anti-piracy measures on commercial software and proliferating it
far and wide. I'm not giving links to any sites for obvious reasons (i.e.
I don't know of any :-) ).
Special Interest Groups
In the flesh-and-concrete world, there are numerous organizations which exist
to promote a cause or defend someone's rights. Examples include the ACLU,
Empower America, NAACP, etc. The Internet is no different. A number of groups
exist to advocate or support acction on Net-related hot-button issues.
- The Electronic Freedom Foundation
- (or EFF) This group is largely an advocate for privacy rights and civil
liberties on the Internet.
- EPIC - The Electronic Privacy
Information Center. This group is very active in promoting the use of
strong encryption for personal or commercial purposes.
- E-The People - This site
is an "Interactive Town Hall" which gives information and manages
petitions regarding Net-related or software-related issues.
- The Freedom Forum - A
site which hosts and promotes writings about free speech on the Internet.
Gamers
- Quake World - The Mother of
All 3D, first-person, shoot-em-ups has a website which provides news and
info to Quake players far and wide.
- MUDs - One staple of Internet gaming is MUDs, or "Multi-User
Dungeons". These are mostly text-based games that can be played via telnet
or with a MUD client. Think of them as multiplayer versions of the old
Zork game. There are too many MUDs to name here, so I'll let you find them
on your own.
- Roguelike
Games - In the bad old days of computing, there was a little
character-cell based game called Rouge where you took a character
(literally!) through a twisty maze, killing mosters and collecting
treasure. A whole raft of spin-off games have emerged which follow in the
fine tradition of Rouge. I list this page only to demonstrate the kinds of
diverse and geeky interests that exist on the Net.
- Starcraft.org - A compendium and
strategy guide for Blizzard Inc's leading real-time strategy game.
Fanboyz/Fangirlz
A 'Fansite' is a website, typically maintained by voluntary effort, which
espouses and advocates some interest or hobby of the fanboy or fangirl that
runs it. This can be a favorite TV show, a favorite activity, a favorite
hunk of software, or some noble cause. Newsgroups exist for every hobby and TV
show under the sun as well.
Many of the fansites you see on the Internet are somewhat esoteric and more
than just a little, well, geeky. As such, there really isn't any other medium
that would host "fansites". TV wouldn't, major newspapers wouldn't. Also, as
people who share these quirky interests are somewhat graphically dispersed, it
would be difficult to try to assemble them all together in a single, physical
area.
Fortunately, the Internet overcomes these obstacles. And when I say
"fortunately", I mean for ALL of us, because if you have an interest in some
topic and want to find out more about it, chances are that someone else has
already put up a site / mailing list / discussion group which addresses that
topic where you can read more. If not, then maybe it's time YOU put one up.
- OpenGL.org - This is largely an
advocacy / news site about all things concerning the OpenGL graphics
library. They have links to OpenGL bindings to other programming
languages, ports to new platforms, games and CAD tools that have been
released using OpenGL, etc.
- The Lurker's
Guide to Babylon 5 - This site is a volunteer effort to catalog each
and every episode in the sci-fi television series "Babylon 5". Each
episode is meticulously disected to help the reader to determine how the
plot is unfolding, and how any single episode connects to all the others.
This is fortunate, because without such a valuable guide, no one would be
able to figure out just what the heck is going on in this show.
- Slashdot - "News for Nerds, Stuff
that Matters". This site was begun by a college kid named Rob Malda (who
goes by the handle "CmmdrTaco"). He ran the site out of his dorm. Rob (and
his buddies) post links to late-breaking news stories on other sites,
polls, editorials, book reviews, and links to anything else that interests
them. It's one of the most interactive sites on the Internet, giving
readers the opportunity to submit articles, post opinions, and vote on
just about everything.
Business
On or around 1994, congress passed an act which made it legal to use the
Internet for commercial purposes. Businesses, then, are the last entrants to
the Internet. In the long-standing tradition of the free market, it is the
mission (and contribution) of businesses to make it as convenient as possible
for you to give them your money in exchange for their goods, services, or
information. Home shopping has hit the wires.
- Wired - The original Net savvy
magazine. This publication did a lot to explain the phenomenon of the
Internet, the anthropology of the people who used it, Net-related news and
events, and how other businesses were making money on the Internet.
- Amazon.com - This company
demonstrated that a company could make money by selling books on the
Internet. They boast having a larger inventory than any physical store.
- Netscape - The original
"darling of the Internet", Netscape was the company that brought a lot of
people on board and figured out that if you created a demand by giving
away the client software, you could make money by selling the server
software.
- Ebay - This is a big,
Internet-based flea market. People can submit anything--and I mean
ANYTHING--to be sold auction-style to the highest bidder.
- Internet Movie Database - A
comprehensive listing of every movie or TV show ever made. The searches
are quick and the names of every actor / producer / director / etc. are
meticulously cross-referenced.
- CDNow - Any CD, any time of day.
They hawk 'em, you buy 'em. Pretty simple. They even have sample tracks
that you can listen to with a Real Audio player.
- E-Trade - This company does
Internet-based, completely automated stock market trading. Because they
don't have to pay high commision fees to brokers they can undercut a lot
of the old-school trading firms. They provide quotes, news tickers, and
some technical analysis software.
Your First HTML Lesson
The Acronym
HTML stands for "Hyper Text Markup Language". A subset of SGML (Standard
General Markup Language), HTML allows you to define the formatting and
appearance of a document using markup labels (described below). Additionally,
it allows you to embed links to other pages in the document, including
multimedia things like sounds and images. Higher-level formatting such as
lists and tables can also be constructed.
This marked-up text is transmitted over the wires and fed into a rendering
engine which parses the HTML and displays it. An application which does this
is called a browser. (Hopefully, this is not news to anyone.)
The Universal Medium: Text
One of the first things you should be aware of is that HTML, like many
other transmission mediums on the Internet, is done as flat text. Due to the
heterogenous nature of the Internet, any kind of binary format would be
unacceptable. Differences in endianness, wordsize, and other system-dependant
issues make binary transmission formats untenable. Therefore, the transmission
medium of choice, is flat, ASCII text.
But how, you may be asking yourselves at this point, is a web page able to
render text in different fonts? How does it apply typographic features like
boldface, italics, superscript, and subscript? Simple: Through the use of
tags.
What is a Tag?
A tag is simply this: A label which describes the text that follows it.
Often, tags come in pairs, an opening and a closing tag--Think of these as
being equivalent to begin/end blocks in programming languages. Tags are
typically metacharacter-delimited to help the parser to interpret the HTML
more easily. Those metacharacters in HTML are angle brackets: '<' and
'>'. (The ampersand ('&') is also commonly seen, but not as a tag
delimiter.) In general, an opening tag will be written as <tag> and a
closing tag will be written as </tag> (note the forward-slash).
Not a Precise Language
A common criticism of HTML is that the language lacks the features to give
web authors precise control over the display and layout of their pages. Many
desktop publishing professionals are used to having a fine degree of control
over their documents. Remember, one of the features of the Internet is to
enable communications over a very large network of diverse computers. With
that in mind, any precice-control features might work in some environments,
but not work in others. HTML, after all, should be able to be displayed in
anything (including text-based browsers). To that end, HTML is
deliberately an imprecice language and you shouldn't fuss about it. Moreover,
as a courteous web-author and Net-citizen, you should make efforts to avoid
including tags or code which are non-standard or proprietary, with the intent
of making your pages viewable by all.
Hello World!
There is a long-standing tradition that the first introduction to a new
programming language should display the phrase "Hello World". While HTML is
not a programming language (it is a markup language), I do not know what the
penalty would be for breaking with this long-standing tradition, and in the
interest of my own personal well-being, I think it would be better not to find
out first-hand. To that end, the following example presents the infamous
"Hello World" program adapted to HTML.
<html>
<head>
<title> The Hello World Page </title>
</head>
<body>
<p>Hello World!
</body>
</html>
Let's disect this little page briefly, shall we?
- The <html> and </html> tags found at the beginning and
ending of the file tell us (and the parser) that this is HTML text.
- The <head> and </head> tags are meant to surround
document information. As you can see, they only have one nested tag
inside them.
- The <title> and </title> tags surround the document's
title. This string will typically be displayed at the top of your browser.
- The <body> and </body> tags surround the document's
content. As this is a simple "Hello World" program, there isn't much by
way of content.
- The <p> tag shows the beginning of a new paragraph. Note that
this tag does not have an accompanying closing tag. Some tags do not
require that you include a closing tag; they are optional.
Be sure to look up these tags in the documentation and see what other
options are available, and what else you can do with them. We will cover more
sophisticated text formatting in our next class.
Assignment #1
Is right here. Look at it.
Changelog
1/13/99 - Initial revision
1/14/99 - Added EPIC, Lurker's Guide, and Assignment #1 Link.
1/15/99 - Added Ethan's spelling / grammar corrections.