G22.3033 Advanced
Multimedia

This course will cover
a variety of advanced topics in multimedia design, with emphasis
on techniques for creation of interactivity, and on networked multimedia.
Topics to be covered will include: the HTML-JavaScript-Java software
complex as a vehicle for multimedia production. Comparisons
with Lingo and Director. Potential improvements to HTML. VRML as
a possible 3D replacement of the 2D graphics of Director. Bandwidth
considerations. New graphic concepts, including the 'Pad' zoomable
interface. Text searching. Morphing.

G22.3033 Internet
& Intranet Protocols & Applications

Prerequisite: Data
Communication and Network Design (G22.2262) or equivalent or permission
of the instructor obtained via email to artg@cs.nyu.edu.

Internet and Intranet
Protocols and Applications studies the world's most widely used
application level network protocols and software systems. They
are primarily client/server systems, with modifications and enhancements
to improve performance, such as caching and replication, and
security, such as firewalls.

We study protocols,
such as HTTP, NNTP and SMTP. We discuss the design of client and
server software, such as Web browsers and servers. We study the
design of network systems, such as corporate intranets.

In examining these
systems, we consider the technical challenges faced by their designers,
including issues such as system performance, and network architecture
and management.

Two programming projects
will enhance the learning experience: write a UDP ECHO client and
the core of a caching HTTP/1.1 proxy server.

G22.3033 Real Time
Computing

Prerequisites: G22.2110
and either G22.2250 or practical knowledge of operating systems

Definition of real-time
programming, and examples of important real-time applications.
Approaches for construction of real-time programs including formal
models (such as Mascot), formal analysis techniques (such as rate
monotonic analysis), and design prinicipes. Programming
language constructs for support of real-time programming. Specialized
support hardware. Techniques for testing, maintaining, verifying
and validating real-time programs.

The genome contained
within a human cell is very large and complex. It holds all of
the genetic information necessary for its creation and function
encoded with a total of six feet of DNA. The goals of the Human
Genome Initiative (HGI), as framed by the National Institutes of
Health and the Department of Energy, are to generate a complete
map, containing well-defined markers, and to sequence the
entire human genome within the next seven, or less years.
The sequencing aspects of this project will have to deal with approximately
3 billion base pairs. A large number of genes (70,000-100,000)
will be identified and characterized in terms of biochemical, developmental,
and clinical criteria. Additionally, the development of
approaches to globally, and quantitatively, characterize message
(RNA transcripts, which direct synthesis of specific proteins)
will also play a major role in virtually every aspect of biological,
pharmaceutical and clinical research.

The science of computational
genomics and bio-informatics have been created out of this massive
sea of sequence data and the need to establish functionality of
genes largely based on similarities discerned at the level of the
DNA code; bypassing the need for extensive biochemical
characterization.

This emerging subfield
relies on some classical and many novel mathematical, statistical
and algorithmic ideas that are essential to accomplish this task.
This course deals with mainly these mathematical and computational
approaches. The course is self contained, developing the biological,
statistical, probabilistic and algorithmic tools and
techniques along the way.

This course will focus
on the important aspects of security on the web and on the Internet.
The Internet refers to the infrastructure - the underlying protocols
and routing. The web refers to the applications that run on the
Internet. The course will address the following questions:
What is a secure system? How is one designed, and how are vulnerabilities
discovered? What are the effects of system vulerabilities, and
how may they be minimized? We will look at browsers, web servers,
and communication protocols on the Internet. Grading will be
based on a midterm and final exam and some programming
assignments.

G22.3033 Internet
& Web Security

This course will focus
on the important aspects of security on the web and on the Internet.
The Internet refers to the infrastructure - the underlying protocols
and routing. The web refers to the applications that run on the
Internet. The course will address the following questions:
What is a secure system? How is one designed, and how are vulnerabilities
discovered? What are the effects of system vulerabilities, and
how may they be minimized? We will look at browsers, web servers,
and communication protocols on the Internet. Grading will be
based on a midterm and final exam and some programming
assignments.

Course material is
designed to be selfcontained; although it uses ideas from probability,
discrete math, and theoretical computer science, no particular
background will be assumed. The core of the material is what is
called the Probabilistic Method - a method of proving the existence
of objects pioneered by the late Paul Erdos. This course will
complement the material in the course "Randomized Algorithms"
taught by Richard Cole.

The intended audience
for this chemistry course, cross-listed in the Computer Science
Department, is advanced undergraduates and graduate students from
chemistry, biology, physics, mathematics, computer science and
neuroscience), as well as graduate students in biomedical science.

Textbook: "Understanding
Molecular Simulations. From Algorithms to Applications" by Daan
Frenkel and Berend Smit (Academic Press, 1996). The book will not
be rigourously followed and supplemented by articles, additional
books, web sites, and professor's notes.