Computer Science 195 CSI: Introduction to Computer Science

Syllabus

Spring 1997


Instructor:
Brian L. Stuart
Office:
Math 419
Office Phone:
843-3725
Office Hours:
8:00-10:00 Monday; 8:00-10:00 and 1:30-3:30 Wednesday; 8:00-9:30 Thursday; 8:00-9:00 Friday, Feel free to drop in any time.

Text:
An Invitation to Computer Science by Schneider and Gersting and C Programming: A Modern Approach by King.
Objectives:
This course is a complete introduction to the field of Computer Science. At the end of the semester, the successful student will:
  1. possess a significant understanding of some fundamental concepts of computer science including
    1. Numbers and Logic
    2. Computer Architecture
    3. Compilers
    4. Operating Systems
    5. Uncomputability
    6. and others
  2. be able to design and write substantial computer programs using most features of the C programming language.
Course Organization:
This course is divided into a lecture component and a lab component. You must be registered for one section of each part. The Tuesday and Thursday lectures will meet from 9:40 to 10:40 and will be worth 2 hours of credit. The lab sections meet from 1 to 4, one on Monday afternoon and one on Thursday afternoon. The lab section is worth 1 hour of credit.
What this course is not:
This is not a course in how to use a Macintosh or any other computer. In this class, we will be using the Macs as terminals to the Sun workstations in the Math/CS department. I have online a guide to using this environment. We will not however, be discussing how to use word processors, spreadsheets or other Mac applications; the computing center provides short courses covering these topics.

It is also not strictly a course on computer programming. While programming will be the single biggest topic we cover, a substantial amount of our time will be spent on other topics in Computer Science.

Class Schedule:
For most of the semester, we will spend Thursdays focusing on programming and Tuesdays on a more academic survey of computing. The following is a tentative schedule of the lecture topics for this semester.

Grading:
For the lab, grading will be based on a number equally weighted labs. Some of these labs will involve writing small programs, others will involve excercises on the computer. I'll be showing you more about those in lab. The last week or two of labs will be dedicated to work on your team projects. The breakdown for the grading in the lecture section is as follows:
Mid-Term Exam                20%
Final Exam                   30%
Programming Project 1        15%
Programming Project 2        15%
Team Programming Project     20%
The assignment of letter grades will be nominally according to a 90, 80, 70 scale. If I feel that the resulting grades underrepresent the performance of the class, I will consider curving. However, don't count on the curve; in past semesters little or no curving has been necessary.

All work will be conducted according to Rhodes' Honor Code.



Brian L. Stuart