Home

Overview

CPS 1, Fall 2001

Course Overview

Instructor
Jeffrey Forbes
forbes@cs.duke.edu
LSRC D235

(919) 660-6550


Office Hours: 

MW 2:15-3:15

 or by appointment

Lectures
LSRC B101
1:10-2:00 M,W,F

 

 

Labs
130 North Building

2:20-3:40 M,W,F

2:15-3:35 T, Th

 

Grad TA
Donald Onyango
dco@cs.duke.edu
LSRC D103
Office Hours: Th 9-11am
Head Undergrad TA

TBA

 
Summary of sources of help: office hours, list of lab TAs, and review sessions
 
Textbooks
Great Ideas in Computer Science by A. Biermann, 2nd ed, MIT Press, 1997. (Note: instructor's manual with answers is on reserve in Perkins)
Course Pack (available from Book Store)
OPTIONAL: Programming.Java by R. Decker and S. Hirshfield, 2nd ed, PWS, 2000.

Central Theme
A survey of the great ideas of computer science along with experience with what computers and computer networks are, how they work, what they can do, and what they cannot do.

Course Outline
  1. Web fundamentals
    HTML- setting up your own home page
    Browsers
    Java applets
  2. Computer programming in the language Java
    Decision trees
    Object-oriented programming
    Text manipulation
    Numerical computation
    Databases
    Software engineering
    Simulation
  3. Understanding what a computer is and how it works
    Electric circuits
    Machine architecture
    Language translation
    Operating systems
  4. Survey of computer science
    Complexity theory & Coimputability
    Graphics
    Artificial intelligence
    Scientific computing
 

Topics Not Covered
Operation of commercial software packages and how to be a hacker

Who Should Take This Course
This course is designed for students who have little or no experience in computer science and who want a general overview of the field. Little or no mathematical background is required. However, students should be prepared for a rigorous coverage of computing including extensive programming, detailed studies of the internals of the computer, and various advanced topics. Students should be prepared to learn several mathematical notations in the course and to use them extensively.

About the Instructor
See Forbes's home page

This Web Site
This web site includes general information about the course, information about the professor and the TA staff, all of the class handouts (as they become available), all of the lab assignments (as they become available), and current news and announcements.

First Assignment
Read: Chapter 1 in the Course Pack (CP)
Skim for basic ideas: Chapter 11 of Great Ideas in Computer Science (GI)
Read: HTML Notes on Web
Labs begin on Monday, September 3.

Grading

  Item Approximate Weight
Programs, problems 10%
Programming test (in the last lab. meeting) 10%
Project 20%
Quizzes (every other week at the end of the Thursday lecture) 20%
MT Exam (Wed, Oct. 10) 15%
Final Exam (Mon, Dec 10, 7pm ) 25%


Grading Policies
  1. Each student must write his or her own programs without help from other persons. After a program is typed into a machine, students may help each other to find bugs but not to write new code. Homework problems must be done without help from others.
  2. No make-up exams will be given. If an exam is missed for reasons beyond the student's control, a copy of a Dean's Excuse should be handed in. The final grade will be based on the other scores earned.
  3. The lowest quiz will not be counted. No make-up quizzes will be given. If a quiz is missed for an excusable reason, be sure to hand in a written excuse. The quiz average will then be based on the quizzes actually taken.
  4. Labs must be turned in 7 days after the designated lab period. No late labs will be accepted.
  5. The grade of I (incomplete) will be administered as specified by University rules. Thus it will not be given to those students who simply did not complete the course on time.
  6. Unethical practices by any student (such as copying on an exam or copying a homework) will be dealt with strictly usually by turning the case over to the Judicial Board. (Special caution: Often two or more versions of the quizzes or exams are given on a given day. If you accidentally see an answer different from yours on another paper, both may be correct. Your neighbor may be taking a different version of the test from you.)
  7. The final exam is not optional and every student will be required to take it at the scheduled time unless a written excuse is presented from the Dean.
  8. Final grades are assigned  on an absolute, but adjustable scale. This means that there is no curve and thus need to compete with your fellow classmates. Anyone earning 90% or more of the total number of points available will receive a grade in the A range; 80% or more guarantees a grade in the B range, 70% or more guarantees a grade in the C range, 60% or more guarantees a grade in the D range. This scale may slide down, but it will not go up.

Records
Keep copies of all homework assignments, quizzes, labs, and tests until after the end of the course. Occasionally assignments are misplaced and errors are made in grading or recording your grades. You will be expected to have copies of all of your work. You will be given grade feedback. You will be expected to compare these with your personal copies and notify us of any errors.

Course Syllabus

It is important that you do not get behind in this class, as each day's material will build on previously discussed work.  The secret to successfully surviving this course is to start early and work steadily; it can be difficult to cram or skim in Computer Science classes. If you are having trouble, be sure to talk to the professor or some other member of the staff as far before the due date as possible. Do not give up, ask for help.
 


Feedback?