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