Links: [Course Home] [Assignments] [Schedule] [Resources] [Programming Tools] [Moodle] [CS 115W]
You are responsible for all material presented in lecture and are expected to get the notes from another student if absent.
You are also expected to spend additional time outside of class to master the lecture material. Reading assignments and learning objectives are posted for each week. You should read as much or as little as necessary to meet the learning objectives.
You can expect frequent small assignments or quizzes in lecture. You should bring at least a 4" by 6" notecard or a half-sheet of paper to each lecture for this purpose. Your lowest three grades on these small assignments will be dropped.
The weekly lab allows you to practice programming with immediate feedback from the instructor and other students. Lab attendance is expected. Each week's lab assignment will be posted online and linked from the course schedule and Moodle.
Unless otherwise specified, each lab assignment has several different components, which total 40 points.
Note: Grades on the labs tend to be high, but you should be sure to clear up any mistakes you make. The course material is cumulative, and small misunderstandings can add up to big mistakes over the course of the semester.
This is a Moodle "quiz" to prepare you for the week's lectures and lab. To prepare, you will be expected to read a preview of the material for the week and a high-level description of the problem to be solved in the lab.
Pre-labs are not supposed to be high-stakes assignments. They're auto-graded, and you can take them as many times as you want without penalty. They are meant to help you get the most out of the lectures and labs.
You should open the lab writeup in Moodle as soon as you sit down to do the lab. As you work through the lab, some of the lab instructions will ask you to go to your writeup and answer a question to check your understanding. There will also be some open-ended questions that the course staff will grade by hand. Just like the pre-lab, you can answer each question as many times as you like without penalty.
Most weeks, you will be asked to demo one or more working programs to the course staff. We will make sure your program works correctly on a set of basic tests.
Demos must be done in person. They will be accepted in any lab section, workshop, or tutoring hours up to the deadline (see the top of the Moodle page for the schedule). Due to space constraints, they will NOT be accepted during office hours.
Most weeks, you will also be asked to submit one program for more thorough testing and grading. Each lab will provide instructions on how to do this.
You are expected to have a docstring in each submitted program that contains your name, the lab number, and a brief description of what your program does.
Component | Posted by | Due by | Points (out of 40) | Late policy |
---|---|---|---|---|
Pre-lab | Th 9 AM | Tu 7 AM (online) | 10 | No late credit |
Lab writeup | Mon 5 PM | The following Tu, 4 PM (online) | 10 | Half credit up to one week late |
Lab demo | Lab, tutoring, or workshop by the following Tu, 4 PM (see Moodle for times) | 10 | ||
Lab code | The following Tu, 4 PM (online) | 10 |
You are encouraged to work with other students in the labs. However, you must turn in all lab work individually, and you must be able to explain and stand by all of the work you turn in for credit.
Programming projects require you to take the skills you've learned in lecture and lab and apply them at a larger scale. They are a rewarding and challenging part of the course, and they require perseverance and time management skills. Projects must be one student's individual work, and the collaboration policy will be strictly enforced.
The programming projects are larger assignments, but they will usually be broken into pieces as follows:
There is an automatic 48-hour grace period associated with the final code submission deadline. No other extensions will be granted.
Component | Due by | Late policy |
---|---|---|
Demo(s) | In person; last chance is Thu workshop | No late credit |
Final project code | Online; see project instructions | Up to 48 hours with no penalty |
Programming projects must be your own work unless otherwise stated, and academic misconduct is taken very seriously. You may discuss ideas and approaches with other students and the course staff, but you should work out all details and write up all solutions on your own. The following actions will be penalized as academic dishonesty:
The exams cover the material from lecture, lab, and the textbook. Exams are cumulative, although they will emphasize recent material.
You may bring one 8.5 by 11-inch handwritten sheet of notes (front and back). This is the only resource that you may consult, other than your brain.
Makeup exams will be given only in extraordinary circumstances, and the instructor MUST be notified in advance.