Comm 442/542 World Wide Web: Advanced Interactive Design

Fall 2009 Syllabus
under construction


W. D. Horn     Office: Snell 174    Phone x6420         Office Hours: MTWT 11:00 a.m. - Noon and by appt.
Classroom: 239 Snell.     MW 4:00 - 5:15

Required Texts

   Schwartz, Randal L. & Tom Phoenix.   Learning Perl. 5th Edition. O'Reilly. [Llama]
   Forta, Ben   MySQL Crash Course Sams. [Forta]
   Castro, Elizabeth.    HTML, XHTML & CSS. 6th Edition. Peachpit. [Castro]

Recommended Texts

   Wall, Larry.    Programming Perl. 3rd Edition O'Reilly [Wall]

Online Texts:

Much of the documentation for this class is in Electronic form, on the Web and in Linux "man" pages. Consult it as directed during the course.

Course Objectives

At the successful completion of this course students will have the following:

Much of the material for this class is available on the Web.  Be sure to make yourself familiar with it at  URL: http://www.mybookmarks.com/public/wdhorn   Other materials will be handed out in class, or placed on reserve in the library.

Class consists of lecture and labs.   Most of the work will be hands on at the computer.  You are expected to take electronic notes on the work covered in class.  Your online work will be graded periodically.  Expect unannounced quizzes.

Grading:    Learning about computers is a hands-on activity.  Much of the work will be in the form of in-class exercises.  To do well you must attend regularly.  Attendance is a large part of the class participation grade.

    This course includes two large projects, numerous small assignments, and online quizzes. The final examination will be comprehensive.
 

quizzes 
20%
 short assignments, participation, personal web pages
20%
individual project
20%
group project
20%
final exam
20%
 
 
 Cheating:         No form of academic dishonesty will be tolerated.   Do not cheat. Plagiarism is the use of another's words or ideas without acknowledgment.  Do not plagiarize.   Do not help others to cheat.  If at any time during the semester you have a question about what might constitute academic dishonesty, please consult the instructor.

      In any creative endeavor, much must be learned from others.  There are many gray areas.  In this course, your work will be published on the Web. Be careful to respect copyright and intellectual property. When in doubt about what is fair practice, ask questions.

 

Class Schedule

Week 1

Aug 24 Mon: Intro to course. A theory of education: do it, repeat it, difficult remembered, symbolic manipulation. Requirments, books, workload, syllabus. Basic Unix. Editors: vi, MicroEmacs, Nano. Basic HTML. JavaScript. About Perl. READING: Llama Chapter 1.

Aug 26 Wed: Documentation Project. Perl, invoking Perl, scalar variables, $var, $_, control structures More Unix: piping, redirect, etc. Backtics, system(). READING: Llama 2.

Week 2

Aug 31 Mon: Your TC442 page. HTML: Links, relative and absolute, images. More Perl scalar variables: operators, strings, string operators, variable interpolation, print(), print <<EOT, interpolation, qq//, q//. Lists and Arrays binary assignment operators. READING: Llama 3;

Sep 02 Wed: CGI: template. HTML: Locate, tables, mailto, forms, echo. Principles of Design. Perl: Lists and Arrays READING: Llama 3.

Week 3

Sep 07 Mon: Individual projects. HTML: Forms - text entry. JavaScript: one liners. Perl: Subroutines, functions, return, use(), require(); local(), my(), @_, $_[0]. More string operators, arrays, control structures, if/unless, while/until; autoincrement. READING: Llama 4.

Sep 09 Wed: HTML: Forms - radio buttons, etc. Perl: Control structures: blocks, labels, for, foreach, redo, next, last, die, and, &&, or, ||, &, CGI arguments: "?" READING: Llama 4 & 10.

Week 4

Sep 14 Mon: Team Projects. Perl: Hash (Associative Arrays), foreach and hash, sort. Basic I/O. <STANDIN> READING: Llama 5 & 6;

Sep 16 Wed: Perl: Regular Expressions, m//, s///, tr/// READING: Llama 7 & 8.

Week 5

Sep 21 Mon: Perl: Regular Expressions: greedy Filters, HTML Filters. READING: Llama 9.

Sep 23 Wed: Perl: More Control Structures. Personal Perl Library - PPL. The CGI data stream. A Parser: pack, read_form_results(). READING: Llama 10.

FALL RECESS: September 25 (begins at the end of the last scheduled class) - Sep 30 (8:00 am)

Week 6

Sep 30 Wed: Perl: Filehandles and File Tests. READING: Llama 11

Week 7

Oct 05 Mon: Perl: more file handles and file tests: open(FH,"fname"), open(FH,">out"), open(FH,">>out").

Oct 07 Wed: Perl: Directory Functions and File Manipulation: grep(), lc(), opendir(), readdir(), closedir(), chmod(). READING: Llama 12 - 13;

Week 8

Oct 12 Mon: quiz

Oct 14 Wed: Perl: File manipulation. Process Management. READING: Llama 13 - 14; MySQL. Team projects. Forta 1-2

Week 9

Oct 19 Mon: Perl: CGI PPL: webdie(), weberror(). Review regular expressions. pos() Sorting. MySQL. READING: Llama 15; Forta 3

Oct 21 Wed: CGI: word lists, filters, searches, the flat database. Database PPL: begin_html(), end_html(), log_it(), copyright(). MySQL. READING: Llama 16; Forta 4

Week 10

Oct 26 Mon: Perl: Advanced Techniques. CGI: Interacting with Unix. security, Unix security. PPL: security(), read_form_paired(), read_form_both. Modules READING: Llama 17; Forta 5. http://heron.tc.clarkson.edu/~horn/bk/ch4/ch4.html

Oct 28 Wed: CGI: hypergate.cgi, an invention program, a compurter corrected quiz. READING: Forta 6-7. http://heron.tc.clarkson.edu/~horn/bk/ch5/ch5.html

Week 11

Nov 02 Mon: CGI: Recursion, returning HTML, creating a comment space. Perl: optimzing for time efficiency. Refernece. READING: Forta 8-9.

Nov 04 Wed: HTML Style Sheets. Perl special projects. Reference

Week 12

Nov 09 Mon: Writing JS program from a CGI. Passing arguments to a second CGI. OOP Perl. Backing up MySQL READING: Forta 29

Nov 11 Wed: Dynamic Pages. Links. Perl READING: Forta 19-20

Week 13

Nov 16 Mon: Review: Oral Presentations. Ties.

Nov 18 Wed: Review. Presentations.

Week 14

Nov 23 Mon: Oral presentations.

THANKSGIVING RECESS: November 24 (begins at the end of the last scheduled class) - Nov. 30 (8 a.m.)

Week 15

Nov 30 Mon: Review. Presentations.

Dec 02 Wed: Final Review. (Individual projects due.)

Week 16 Final Exam: Monday, Dec 7, 8:00am - 11:00am Snell 239