General Information
Instructor
Time
Days
Location
John Park
09:15 AM - 10:20 AM
MWR
Shillman Hall 105
John Park
10:30 AM - 11:35 AM
MWR
Cargill Hall 097
John Park
01:35 PM - 02:40 PM
MWR
Churchill Hall 103
Although all sections will cover the same material in the same order, the sections might be slightly out of synch at any given time. You MUST attend the lecture for which you are registered.
Computing Environment
We will use DrRacket/Version 8.15, a programming environment for a family of programming languages. We will use the HtDP teaching languages plus a small number of teachpacks.
We strongly recommend you install DrRacket on your own computer so that you can work on CS 2500 wherever, whenever you like. It is freely available on the web. Please make sure to install the version with the version number mentioned above (if this is not the most recent DrRacket version, click on Download -> All Versions to find it).
DrRacket runs on most popular platforms (Windows, Mac OS X, Linux, and other *nixes). Programs written in the teaching languages have mostly the same behavior on all platforms. You therefore do not need to worry what kind of machine you use when you run your programs.
Homeworks
The purpose of the homeworks is to give you hands-on experience with the course material you learned in lecture and lab, as well as to prepare you for the exams. There will be one homework per week, due Wednesdays at 9pm.
Late Work
Make it a high priority to not fall behind on homework: the course is fast-paced and presents new material every lecture day, making catching up harder and harder.
However, we know that your time is not always easily scheduled, and sometimes “stuff happens.” We will therefore allow you to turn in your work up to 24 hours after the deadline, at a 4% per hour penalty. The submission server automatically blocks any submission even 24-hours-and-one-second after the deadline (since the penalty would be 100% at that time). Submitting a fraction of a second after the due time counts as one hour late. The server uses its own clock to determine what time it is, so it is a bad idea to try to sneak in a submission in those last few seconds. Additionally, you may request an extension before the original deadline. You must request the extension via the following form: CS2500 24hr Homework Extension Request. If your request is filed after the original deadline, any late penalty accrued up to that time will stand. So, make sure you file the request in a timely fashion.
Labs
The labs start the first full week of class, on Friday, January 10.
You cannot attend lab due to unforseen circumstances (e.g. illness).
You are having trouble with your lab partner.
Lab
Head TA
Time
Days
Location
6
Teaching Assistant
1:35-3:15pm
F
WVH 210B
You signed up for a lab section during registration. You must attend the lab section for which you are registered.
The purpose of labs is to give you hands-on experience with the actual tools, and to explain some of the principles from lecture with hands-on examples.
You will work on your labs in assigned pairs. Your partner will be a classmate in the same lab as you; you may choose your own pairing, or your lab TA will assign you a partner. We may switch partners several times during the semester.
Pair programming means that you and your partner work on the questions jointly. You read them together, and you work on the solutions together. One of the labs’ purposes is to teach you how to work in pairs effectively, which will prepare you to be an effective part of a software-development team in your co-op or job. The rough idea is this: One of you plays pilot, the other co-pilot. The pilot guides the discussion, talking through the problem and asking questions about anything that is unclear. The co-pilot works on the keyboard and explains aloud what is going on. After a problem is solved to the satisfaction of both, you switch roles.
Khoury Account
In order to submit homeworks and lab quizzes in this class, you will need to have a Khoury account. You are eligible for such an account if you are a Khoury major, or if you are in a Khoury class (such as this one). You can apply for a Khoury account at this link, and you should do so during the first week of class, so that you have the account activated by the day of the first lab.
Exams
- 02/19 @ 6pm-8pm :
Location: [TBD]
- 04/07 @ 6pm-9pm :
Location: [TBD]
The exams will test material similar to that assigned in the weekly problem sets. If you can solve every homework problem on your own, you are ready for the exams. If not, you need to work harder to get there.
Lengths of the exams: The material in Exam 1 is designed for a length of 1h; for Exam 2, for a length about about 1.5h. In other words, a student who has worked through the readings and homework problems can solve the exam problems in 1h/1.5h, resp. To make sure that nobody feels rushed, however, we allocate twice that time, in case anyone feels they need time during the exam to double- and triple-check their work. (Students with special accommodations will still receive additional time to complete the exams.)
Grades
homeworks
30%
Exam 1
25%
Exam 2
35%
Labs
10%
The exact weights of assignments, quizzes and exams may change during the semester, depending on exactly how many of each we have. We will let you know when we update these weights, and will try to keep it as infrequent as possible.
The grades will computed on an absolute basis: there will be no overall curving. The instructor may choose to curve an individual homework or exam, but please do not bank on such a chance.
The mapping of raw point totals to letter grades is given below. Please note that these grade boundaries may move slightly at the discretion of the instructor, but the grade boundary for A is unlikely to change. Grades are not rounded: for instance, earning a 92.5% does not imply we will round up to a 93% and hence to an A.
93%
90%
86%
83%
80%
76%
73%
70%
66%
63%
60%
0%
A
A-
B+
B
B-
C+
C
C-
D+
D
D-
F