CS 99

Fundamental Programming Concepts
Summer 2000

Syllabus

[Catalog Description][Web Resources][Teaching Staff][Textbooks][Course Meetings][Labs][Exams][Final Project][Grades]
 
Catalog Description
COM S 099. 2 credits. S-U grades only. This course is designed for students who intend to take COM S 100 but are not adequately prepared for that course. Basic programming concepts and problem analysis are studied. The programming language used is Java. Students with previous programming experience should not take this course.
 
Internet Resources
All course materials will be available at: http://www.cs.cornell.edu/courses/cs99/2000su. You should get into the habit of checking your email, the course web page, and the course newsgroup on a regular basis (at least once a day). For email and news, you will need to have a Cornell NetID and password. If you do not have these yet, you need to go to the CIT helpdesk in the CCC building. While you're there, you can also pick up a Bear Access CD. This has the software you'll need to access these resources from your own computer. For submitting labs, you will also need your Instruct password. You will get this from the course staff on the first day of lab.
 
Teaching Staff
The preferred way to make contact is the course newsgroup at cornell.class.cs099. You can also contact the course staff via email to cs99@cs.cornell.edu, but be sure to include “CS99” in the Subject line. You should read the policies about these before using them.

 
Name Title Email Office Office hours
Michael Clarkson Instructor clarkson@cs.cornell.edu 5151 Upson MR 3-4pm
Rick Aaron TA aaron@cs.cornell.edu 4157 Upson TW 2-3pm

 
Textbooks
Official course text:
  • Lecture notes by Kay Wagner. Available from Custom Publications at the Campus Store. This text may not be available when class starts, in which case you should purchase the optional text.

Optional course text:

  • Java Software Solutions: Foundations of Program Design. J. Lewis and W. Loftus. Addison Wesley,
    1999. ISBN 0201612712. On reserve at Carpenter Library. This is also one of the texts for CS100, so it's a good investment. 
Other texts you might find helpful:
  • Programming with Java. B. Holmes. Jones & Bartlett, 1998. ISBN 0763707074. On reserve at Carpenter Library.
  • Java 2: The complete reference. Third edition. P. Naughton and H. Schildt. Osborne/McGraw Hill, 1999. ISBN 0072119764.

If you want to work on programs at home, you have these options:

  • Purchase the Metrowerks CodeWarrior compiler from the Campus Store (approx. $120)
  • Download the JDK from Sun

The download is free, but you'll probably find it difficult to use. It has no IDE, which means you get no editor or sophisticated debugger. Unless you're accustomed to using the Windows command shell, you'll probably be better off buying Metrowerks. The course staff is not responsible for helping you to work from home, including installing software and submitting labs.

You will also want to purchase either several floppies or a ZIP disk. You'll need these for email, news, and storing your programs.

 

Course Meetings
Lectures will be held on Monday and Wednesday of each week in Upson 215. Labs will be held on Tuesday and Thursday of each week in Upson B7. Section 1 will meet from 10:00-11:00am, and section 2 will meet from 11:30-12:30pm.
 
Labs
Labs will be programming assignments where you will put into practice the concepts discussed in lecture. They will also introduce new material. Labs will be posted on the web the day before they are held (e.g., Thursday labs will be posted on Wednesday). During class on the day of the lab, the course staff will be present to assist you as you work on the lab problems. Since it is unlikely you will finish during the single hour that the lab is scheduled, labs will be due at the beginning of the next lab session (e.g., a Thursday lab would be due on the following Tuesday). Since you'll need to keep files that you're working on from lab to lab, you'll also want to invest in some disks.
 
Exams
There will be two prelim exams and no final exam in this course. Exams will be in-class and closed-book. They will cover material from readings, lectures, and labs.
 
Final Project
In lieu of a final exam, this course will have a final project. This will be a large programming assignment. It will be due at the approximately the same time the university has scheduled the final.
 
Grades
Course assignments will be weighted as follows:
Assignment
Weight
Labs
50%
Prelim 1
20%
Prelim 2
20%
Final Project
10%
Total
100%

There will be 10 labs @ 5%.

Pursuant to university regulations, a grade of C- or above will become an S grade, and a grade of D+ or below will become a U grade. It will not be know until after Prelim 2 what the mapping between percentage and letter grade will be. However, at that point, a list of who is passing the class (i.e., has a C- or above without even doing the final project, assuming the lab grade stays constant), and who is not, will be provided. This will give you an idea of your final grade but it is not a guarantee! 

Late policy: No late assignments will be accepted. There is no room for error in the relentless pace of a six-week course. All assignments are due at the beginning of class. 

Regrade policy: You may submit an assignment for a regrade within 72 hours of when it was handed back to the class.When you do so, you must attach a statement detailing what you believe was graded incorrectly. Your assignment will then be regarded, and your grade adjusted. The adjustment may be up or down! In particular, frivolous requests will be treated harshly. 

Academic integrity: CS99 students must adhere to the department’s policy on academic integrity. In particular, you can talk to one another about how to use the computing environment or about high-level ideas for solutions, but you may not show one another your code, work together on writing code, or share code with one another. If you are unsure of an action, ask a member of the course staff for clarification. So long as you are honest in presenting your work, you are not in violation of academic integrity.