Lab assignments are designed to reinforce and deepen your understanding of important concepts covered in lecture. Each lab assignment includes specific goals that you should keep in mind while completing the assignment.
Labs can also identify areas where you need help. If you are having trouble, get help! After you get help, try working through additional exercises to make sure you have mastered the concept.
When labs are available early, you are welcome to work ahead. However, please keep in mind that lab assignments and due dates are subject to change until they are actually assigned. Please check the following table and the news for the most recent information.
Please remember to put the proper cover sheet when you turn in lab material.
Lab | Assigned | Design Due (In class) 10 AM |
Implement (In Lab) |
Demo (In Lab) |
Lab Due (In class) Friday 10 AM |
|||||
---|---|---|---|---|---|---|---|---|---|---|
Lab 0: Getting Started | 2 | Sep | None | 3-4 | Sep | 3-4 | Sep | 6 | Sep | |
Lab 1: Expressions, Functions, and Procedural Abstraction | 9 | Sep | None | 10-11 | Sep | 17-18 | Sep | 20 | Sep | |
Lab 2: Norm - The Emote | 13 | Sep | None | 17-18 | Sep | 24-25 | Sep | 27 | Sep | |
Lab 3: Objects with state: Emote Encounters | 23 | Sep | None | 24-25 | Sep | 1-2 | Oct | 4 | Oct | |
Lab 4: Persian Recursion | 30 | Sep | 4 | Oct | 1-2 | Oct | 8-9 | Oct | 11 | Oct |
Lab 5: Iteration -- Julia Set | 7 | Oct | 14 | Oct | 15-16 | Oct | 22-23 | Oct | 25 | Oct |
Lab 7a: Stacking the Deck (Part 1) | 21 | Oct | None | 22-23 | Oct | 29-30 | Oct | 1 | Nov | |
Lab 7b: Stacking the Deck (Part 2) | 28 | Oct | None | 29-30 | Oct | 5-6 | Nov | 8 | Nov | |
Lab 8: Hearts | 4 | Nov | 8 | Nov | 5-6 | Nov | 12-13 | Nov | 15 | Nov |
Lab 11a: Final Project (Part I) | 11 | Nov | None | 12-13 | Nov | 3-4 | Dec | 6 | Dec | |
Lab 11: Final Project (Part II) | 18 | Nov | None | 19-27 | Nov | 3-4 | Dec | 6 | Dec |
Your design must be turned in by 10 AM, in class, on the Friday of each lab's advertised design due date. Bring your design to class, and place it in the folder for your lab section.
You are encouraged to work with others on the design aspects of your labs; please refer to the course policy for collaboration.
Your code must be turned in by 10 AM, in class, on the Friday of each lab's advertised code due date. Bring your work to class and place it in the folder for your lab section.
While you are allowed to seek help from others on the design of your lab, the code you write must be your own, as specified in the course policy for collaboration.
The firm policy of this course is not to allow late work unless accompanied by a valid late coupon.
Since this is a 4-unit course, expect to spend about 10-12 hours per week outside of lecture on CS101. Most of that time will be spent on lab assignments.
The first few labs may take more or less time, depending on your previous exposure to computing.
You are encouraged to seek help when such resources are available. Thus, you may want to arrange your schedule so that you work on the labs when TAs or the instructor are available to help you.
If you are concerned about the amount of time that you are spending on labs, please see the instructor.