UW Home     CSE Home   Announcements    Message Board    Contact Info 

 
 
Computer Science & Engineering 142
Computer Programming I
Instructor          Stuart Reges
email                reges@cs.washington.edu
phone
               685-9138
office                Allen Center room 552
office
hours       Mondays and Wednesdays 1—3

Lecture and Sections

Lecture A         MWF 9:3010:20, Kane 110
Lecture B         MWF 11:3012:20 EE1 105
Sections           various times and locations on Thursdays

For this course you will be expected to participate in a weekly 50-minute discussion section.  Attendance at section is not required, but TAs will assign a section participation score to each student at the end of the quarter that will have equal weight with the weekly assignments (see description in the grading section below).

Textbook

We will be using a textbook-in-progress for this course.  Chapters will be posted on the class web page and will be available for purchase from Professional Copy ‘n Print, 4200 University Way (http://www.qcnp.com).  The chapters will be available in installments and announcements will be made in lecture when new installments are available.  The first installment will be available any time after noon on Thursday, 9/30/04.

Course Overview

This course provides an introduction to computer science using the Java programming language.  CSE142 is primarily a programming course but the focus is on the problem solving techniques common in computer science.  We will endeavor to teach some practical aspects of the Java language, but students should not expect to be competent Java programmers after just one quarter of exposure.  No prior programming experience is assumed, although students should know how to use a computer and should be competent with math through algebra 1.

Course Web Page

Information about the course will be kept at http://www.cs.washington.edu/142.  Links to course handouts will be kept on this page along with useful links to other class resources.

Grading

You will be expected to complete a variety of programming assignments for this course and to take two open-note, open-book exams.  The resulting scores will be combined according to the following weightings:

40%     weekly homework assignments
20%     midterm (in class on Friday, 11/05/04)
40%     final exam (on Wednesday, 12/15/04, time to be announced)

If you need to miss an exam, you must contact Stuart prior to the exam to get permission.  Even if you are sick at home, you should be able to call Stuart’s office phone number to leave a message that you need to be contacted.

The weekly assignments will generally be graded on a 20-point scale, although a few assignments may be worth fewer points.

Every student will be assigned a section participation score that is weighted the same as a regular weekly assignment (20 points).  You will receive 3 points for each of the first 6 sections you attend and 2 points for the 7th section you attend (max of 20 points).  Notice that once you reach the maximum, you get no extra credit for attending more sections.

Late Policy

Each assignment will list its due date.  Most will be due on Mondays at 9 pm.

Each student in the class will have a total of five “free” late days (a late day is 24 hours of lateness).  There are no partial days, so assignments are either on time, 1 day late, 2 days late, etc.  Because of this generous late policy, students will not be granted extensions for assignments unless they have some highly extenuating circumstances.  Once a student has used up all of his or her late days, each successive late day will result in a loss of 1 point.  All assignments must be submitted by the last day of class (Friday, December 10th), whether or not a student has free late days left.

Computer Access/Software

The department operates an Introductory Programming Lab (IPL) that is located on the third floor of Mary Gates Hall.  Consultants will be available at the lab to help students with problems.  The recommended software for the course is the TextPad editor for Windows and Sun’s JDK 1.4.2 compiler for Java.  More information can be found on the class web page.  You are responsible for keeping backup copies of your work, either on your Dante account, floppy disks, or other media. Your files are not retained on the lab machines.  When you use a public machine, be sure to log out when finished.

Handouts

Handouts for the course will be sequentially numbered to make it easier for you to figure out if you are missing something.  The class web page will also have links to all class handouts as they become available.

Policy on Collaboration

From the class webpage you will find a link to the department policy on collaboration which will be applied in this course.  You should familiarize yourself with this policy.

You are to complete programming assignments individually.  You may discuss the assignment in general terms with other students including a discussion of how to approach the problem, but the code you write must be your own.  In other words, you may communicate in English with other students, but you are not to share your code with another student. .  Under no circumstances are you to write code with another student on a programming assignment or to show another student your solution to a programming assignment.

Course Administrator

Pim Lustig (pl@cs.washington.edu, 616-3225) is the course administrator and will handle many details including registration and switching sections.