Labs
Lab Slides: here
Labs are an opportunity for you to apply what youβve learned in lecture in code (and other forms). All labs have a conceptual and a coding component unless otherwise specified. All lab assignments must be uploaded and autograded using Gradescope; the Gradescope link can be found on the worksheet. The Practice Midterm and Practice Postterm will count towards your lab grade. You will need to take both the coding and non-coding portions of these practice exams to receive credit. Credit for the practice exams is based on completion only, not the score you received on the practice exam.
From the syllabus: Tuesday lab assignments are due on Thursday at 23:59, and Thursday lab assignments are due the following Tuesday at 23:59. All labs that do not explicitly say βoptionalβ on the schedule page will be graded, with the exception of Lab 1. Lab 1 is not optional, but there is no submission or credit. Attendance is not required for optional labs. The graded labs include three practice exam labs (Midterm Practice (no code), Midterm Practice (code), and Postterm Practice), which are graded based on completion only. Your lowest two lab assignment scores will be dropped.
The worksheets linked below are high-level overviews and can be seen as a set of instructions for lab. Each worksheet lists all the required blocks, functions, or tasks for a particular lab. The worksheets also contain some of the test cases used to grade the lab.
The workbook, which differs from the worksheet, is used as a step-by-step guide to complete each lab. Lab worksheets will be released at 3:00 PM on the lab day.
| Labs | Release Date |
|---|---|
| Lab 1: Welcome to Snap! | THU 1/22 β Nothing to submit |
| Lab 2: Build Your Own Blocks | TUE 1/27 |
| Lab 3: Conditionals, Reporters, & Testing | THU 1/29 |
| Lab 4: Iteration | TUE 2/3 |
| Lab 5: Lists & HOFs | THU 2/5 |
| Lab 6: Algorithms | TUE 2/10 |
| Lab 7: Algorithmic Complexity | THU 2/12 |
| Lab 8: Boards | TUE 2/17 |
| Catch-up Session (Optional) | THU 2/19 β Nothing to submit |
| Lab 9: Trees & Fractals | TUE 2/24 |
| Lab 10: Recursive Reporters | THU 2/26 |
| Lab 11: Testing + 2048 | TUE 3/3 |
| Lab 12: Functions as Data, HOFs | THU 3/5 |
| Midterm Practice (no code) | TUE 3/10 |
| Midterm Practice (code) | THU 3/12 |
| NO LAB | TUE 3/17 β Nothing to submit |
| Lab 13: OOP in Snap! (Optional) | THU 3/19 |
| Lab 14: Welcome to Python | TUE 3/31 |
| Lab 15: Data Structures in Python | THU 4/2 |
| Lab 16: Concurrency | TUE 4/7 |
| Catch-up Session (Optional) | THU 4/9 β Nothing to submit |
| Lab 17: Text Processing in Python | TUE 4/14 |
| Postterm Practice | THU 4/16 |
| Lab 18: Linear Recursion in Python | TUE 4/21 |
| Lab 19: FUN Data Science | THU 4/23 |
| Lab 20: Snap + Python Libraries (Optional) | TUE 4/28 β Nothing to submit |
| Project Work Session (Optional) | THU 4/30 β Nothing to submit |