General Information
This web page is deprecated.
Please see the main page for Fundamentals I.
Instructor
Time
Days
Location
Nate Derbinsky
9:15-10:20am/10:30-11:35am
MWR
ISEC 102/SH 335
John Park
10:30-11:35am/4:35-5:40pm
MWR
RI 458/SH 135
Clark Freifeld
1:35-2:40pm
MWR
SH 335
Leena Razzaq
1:35-2:40pm
MWR
SH 135
Labs
The labs start the first full week of class, on September 10th.
You cannot attend lab due to unforseen circumstances (e.g. you are sick).
You are having trouble with your partner.
Lab
Instructor
Time
Days
Location
3
Luciana Corteggiano
8-9:40am
T
WVH212
4
John Gallagher
8-9:40am
T
WVH210
5
Ryan Bradford
9:50-11:30am
T
WVH212
6
Iman Moreira
9:50-11:30am
T
WVH210
7
Jennifer Der
11:45am-1:25pm
T
WVH212
8
Jason Crouse
11:45am-1:25pm
T
WVH210
9
Amogh Dayal
1:35-3:15pm
T
WVH212
10
Jake Hansen
1:35-3:15pm
T
WVH210
11
Nicholas Thompson
3:25-5:05pm
T
WVH212
12
Jack Mastrangelo
3:25-5:05pm
T
WVH210
13
Daniel Goldstein
5:15-6:55pm
T
WVH212
14
Sidney La Fontaine
5:15-6:55pm
T
WVH210
15
Raquel Levy
7:05-8:45pm
T
WVH212
16
Aislin Black
7:05-8:45pm
T
WVH210
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 some hands-on experience with the actual tools, and to explain some of the principles from lecture with hands-on examples.
Computing Environment
We will use DrRacket (version 7), a programming environment for a family of programming languages. For Fundamentals I, we will stick to the HtDP teaching languages plus a small number of teachpacks. DrRacket is installed on Khoury computers.We urge you to download DrRacket to your own computer so that you can work on CS 2500 wherever, whenever you like. It is also freely available on the web in case you wish install it on your own computer.
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.
All that being said, should you have issues installing DrRacket on your machine, you may use the college’s virtual desktop infrastructure. We do, however, strongly recommend installing and using DrRacket on your own computer.
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 first lab.
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 exam. There will be one homework due per week, usually on Friday at 6pm.
Falling behind on homework is never a good idea: the course presents new material every day, making catching up harder and harder.
However, we know that your time is not always easily scheduled, and some weeks, “stuff happens.” We will therefore allow you to turn in your work up to 20 hours after the deadline at a 5% per hour penalty. The handin server will prevent any further submission even 20-hours-and-one-second late, so it’s not worth trying to sneak in a submission in those last few seconds.
Reading Quizzes
The purpose of the reading quizzes is to prepare you for the lectures. There will be one quiz per week, due on Sunday night. These quizzes will be short, and are designed as a quick way to gauge your understanding of the required readings.
This is the basic schedule but may vary from week to week, especially in the beginning of the semester.
We will not accept late reading quizzes, since you are able to take these as many times as you want before the deadline with immediate feedback.
Pair Programming
Starting about a month into the semester, you must work on your graded homeworks in assigned pairs (note: pair, not with my friends). Your partner will be a classmate in the same lab as you; your lab TA will assign you the first partner. We will switch partners once (see syllabus).
Pair programming means that you and your partner work on the homeworks jointly. You read them together and you work on the solutions together. One of the lab’s 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 doesn’t make sense. 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 must switch roles.
Exams
- 10/08 @ 6:00-9:00pm :
Location: see Piazza for location information
- 11/25 @ 6:00pm-9:00pm :
Location: see Piazza for location information
The exams will test material similar to that assigned in weekly problem sets. If you can solve every homework problem on your own, the exams will be easy. If not, you will have a difficult time.
You may bring one piece of paper to the exam, double sided, with anything written (or typed) on it that you want. We are limiting you in this way because (a) writing this one sheet of paper is an excellent way to study and (b) we have found that in the past, the more papers that students bring to the exam, the worse they do. We want you to focus on the exam, not on shuffling through everything you’ve ever written.
You may have noticed the discrepancy between "one-hour" and the actual times. The exam is a one-hour exam. A student who has worked through the readings and graded problems can solve the problems on the exam in less than an hour. To make sure that nobody feels rushed, however, we allocate three hours immediately for students with special needs as well as students who feel they need time on the exam to double and triple check their work.
Grades
reading quizzes
5%
lab quizzes
5%
homeworks
30%
exam 1
25%
exam 2
35%
Accelerated
If, during the the first 3 weeks of this course, you feel that you would benefit from learning at a more accelerated pace, you may be able to transfer into the accelerated section. To request a switch, you should talk to Professor Ahmed who teaches the accelerated section; she will need to meet with you before she can initiate a switch. Her email address is amal at ccs.neu.edu
Note that you will need to move to lecture section 1 (CRN 10461 10:30-11:35am, Mon/Wed/Thu). You will also have to choose from either lab 15 (CRN 10297, 9:50-11:30am Fri) or lab 16 (CRN 10646 11:45am-1:25pm Fri). Both the lecture and the lab must fit in your schedule and have space available in the room.
Until September 12th this change can be made effective immediately after Professor Ahmed approves.
After September 12th but before September 20th this change will be made effective September 23rd. Thus, you should continue to attend your regular lecture and lab, and turn in all regular homeworks, until the week of September 23rd.
After September 20th you can no longer change sections.