CSC221     Introduction to Computer Science           Spring 2006

Links:   Readings, Exercises,  Assignments    Computer Science Lab Information      Java API
             TA Office Hours                                   Bluej (documentation/downloads)         Objectdraw API
              objectdraw.jar download                     Java 1.5 download

Welcome to CSC 221. This handout contains important information about the course.

Instructor and Office Hours

  Lonnie Fairchild
Office: Redcay 147
Phone 564-2783
Email lonnie.fairchild@plattsburgh.edu
Office hours: M 3-5,            W 1:45-2:45,
Th  4:30-5:30 (usually in Hawkins 053B),   
        Fri;   10:30-11:30,     

These office hours may not be convenient for everyone. Students are welcome (and encouraged!) to make appointments for other times.  

Course Content    This course is intended for any student with a serious interest in Computer Science, and is required for Computer Science majors and minors. The primary intent of this course is to teach students how to design, write, and test small programs, using the Java programming language. Techniques of object-oriented and event-driven programming are emphasized.  Attention is given to design strategy, program modularity, and documentation.  Students will also learn how to use system software for program development.  

Prerequisites: CSC121  or  CSC122  or   familiarity with computers and programming

Course Format:   There are 3 hours of  lecture per week (Tues., Thurs. 3 - 4:15, Hawkins 153B)  Each student must also be registered for the lab section:   CSC221LA   (Wed.  3 - 5:50,  Hawkins 053B)     
Note that attendance in lab is required.  Students should not schedule any other courses, work, or other activities during lab time.

Required Text    
K.B. Bruce, A.P. Danyluk, T.P. Murtagh, Java: An Eventful Approach, Pearson/PrenticeHall, 2006

Programming    Although computer science covers far more than just programming, it is impossible to learn computer science without writing lots of programs.  You will be expected to write programs as part of the weekly lab assignments.  Grades on programming assignments will be based both on programming style and the correctness of the output. Writing well-designed correct programs takes time, usually more than the programmer expects. Therefore it is important to begin all assigned programs early, so that you can consult the instructor about any problems you encounter.

Labs  Attendance in lab is required.  Except in very unusual circumstances (see the instructor) you must attend lab in order to get credit for the lab assignment.  Students are expected to turn in some work for each lab assignment.   In case of repeated failure to do so, the final grade may be lowered.

Each laboratory consists of three parts: Pre-lab, In-Lab, and Post-Lab

Pre-Lab:   A lab preparation assignment will be given in class on Tuesday.  The lab preparation will usually consist of reading and handwritten exercises.  Sometimes, it may involve preparation of a program design on the computer.  Careful lab preparation will be very important in using the time spent in lab effectively.  Sometimes pre-lab assignments will count as part of the lab grade.  If you have questions about the Pre-Lab, it is important that you see the instructor for help at the start of the lab.

In-Lab:   The lab assignment will normally be handed out with the lab preparation assignment.  It will contain one or more programs for you to work on, with guidance from instructors and teaching assistants.  Normally you will be able to complete most or all of the lab assignment during the lab period.  If you complete the lab, you must ask the instructor to check it before you leave lab.  During the final portion of the lab (30-40 minutes) the instructor will go around the lab and give grades on the work that has been completed.  Do not make plans to leave the lab early unless your work is completed and either submitted through our electronic submission procedure or graded by the instructor -- doing so (without special arrangements with an instructor) will result in losing credit for the lab.  (However, it is fine to leave lab for a few minutes in the middle to take get a snack, take a break, etc.)

Post-Lab:   When your in-lab is not completed, or requires improvement, you will be given five days (normally) to complete it and submit it electronically so it can be graded. Unless a different due date is announced, each such post-lab assignment will be due at 11:50  PM on the Monday following the lab in which it is assigned.  Instructions for submitting labs will be included in the assignment. The penalty for late assignments will be 5 points per day.  Except in very special circumstances, assignments more than 4 days late will not be accepted.  

Grading  The final course grade will be computed as follows:
                   Quizzes                                     25 %
                   Midterm  (on 3/9)
                     10 %
                   Final exam                                15 %
                   Completed lab assignments        25 %
                   Programming tests (2)                20 %
                   Class and lab participation           5 %

Quizzes  A written quiz will be given at the start of class every Thursday unless an exception is previously announced.  Questions will come from the assigned readings and exercises, material discussed in the previous lectures, and completed pre-lab and lab assignments.  The weekly quizzes, midterm, and final are all  "closed book".  Any materials that you need will be provided by the instructor.  Make-up quizzes will not be given.  If an unavoidable emergency comes up and you must miss a quiz, you must let me know (phone or email) as soon as possible. Unless the emergency is terrible, this should be before class. If I believe missing a quiz is justified, I will count the next quiz double.  Otherwise a missed quiz gets a grade of 0.

Exams   The midterm will cover the material in chapters 1-9.  A comprehensive final exam will be given during finals week at the time scheduled scheduled by the registrar for this course.

Programming Tests  These will be given during your lab session in Weeks 7 and 14.   They are equivalent to open-book exams in which you will be asked to complete a short program.  You may use any textbook or course handouts, your notes, any programs you have written,  materials in the course account, and the Java API.  There will be no regular lab assignment during those weeks.  Students who have at least a B average and do well on the first lab test, will be given the option of substituting a programming project for the second lab test.  More information on this will be given in class.

Class and lab participation (Attendance Policy)    Students are expected to attend all classes and labs.  They should also show respect for fellow students and the instructor by arriving on time.  In addition to quizzes, there will be regular in-class activities that count in the "class and lab participation" grade.   Students who miss a class or lab are expected to make up the work by the next class. The instructor is glad to help anyone who needs to make up work due to unavoidable emergencies (illness, etc.).  As with quizzes, if an unavoidable emergency comes up and you must miss a class or lab, you must let me know (phone or email) as soon as possible and (unless the emergency is terribly) before the class or lab.

Cheating Policy:

All work submitted on tests and assignments is to be your own. Cooperative study and mutual aid are healthy learning methods and are strongly recommended. Copying someone's work,  allowing someone else to copy or use your work, or presenting shared or copied work as your own, are all regarded as plagiarism and are not permitted.  In particular, you should never have an electronic or paper copy of someone else's work or make it possible for another person to obtain a copy of your work.   The following rules explain what kind of help from others is appropriate for the different kinds of work in this course:

If you have questions on how to interpret the above rules in a particular situation you should consult the instructor.   If you are unsure whether you may have gone beyond the boundaries of appropriate informal discussion on a post-lab assignment, you should talk to the instructor and put an explanatory comment in your program. Any suspected cheating will be investigated, and can result in a grade of E in the course or dismissal from the college.

Other  Remember that the course is supposed to be both fun and challenging.  It will be important to keep up with the work and to ask lots of questions so that you spend your spend your study and programming time effectively (and not confused because of small details).

This page last modified on 01/25/2006 .