CS 211 Syllabus
Fall 2007

Basic info

Instructor: Chris Lauderdale
 
Lecture time/place: SEC 210, Mondays & Wednesdays 8:10–9:30 PM
Recitation times/places: Section 1: SEC 210, Monday 9:40–10:35 PM
Section 2: SEC 216, Wednesday 6:55–7:50 PM
 
Course site: http://eden/~lauderda/f2007_cs211/
E-mail: ''@rutgers.edu
Office: Hill 270 (CS side, across from the elevators)
Office hours: Tuesdays 5:00–7:00 PM, or by appointment
 
 
Teaching assistants:
Section 1: Hongyi Xue, Hill 203 (e-mail, site)
Section 2:     Rekha Bachwani, Hill 403 (e-mail, site)
 
Text: Bryant & O’Hallaron; Computer Systems: A programmer’s perspective. ISBN 0-13-034074-X.
 
Course prerequisites: CS 112 (Data Structures), with a grade of C or better

Course description

This is a crash course in the inner workings of a computer, basically. Topics we’ll cover include:

I’ll be working mostly out of the text, but I’ll probably add some miscellaneous supplemental stuff. Some other books I recommend adding to your library that will help you, both with this course and in general:

Course requirements

Assignments 30% of grade There’ll be several of these; they’ll tend to be smallish projects that require programming and usage of skills taught in classes and recitations.
Quizzes 5% These will be administered in recitations, so show up! Things like this make sure you’re actually learning what you’re supposed to be learning.
Midterm exam 25% An exam, somewhere in the middle of the term.
Final exam 35% This will be cumulative, and will cover everything you should have learned in the course.
Participation 5% The section below covers this.
Exercises Letter grade boost I’ll assign exercises periodically, and in cases where your numeric grade falls on a border between letter grades, having done exercises could push you up into the next letter grade. (It’s also a good idea to get some practice on things before you take a test or quiz on them.)

Attendance and participation

You’re in college now; I assume you’re mature enough to attend classes by your own volition. If you just turn in homeworks and show up for the two exams, your maximum grade wil be an 90%, assuming you did everything perfectly. It’s entirely up to you, but I recommend attending things.

Note that participation is 5% of the grade because learning is not a passive process. I expect students to ask questions, raise concerns, and generally interact with me, TAs, and other people in the class. This helps you understand the material better, it helps instructors and TAs understand what they need to cover and focus on better, and it often introduces new viewpoints that help other people in the class learn.

Assignments and tests

Most of the assignments will have to be written in C. This is an architectures course, so you have to be coding in something that compiles to actual machine code. That, and C is one of the most important languages you can learn, so you need to know it.

Assignments may be turned in up to two days late for a 30% point deduction; after that, I won’t accept late things. If you have a university-sanctioned excuse for missing a test or assignment due date (religious holiday, documented illness, catastrophe, losing an eye, etc.), talk to me. If at all possible, talk to me about such things before the due date or test date.

Grading schemes for assignments and quizzes are decided by TAs, so each section will be graded independently.

Academic dishonesty

First off, read the Department of Computer Science’s academic integrity policy.

Unless I explicitly allow you to do so, you may not work together with anyone else on your assignments. You can’t turn in somebody else’s work as your own, and you can’t turn in work you’ve already turned in somewhere else. I encourage you to discuss the assignments themselves, as well as general techniques you might use to implement them, but you may not share source code with other people!

If you’re unsure as to whether something you’re doing is allowed, ask me or a TA. We will check for cheating, and I do take such matters very seriously. (Even if we don’t catch you, you’re only hurting yourself by not learning how to do things.)

This all having been said, I do expect you to use resources available to you to assist you in completing things. Google and the Wikipedia have been around for a while now, and both are good jumping-off points for research.

Be ye not afraid!

If you’re having problems with the material, if you have questions about grades, or if you feel like you’re being treated unfairly for some reason, don’t hesitate to contact me or a TA for help. Helping is what we’re getting paid to do.