CSCI 2400:  Computer Systems

Fall 2013

Department of Computer Science, University of Colorado at Boulder


See the Moodle class Web page at

Schedule & Location: Tues, Thurs 12:30-1:45 pm, ECCR 265
Course number: CSCI 2400.  See also the registrar's Web site.
Prerequisites: CSCI 2270.
Instructor: Professor Rick Han,
Office: ECCR 1B05F
Office Hours: Tuesdays 2-3 pm and Wednesdays 2-3 pm either in my office or ECCR 1B09 (next door to my office).  Additional appointments as needed.
Phone: 303-492-0914

Other useful references:

TAs: Frank DiNatale, John Klingner, and Oliver Michel
TA Office/Hours:  Weekly recitation sections, and more as needed.  See moodle for announcements.
TA Email:,,

class Web site:
See the Moodle class Web page at http://moodle.cs.colorado.eduAssignments, lecture slides, and announcements can be found there.  The moodle has a variety of useful features, including a forum for posting questions.  Each student should establish an account on the moodle and then subscribe to our class on the moodle using the special enrollment key given out in class.

CSEL Accounts:
The Computer Science department maintains the Computer Science Educational Labs (CSEL) in the first floor of the ECCS Wing of the Engineering Center.  The CSEL consists of a cluster of primarily Linux machines.  It is a convenient facility for doing your programming assignments.  You may sign up for an account in the CSEL by going to the general CSEL Web site and following the instructions there to sign up for an account.  This will also give you Buff One card key access to the CSEL.

Class VM:
Instructions for downloading and installing the class VM will be posted on the moodle and gone over in the first recitation.


The lab assignments constitute 50% of your grade.
The two midterms are worth 15% each, and the final is worth 15% of your grade (45% total for exams).
The recitation questions make up the remaining 5%.

Grading for Lab Assignments:

Your primary assignments will be your "Lab Assignments," given every 2-3 weeks, each of which will be followed by a grading meeting to review your solution with the TA. The grade meetings are scheduled on the Moodle site before the assignment is due, and will begin immediately after the due-date of each Lab.  Even if your Assignment is submitted complete, you must attend your grading meeting to be given a grade. Any missed meetings (without notifying your TA ahead of time with a suitable reason) may result in a zero grade for that assignment.  The TA is under no obligation to reschedule your appointment if you miss your meeting, so write down your meeting times, and don't forget them!

The grades for each lab will be based 40% upon the Task Success (i.e. "does it work") and 60% upon your explanation and answering questions about the lab. Historically speaking, students that have completed the assignment themselves usually have little problem passing the Q&A portion of the grade.

Students may work in teams of up to two for the labs only, but each student will still be responsible for scheduling their own grading meeting with the TA for each lab.  You may help others only to the extent of answering typical questions that arise during compiling, debugging, and executing your lab assignments.  All non-lab assignments must be your own original work, unless otherwise noted.  All assignments are due by the deadline stated.  Extensions will not be granted except at the instructor's discretion in documented cases of extreme hardship, unless otherwise noted.

All labs must be written in C and compiled for execution on the class VM, unless otherwise noted.

More information on the grading policy may be posted as needed on the moodle as the semester progresses.

Plagiarism policy.

Additional Policies:

Disability Policy

Religious Observances Policy

Discrimination and Sexual Harassment Policy

Classroom Behavior Policy