PIC 40A, Winter 2004

Introduction to Programming for Internet

SYLLABUS




MAIN LECTURE:


DISCUSSION SESSIONS:


TEXTBOOKS:


EXAM DATES:


GRADING POLICY:


MISCELLANEOUS:
  1. Please consult the class web page "http://www.math.ucla.edu/~fedandr/40a.1.04w/" for a detailed information on class policies and procedures as well as for the latest
  2. I do not give incompletes, except in cases of extreme human tragedy.
  3. PIC Lab Information and Remote Access Instructions can be found at: http://www.pic.ucla.edu/piclab/ .
  4. Virtual Office Hours for our Class are located at:
  5. Please note that I neither read anonymous posts and/or anonymous e-mails, nor (moreover) reply to such posts and/or e-mails. I am sorry for any inconvenience.


AN OVERVIEW:
PIC 40A, PIC 40B course sequence is intended as a thorough introduction to programming for the Internet. We start with a detailed study of the core Internet technologies which form foundation of Web development. These core technologies include: Internet protocols (TCP/IP, FTP, TELNET, HTTP, and CGI Protocol), markup languages (HTML with CSS,and XML), client-side programming with JavaScript, and server-side programming with CGI scripts. We want to stress the open, cross-platform and vendor independent nature of the core Internet technologies. We also want to emphasize the fact that Internet protocols and markup languages allow great freedom of choice in actual implementations (for example, CGI protocol allows creation of CGI scripts with any programming language that can read from standard input and write to standard output).
We proceed to introduce two open cross-platform frameworks for server-side Web development: Perl and Java. Both frameworks enjoy great popularity and are used widely on the Internet. For the most part these frameworks provide comparable functionality, although some things are easier in Perl (working with regular expressions, or creating web robots with LWP module, for example), while other things are easier in Java (handling multimedia content, such as sounds and animation, for example). After an introduction to each of the two frameworks, we proceed to study a selection of advanced topics in Web development. These include XML processing, database connectivity, HTTP transactions, network programming, and PHP among other topics. The choice of a particular Web development framework for each of the advanced topics is left up to the instructor, but the course should present a balanced mix of various possibilities.
Finally, both parts of the course - introduction to common core technologies and study of selected advanced topics - would not be complete without a discussion of Internet security, which includes such topics as access permissions, encryption, port scanning, proxy servers and firewalls.



PIC 40A: "PROGRAMMING FOR THE INTERNET, AN INTRODUCTION"


PIC 40B: "PROGRAMMING FOR THE INTERNET, ADVANCED TOPICS"



Last modified on by fedandr@math.ucla.edu.