Course:
CS 490 - CGI programming
Meets: Tue 6:00 pm - 8:50 pm PH 2304 
Instructor: Edmond Abrahamian
Office Hours: Tue 5:30-6:00 p and 8:50-9:30 p
Contact: (Preferred method is email)
Work: 314 647-8837 ext. 3281
Email: cs@greencedars.com
Objective: The main goal of this course is to familiarize the student with CGI (Common Gateway Interface) programming. CGI is a standard for interfacing external applications with information servers, such as HTTP or Web servers. Basic CGI functionality, data transfer mechanisms are examined in detail; interfacing to SQL database back-end servers are also illustrated . Security issues and performance considerations are discussed. Case studies are examined as time permits.

The Perl programming language is introduced and used for all the programming exercises. No prior knowledge of Perl is required, however proficiency in a C-like programming language is assumed.

Prerequisites: Exposure to a programming language, preferably C.
Exposure to Unix-flavor operating system commands.
Text: Used in class:
  • Learning Perl by Randal L. Schwartz
  • CGI Programming on the World Wide Web by Shishir Gundavaram (The 1st edition of this book is out of print, and the 2nd edition is not yet available, however a complete on-line version of the first edition is freely available at O'Reilly. This is what we will use this semester).
Reference books:
Labs: Unfortunately, no lab time is available for this course this semester, however a UNIX account will be given to each student for homework purposes. Access to a web server and a database back-end will also be provided.
Schedule: Available here
Additional notes: Available here
Programming assignments Available here
Grades: Available here
Useful links:
    Submit a programming assignment
    Discussion forum. You will need a username and password if you want to post articles. See links above.
    Unix primers:
    • Southampton University (UK) primer
    • GSI (Germany) Unix primer
Grading: Programs - 30 % (6) 
Midterm - 35%
Final - 35%
Policies:
  • Programs - In addition to a neatly printed hard copies, all programs must be delivered by electronic means. See the link under Programming assignments above for available options. All programs are due by midnight of the due date. Late programs receive a 33% penalty per late day. All programs must be submitted to pass the course.
  • Exams - No make-ups allowed unless you notify your instructor prior to the exam. Informing your instructor after the exam will not qualify you for a make-up,  unless you missed for a medical reason and you have a written statement from your doctor. There will be no exceptions to this rule.