The Internet and the World Wide Web

January 28, 2009

Harvard University
Division of Continuing Education
Extension School

Course Web Site: http://cscie12.dce.harvard.edu/

Copyright 1998-2009 David P. Heitmeyer

Instructor email: david_heitmeyer@harvard.edu
Course staff email: cscie12@fas.harvard.edu

This Lecture's Topics

A form for lecture feedback will be available from the course web site. Please take two minutes to fill it out after you have seen the lecture.

Goals of CSCI E-12

Course Description
This course provides a comprehensive overview of website development. Students explore the prevailing vocabulary, tools, and standards used in the field and learn how the various facets—including XHTML, CSS, JavaScript, Ajax, multimedia, scripting languages, HTTP, clients, servers, and databases—function together in today's web environment. The course provides a solid web development foundation, focusing on content and client-side (browser) components (XHTML, CSS, JavaScript, multimedia), with an overview of the server-side technologies. In addition, software and services that are easily incorporated into a website (for example, maps, checkout, blogs, content management) are surveyed and discussed. Students produce an interactive website on the topic of their choice for the final project and leave the course prepared for more advanced and focused web development studies.

CSCI E-12, Fundamentals of Web Site Development

The Course

Course Syllabus | Course Schedule

Lectures and Sections

Work

Texts

In addition to the texts, there will be online readings assigned and online references cited.

Required texts:

Freeman, Elisabeth and Eric Freeman. 2005. Head First HTML with CSS & XHTML . O'Reilly & Associates. 658 p. ISBN 0-596-10197-X

Head First HTML with CSS and XHTML Cover

Jennifer Niederst Robbins, 2006. Web Design in a Nutshell . O'Reilly & Associates. 826 p. ISBN 0596009879

Web Design in a Nutshell

Texts are available through:

The Internet

International Network

Wikipedia: Internet

The Internet in Pictures

Web zoom in
Image from Opte Project and is used under the Creative Commons 1.0 license.

The Internet in Pictures

internet map
"A model of Internet topology using k-shell decomposition"
Carmi, Shai et al. (2007) Proc. Natl. Acad. Sci. USA 104, 11150-11154

The Internet in Numbers

Types of Traffic on the Internet

International Network


The World Wide Web

Weaving the Web

The irony is that in all its various guises -- commerce, research, and surfing -- the Web is already so much a part of our lives that familiarity has clouded our perception of the Web itself.

Tim Berners-Lee in Weaving the Web

The Web in Pictures

TouchGraph Web Development

touchgraph web
Graph made from TouchGraph GoogleBrowser.

The Web in Numbers

web page and world populations

"The Indexed Web contains at least 25.41 billion pages (Tuesday, 27 January, 2009)."
from Maurice de Kunder's site http://www.worldwidewebsize.com/

The Web in Numbers

About 73 million active sites in January 2009.

netcraft survey
Source: Netcraft Web Server Survey

The Web in Numbers

Home Use, October 2008 Value
Sessions/Visits per Person per Month 37
Domains Visited per Person per Month 72
Web Pages per Person per Month 1,600
Page Views per Surfing Session 42
PC Time Spent per Month 38:07:33
Time Spent During Surfing Session 1:02:36
Duration of a Web Page Viewed 0:00:50

Source: Nielsen Online

Top 25 Sites for the United States

Source: Top Sites, United States, from Alexa: The Web Information Company

Thumbnail screenshots from Thumbshots.org

image image image image image image image image image image image image image image image image image image image image image image image image image

Top 25 Sites in the United States:

A Web Site over Time

The White House Site (www.whitehouse.gov)

whitehouse.gov
1996


whitehouse.gov
1997


whitehouse.gov
1998


whitehouse.gov
1999


whitehouse.gov
2001


whitehouse.gov
2002


whitehouse.gov
2007


whitehouse.gov
2009

Features of the World Wide Web


Approaching the Web

Nature of the Web

Clients and Servers

client-server computing

The interaction between two programs when they communicate across a network. A program at one site sends a request to a program at another site and awaits a response. The requesting program is called a client; the program satisfying the request is called the server. (definition from The Internet Book, 2nd edition by Douglas E. Comer)

Client-Server Computing

