Gold University of Minnesota M. Skip to main content.University of Minnesota. Home page.
 
 
 

What's inside.

Assignment Calendar

Office Hours

Syllabus

CSci4131 Forum

Check Your Grades

Submit Homework Assignments

Other Documentation

 

CSCI4131 Home

 
 

Printer-friendly version

 


Syllabus, Spring 2009
CSci 4131: Internet Programming
 
Instructor: Dr. Carl Sturtivant, carl@cs.umn.edu

Textbooks:

"JavaScript the Definitive Guide" (5th Ed.), Flanagan, O'Reilly 2006


Purpose:

This course is about understanding the internals of internet programming, not just learning to use abstraction layers or frameworks of various kinds created by others to hide sockets, internet application layer protocols, or web browser programmability. As such, we will make direct use of sockets, and we will program directly with application layer protocols and directly program the web browser in this class. If you successfully master these, you will be in a position to rapidly understand what such frameworks and other abstraction layers do for the internet programmer, without merely seeing them as opaque.


Very Approximate Schedule, updated as the course proceeds

Week

Topics

1 & 2

JavaScript: the language

3

Client side JavaScript in HTML documents: the DOM

4

Introduction to server-side scripting

5 & 6

CGI programming including AJAX

7

CGI programming using continuations

8

CGI programming with databases

9 & 10

Socket programming, clients, servers.

11 & 12

SSL, TLS and miscellaneous security

13 & 14

Miscellaneous topics in internet programming

15

Review


Vital Prerequisites

  • Mature experience with C++ or Java, or with another object-oriented language.
  • Some very basic knowledge of HTML, or willingness to acquire such.

Evaluation will consist of small programming assignments (10), and a final examination.

Due dates for assignments are strict: all assignments must be received electronically (through electronic submission, not via email) before midnight on the day they are due in order to receive credit. Keep a copy of your submissions, and keep the electronic receipt of your submission! You will have 10 days from the point of your grade having been allocated to complain about any problem with your assignment's grade as it is recorded online in GRIT: after that the existing recorded grade will not be adjusted.

The overall grade will be based upon the following:

70% for programming assignments, and 30% for the final exam. 60% is required for C- or S. Overall percentages are computed
without rounding to the nearest integer.

Grading is absolute (i.e. not on a curve), and is performed by the TAs. If you have a question about grading, address it to the TAs. Only if something wholely unreasonable has occurred will the instructor intervene. And this has not yet proved necessary.
Furthermore, there is a limit of ten (10) days from the grade of an assignment being posted on GRIT for grading problems to be rectified. After that period, such will not be considered.

Grading is as follows: 95.0% or above yields an A, 90.0% an A-, 85% : B+, 80% : B, 75% : B-, 70% : C+, 65% : C, 60% : C-, 55% : D+, 50% : D, and less than 50% yields an F.

Incompletes (or make up exams) will in general not be given. These options will be considered only when a provably serious family or personal emergency arises, proof is presented, and the student has already completed all but a small portion of the work.

Scholastic conduct must be acceptable. Specifically, you must do your homeworks, programming assignments and examinations yourself, on your own. Any code that is not your own must be treated as a quotation would be in an essay: i.e. fully acknowledged.

 

 
The University of Minnesota is an equal opportunity educator and employer.
Internet Programming