CS463/563 - Web Programming


Number and Title of Course: CS463/563 - Web Programming

Instructor(s): Dr. Wayne Summers     Office: SC204     Office phone: (505) 454-3230
Department phone: (505) 454-3295
Office Hours: MW 3:30-4:20 p.m. MST; TR 1-1:50 p.m. MST; via e-mail, net-meetings and by appointment
e-mail address: summers_wayne@ColumbusState.edu
homepage:http://csc.ColumbusState.edu/summers
Catalog Description of Course: Introduction to Programming on the Internet (3 credits).
Course Prerequisite: CS131 - Gentle Introduction to the Internet or equivalent experience with the Internet; and CS145 - Computer Science I or equivalent programming.

Required Textbook(s):

  1. Internet & World Wide Web - How to Program by Deitel, Deitel & Nieto; Prentice Hall; 2000; ISBN 0-13-016143-8
  2. Perl and CGI for the World Wide Web by Elizabeth Castro; Peachpit Press, 1999; ISBN 0-201-35358-X


Supplementary Books and Materials

General Objectives
1) learn programming techniques for the Internet

Expected Outcomes

  1. Students should be able to write web pages with advanced HTML features
  2. Students should be able to write web pages with dynamic HTML
  3. Students should be able to write web pages using style sheets
  4. Students should be able to write web pages using JavaScript
  5. Students should be able to write Perl and CGI programs
  6. Students should be able to write Java Applets
  7. Students should be able to write web pages using Active Server Pages
  8. Students should be able to write simple XML

Major Topics

  1. Review of HTML programming
  2. Forms & collecting data
  3. Dynamic HTML
  4. CSS
  5. JavaScript
  6. Perl and CGI
  7. Java Applets
  8. Active Server Pages
  9. XML

Instructional Methods and Techniques

  1. The class will meet for one two hour lecture/discussion periods and one two-hour lab each week. These sessions will usually be conducted via live chat over the Internet using WebCT, but may include some taped lectures on the instructor's web site.
  2. Students will be expected to actively participate in the class discussions.
  3. Students must have access to networked computers and be able to connect to servers at NMHU for doing assignments.

The labs should stress hands-on applications by the students. Each student will be expected to “attend” all lectures and lab sessions. The lab is NOT a help session. Students and the instructor will share their experiences of designing, coding, testing and debugging of web programs in the context of specific problems using web programming tools. Algorithms to accomplish complex behaviors will be developed by the class as a whole and students will be asked to present their design and coding work for class critique. Class participation by all is expected. The emphasis will be on web programming.

Assignments for Course

Evaluation

  1. Midterm(s) and Final Exams over the lectures and readings.
  2. Homework including lab assignments on material discussed in class and lab.
  3. Programming Projects.

Class Attendance: Class attendance is the responsibility of the student, and it is the student's responsibility to independently cover any material s/he may miss. Class attendance and participation may also be used in determining grades. You should attend all lab sessions. Attendance will be taken.

Exams and Assignments: There will be one midterm exam and one comprehensive final exam. Exams cover material from the text as well as laboratory activities. The lectures may not cover all the material in the textbooks. There will be many programming assignments. The projects will be expected to be complete and robust, including good user interfaces and the ability to handle improper input. Industry level internal and external documentation will also be expected. Late assignments will be subject to up to a 25% deduction in points per day. No credit will be given for assignments that are more than one week late.

Course Evaluation (tentative): Graduate Students will be expected to do graduate quality work

Grades may be determined according to this scale :

A    90% - 100% B    80% - 89%
C    70% - 79% D    60% - 69%

Honor Policy: Cheating will not be tolerated. Any student caught cheating will be given a zero on the assignment or exam. Repeat offenders will be given an F for the course and may suffer expulsion from the university. All work must be your own. You may discuss the material in the course and help one another, however, I expect any work you hand in for a grade to be your own. Plagiarism will result in, at best, an "F" for the assignment. A simple way to avoid inadvertent plagiarism is to talk about the assignments, but don't read each other's work or write solutions together. Keep scratch paper and old versions of assignments until after the assignment has been graded and returned to you. If you have any questions about this, please see me immediately.

COURSE OUTLINE (tentative)

DATE Chapter / Description Notes Assignment
Week 1: (Jan. 8-12) Part I: Creating Web Pages:
ch. 1-6 (Deitel)
HTML and Advanced HTML Personal Web page
Week 2: ((Jan. 15-19) Part II: Enhanced Web Pages:
ch. 14 (Deitel)
Advanced HTML Advanced Web page with style sheets
Week 3: (Jan. 22-26) Part III: Scripting and Dynamic HTML:
ch. 8-13 (Deitel)
JavaScript JavaScript "applet"
Week 4: (Jan. 29 - Feb. 2) Part III: Scripting and Dynamic HTML:
ch. 8-13, 21 (Deitel)
JavaScript Web page with Dynamic HTML
Week 5: (Feb. 5-9) Part III: Scripting and Dynamic HTML:
ch. 15-20 (Deitel)
Dynamic HTML JavaScript
Week 6: (Feb. 12-16) Part IV: Active Server Pages:
ch. 26 (Deitel)
Server Side Programming Active Server Page
Week 7: (Feb. 19-23) Part IV: Active Server Pages:
ch. 26 (Deitel)
Server Side Programming Active Server Page
Week 8: (Feb. 26 - Mar. 1) Part IV: CGI and the Internet:
ch. 27 (Deitel);
ch. 1-5 Castro
CGI MIDTERM EXAM
Week 9: (Mar. 5 - 9) Part IV: Perl in Internet Applications:
ch. 27 (Deitel);
ch. 6-12 Castro
PERL Perl/CGI program

SPRING BREAK – ENJOY

Week 10: (Mar. 19 -23) Part IV: Perl in Internet Applications:
ch. 27 (Deitel);
ch. 13-16 Castro
PERL Perl/CGI program
Week 11: (Mar. 26-30) Part V: Introduction to Java & Java Programming:
ch. 29 (Deitel)
Java Programming Simple Java applet
Week 12: (Apr. 2 - 6) Part V: Java Programming - graphics:
ch. 29 (Deitel)
graphics Java applets
Week 13:(Apr. 9-13) Part V: Java Programming - multimedia:
ch. 29 (Deitel)
multimedia Java applets
Week 14: (Apr. 16-20) Part VI: XHTML & XML:
ch. 28 (Deitel)
XHTML XML Page
Week 15: (Apr. 23-27) Part VI: XML:
ch. 28 (Deitel)
XML XML Page
FINAL PROJECT DUE
Week 16: May 2, 2:30-5:30 p.m. MST FINAL EXAM