Client-Server Architecture from Webopedia, http://www.webopedia.com/

HTTP Client and Server

HTTP browser and server

An HTTP Transaction

HTTP Transaction:

The HTTP client gets the content, makes additional requests for CSS, images, Javascript, etc., and then renders the page:

White House

URL: A Web Address

http://cscie12.dce.harvard.edu/lecture_notes/2009/20090128/toc.html

URL Anatomy

Names and Locations: URLs, URIs, and URNs

URI, URN, URL

For those who truly wish to find out more of the details, see Untangle URIs, URLs, and URNs by Dan Connolly

Web Parts

HTTP Client

http client http client

Server

server-side

Client-side Web Parts: Markup, Style, Function

web parts

Our Solar System: Markup

planets-markup.html
markup

Our Solar System: Markup + Style

planets-style.html
markup

Our Solar System: Markup + Style + Function

planets.html
markup

Files:

XHTML: Solar System Example

View the example.

(X)HTML Document Structure

A Tree

XHTML document as a tree

A "tree" structure view of XHTML produced by Amaya, the open source Web editor/browser from the W3C.

Amaya Screenshot

Components of XHTML Elements

A Hypertext Link

Markup for a Hypertext link:

<a href="http://www.harvard.edu/">Harvard</a>

element anatomy


Start Tag
<a href="http://www.harvard.edu/">Harvard</a>

Element Name
<a href="http://www.harvard.edu/">Harvard</a>

Attribute
<a href="http://www.harvard.edu/">Harvard</a>

Attribute Value
<a href="http://www.harvard.edu/">Harvard</a>

Content
<a href="http://www.harvard.edu/">Harvard</a>

End Tag
<a href="http://www.harvard.edu/">Harvard</a>

Styles

The XHTML page references an external stylesheet document.

The CSS file contains style rules for the document (planets.css)

Contents of the CSS file:

Harvard College Admissions

Harvard College Admissions:

admissions site

With CSS disabled:

admissions site no css

Examples from: CSS Zen Garden

css Zen Garden: The Beauty in CSS Design. A demonstration of what can be accomplished visually through CSS-based desgin.

Zen Garden No CSS Zen Garden Source
Zen Garden CSS Zen Garden CSS
Zen Garden CSS Zen Garden CSS
Zen Garden CSS Zen Garden CSS

Benefits of Web Standards

Question: What do the White House, GE, IBM, Library of Congress, EDS, Stanford, AGFA, Abbott, and Princeton have in common?
Answer: They adhere to Web standards

Standards for:
Benefits:

Web Standards Project
The Web Standards Project is a grassroots coalition fighting for standards which ensure simple, affordable access to web technologies for all.

What are Web Standards and why should I use them?

Web Standards: Markup and Style

timeline of web standards


Some Markup Specifications

SGML, XML, HTML, and XHTML

relationship between sgml, xml, html and xhtml

Defining Markup Languages

Specific Markup Languages

Relationships

Well-formed (X)HTML and Valid (X)HTML

Well-formed

Valid

Validate against the rules (elements, attributes, content models) of a specific grammar (e.g. XHTML 1.0 Transitional).

Two pieces to be concerned with:

Document Type Declaration and Document Type Definition (DTD)

The Document Type Declaration for an XHTML 1.0 strict document is:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

A closer look at the components follows:

Common Document Type Declarations and DTDs

Some Document Type Declarations for HTML documents. Remember that the HTML document must conform to the rules of the Document Type Definition that is referenced in the Document Type Declaration:

XHTML: a closer look


XHTML 1.0 Strict Elements

XHTML 1.0 Strict documentation produced from DTD

Modules

Your Beginning Toolbox

While a student at Harvard, there are a variety of software packages you may download and use through FAS Information Technology Software Downloads. Note that "keyed" software must be run from a computer that is on an on-campus network.

Web Hosting

For this course, Harvard will be your web hosting service. A server is dedicated to this course. Details on accessing (SSH and FTP) will be provided in Assignment 1.

HTTP Clients

Browser Statistics
browser stats

Source: Net Applications.com


HTTP Clients

Text or HTML Editor

Please start with your favorite text editor!

Window/Mac/Linux

Windows

Mac

Linux

Markup Checking and Validation Resources

SSH and FTP