CMSC 498w -- Web Architecture and Programming

Spring 2006

Professor:
Prof. J. Hendler
hendler@cs.umd.edu 
http://www.cs.umd.edu/~hendler
chat: jhendler2000@aol.com
TA
Charles Song
csfalcon@cs.umd.edu
Office Hours: Wed. 1-3, TA room

Course Intent:

This course will not teach you how to design Web sites, forms, etc. It is aimed at the underpinning technologies of the Web. It will explore the archtectural principles that allow the Web to function and which will allow it to continue to grow. We will look at the design of web protocols and web services to explore how they work. We will look at important algorithms on the Web (page rank, collaborative filtering, keyword clustering) and at emerging technologies. In addition, we will look at some of the emerging trends on the Web and see how they compare, contrast and/or may be brought together.

Work Load

Class will have two programming projects and a final, larger, project (done as individuals or small groups). The final project will be in lieu of a final exam. There will also be several homework assignments, these may include "light" programming. There will be a midterm. I reserve the right to hold an inclass quiz at any point in the term, especially near the end of the term (that would be a "unit" test, not a final).

Grading

Homeworks:  up to 15%
Projects 1,2: 30%
Midterm/quizzes: 20%
Final Project: 30% 
In class intangibles: the rest.
Lateness policies and extra credit rules will be given along with the programming assignments. Homework will not be accepted late unless approved in advance. Departmental rules re: excused/health absence. General rule of thumb, I'm more lenient when asked in advance.

Course topics

The following is a list of potential course topics and projects. It should give you an idea of what will be explored, but not be taken as final.

Web Architecture
  * what is the Web
       + HTTP
            - headers
            - errors
            - server
  Reading: Web Architecture Document, parts of HTTP 1.1  
(Project: Spidering a web site)

 Web Content/Search
  *  Information Retrieval
        o Traditional Information Retrieval techniques
              + Ranking (precision/recall, TF/IDF)
              + Latent semantic indexing
        o Retrieval techniques for the Web (How does Google work)
                + Authority/Hub computation
                + Relevance of anchor text           
          o Macro structure of  the WEB
                + small world computation
  Reading: papers on appropriate algorithms and techniques
     (Project: Searching a Web site multiple ways)
 
Web 2.0/Semantic Web
   * Blogging and RSS 
   * Groups of users
         + Collaborative filtering
         + social net constructs
    * Web Services
         + introduction, access via SOAP
    * Semantic Web
         + languages XML, RDF, OWL
         + tools (Jena, OWL-API, Swoop)
   (Project/Final project: Impress me.)