CS 157 - Information Concerning Course Objectives, Assignments, and Grading

Course Objectives.  The goal of this class is learning problem solving techniques using a computer language.   The most important computer science concepts in this course are program design and abstraction.   You will be able to write, use, and read programs which are built using Java classes.

Language and Compilers.  The programming language used is Java.  We use BlueJ, a development environment for exploring Java, coupled with the Java Software Development Kit, version 1.5 or later, available free from Sun Microsystems.  Note that the code you produce this semester should run on Windows and Macintosh computers as long as the same libraries are available.

Class Web Pages.  The syllabus, policies, lab exercises, lecture notes, homework, and sample code are posted as links from the class website.

Attendance.  Students are allowed two unexcused absence per semester.  Subsequent absences, if unexcused, may be reported to the Office of the Dean of Students, which will then issue a cut warning.  A student with too many such absences may be dropped from the course.

Reading AssignmentsRead the sections of the textbook as assigned.  While doing the reading, I encourage you to look at the exercises and problem statements at the end of each section and chapter. Be sure to ask questions about what you don't readily understand.  There will be 4-5 quizzes over the reading given during the semester.

There is a whole bookshelf of useful material on the Java language (there is also much useless material), especially on the Internet.  Much of it is geared to industrial applications and is too advanced for this class. If you feel the need for supplementary material, just ask and I'll help you find something suitable.

Homework Assignments
There will be 10 assignments, graded out of 40 points.  Late assignments are docked 4 points per day late but each student has three grace days per semester.  Note that no assignment more than 4 days late will be accepted for grading.

Students may discuss ideas for solving an assignment among themselves. However, each assignment must be your own work unless collaboration is specifically allowed in the assignment. Turning in any portion of work written by another is an Honor Code violation and grounds for disciplinary action as allowed by University policy.

Lab Section.  The purpose of lab is to practice using the concepts being introduced in lecture and the textbook.   Lab policies will be explained at the beginning of the first lab session.  Since programming can only be learned well by actually doing it, attendance in lab is more important even than in lecture.

Exams, Quizzes, and the Final Exam.  There are two in-class exams and a variable number of quizzes over the reading.  To make up a missed exam, you must present me a documented excuse explaining the absence, preferably in advance, if they are to make it up. The final exam is scheduled by the registrar during the last week of the semester; see the syllabus for your final exam time.

Grading.  Final grades are assigned by computing the mean of the top 10% of the class scores, which is used to determine the cutoff points for each letter grade; final scores are based on the performance of the class as a whole.  The instructor reserves the right to move grades up or down in the distribution based on factors such as attendance, improved (or not) scores through the term, etc.

Stephen P. Carl