CS 61A: Structure and Interpretation of Computer Programs

Fall 2021, Instructors: John DeNero, Pamela Fox
Jump to calendar

Friday, October 22
  • The Ants project is due Friday 10/22 @ 11:59pm.
  • The (completely optional) CATS contest is due Friday 10/22 @ 11:59pm
  • Cats Composition Revisions deadline extended to Friday 10/29 @ 11:59pm.
  • Midterm 2 is 7pm-9pm Wednesday 10/27.

    • Please read this Piazza post regarding logistics.
    • To request a left-handed seat, remote exam, or alternate exam, fill out this form by Friday 10/22 @ 11:59pm.
Wednesday, October 20
  • The Ants project is due Friday 10/22 @ 11:59pm.

    • Early submission bonus point: submit everything by Thursday 10/21.
  • Homework 6 is due Thursday 10/21 @ 11:59pm.
  • The (completely optional) CATS contest is due Friday 10/22 @ 11:59pm
  • Cats Composition Revisions due Friday 10/29 @ 11:59pm.
  • Midterm 2 is 7pm-9pm Wednesday 10/27.

    • Please read this Piazza post regarding logistics.
    • To request a left-handed seat, remote exam, or alternate exam, fill out this form by Friday 10/22 @ 11:59pm.
Monday, October 18
  • The Ants project is due Friday 10/22 @ 11:59pm.

    • Complete Phases 2 & 3 by Tuesday 10/19.
    • Early submission bonus point: submit everything by Thursday 10/21.
  • Homework 6 is due Thursday 10/21 @ 11:59pm.
  • The (completely optional) CATS contest is due Friday 10/22 @ 11:59pm
  • Midterm 2 is 7pm-9pm Wednesday 10/27.

    • Please read this Piazza post regarding logistics.
    • To request a left-handed seat, remote exam, or alternate exam, fill out this form by Friday 10/22 @ 11:59pm.
    • The exam covers material through today's lecture (Lecture 22).
  • Pamela's in-person office hours are canceled on Monday, Oct. 18.
Friday, October 15
  • The Ants project is due Friday 10/22 @ 11:59pm.

    • Complete Phase 1 by Friday 10/15.
    • Complete Phases 2 & 3 by Tuesday 10/19.
    • Early submission bonus point: submit everything by Thursday 10/21.
  • Homework 6 is due Thursday 10/21 @ 11:59pm.
  • Midterm 2 is 7pm-9pm Wednesday 10/27.

    • Covers material through Lecture 22 on Monday 10/18.
  • The (completely optional) CATS contest is due Friday 10/22 @ 11:59pm
Wednesday, October 13
  • Homework 5 due Thursday 10/14 @ 11:59pm.
  • The Ants project is due Friday 10/22 @ 11:59pm.

    • Complete Phase 1 by Friday 10/15.
    • Complete Phases 2 & 3 by Tuesday 10/19.
    • Early submission bonus point: submit everything by Thursday 10/21.
  • The (completely optional) CATS contest is due Friday 10/22 @ 11:59pm
  • Extra Lecture 6 (Thursday 10/14 9:10am-10am) will be online only: go.cs61a.org/extra-lecture
  • John DeNero's in-person office hours are cancelled on Thursday 10/14.
  • Some TAs are offering advising appointments to chat about 61A, CS, Data Science, Berkeley, or anything at all.

    • Feel free to book an appointment with anyone you think would be able to answer your questions.
    • Don't know what to talk about? You're welcome to just book a slot and think of things on the spot!
Monday, October 11
  • Homework 5 due Thursday 10/14 @ 11:59pm.
  • The Ants project is due Friday 10/22 @ 11:59pm.

    • Complete Phase 1 by Friday 10/15.
    • Complete Phases 2 & 3 by Tuesday 10/19.
    • Early submission bonus point: submit everything by Thursday 10/21.
    • To earn extra credit (EC) and the early bonus point, finish the EC problem by 10/21 too.
  • The (completely optional) CATS contest is due Friday 10/22 @ 11:59pm.
Wednesday, September 29
  • Cats project due Friday 10/1 @ 11:59pm.

    • Complete and submit the whole project by Thursday 9/30 @ 11:59pm to earn an early submission bonus point.
    • Project party Wednesday 9/29 6:30pm-7:30pm in Cory 247.
  • Hog Composition Revisions due Friday 10/1 @ 11:59pm.
Monday, September 27
  • Cats project due Friday 10/1 @ 11:59pm.

    • Submit Phase 1 by Tuesday 9/28.
    • Complete and submit the whole project by Thursday 9/30 @ 11:59pm to earn an early submission bonus point.
    • Project party Wednesday 9/29 6:30pm-7:30pm in Cory 247.
  • Hog Composition Revisions due Friday 10/1 @ 11:59pm.

  • Congratulations to the winners of the completely optional Hog contests!
Friday, September 17
  • Two completely optional contests due Monday 9/20 @ 11:59pm:

  • Midterm 1 regrade requests due Wednesday 9/22 @ 11:59pm.
  • Homework 3 due Thursday 9/23 @ 11:59pm.
  • All non-advising OH are cancelled this Thursday and Friday. Today's OH (11am-2pm on Zoom, 4pm-6pm in Cory 293) will be geared towards post-midterm advising.

  • If you lost an item during the midterm, we may have found and handed it over to the Soda Front Desk. You can pick it up there anytime M-F 8a-12p, 1p-4p.
Wednesday, September 15
  • Two completely optional contests due Monday 9/20 @ 11:59pm:

  • Midterm 1 regrade requests due Wednesday 9/22 @ 11:59pm.
  • Join a CS Mentoring section if you want extra weekly practice.
  • All non-advising OH are cancelled this Thursday and Friday. Today's OH (11am-2pm on Zoom, 4pm-6pm in Cory 293) will be geared towards post-midterm advising.

  • If you lost an item during the midterm, we may have found and handed it over to the Soda Front Desk. You can pick it up there anytime M-F 8a-12p, 1p-4p.
Friday, September 10
  • Project 1: Hog is due Friday 9/10 @ 11:59pm.
  • Midterm 1 is 8pm-10pm Monday 9/13.

    • See the logistics post on Piazza.
    • Seats will be assigned on Sunday 9/12 (probably in the evening).
    • Fill out this form by Friday 9/10 @ 11:59pm (but preferably earlier) to request a special seat, remote exam, or alternate time.
  • No lecture on Monday 9/13.
  • No lab next week (Monday 9/13 through Wednesday 9/15).
  • No assignments due next week.
  • Two completely optional contests related to the Hog project:

Wednesday, September 8
  • Project 1: Hog is due Friday 9/10 @ 11:59pm.

    • Complete and submit the whole project by Thursday 9/9 @ 11:59pm to earn an early submission bonus point.
    • Only one partner submits, then marks the other on okpy.org.
  • Homework 2 is due Thursday 9/9 @ 11:59pm.
  • Midterm 1 is 8pm-10pm Monday 9/13.

    • Seats will be assigned on Sunday 9/12 (probably in the evening).
    • Fill out this form by Friday 9/10 @ 11:59pm (but preferably earlier) to request a special seat, remote exam, or alternate time.
    • Covers content through Friday 9/3.
    • We will provide scratch paper and the Midterm 1 Study Guide.
    • You may bring 1 2-sided sheet of notes.
Friday, September 3
  • Project 1: Hog is due Friday 9/10 @ 11:59pm.

    • Complete and submit Phase 1 by Tuesday 9/7 @ 11:59pm to receive the checkpoint.
    • Complete and submit the whole project by Thursday 9/9 @ 11:59pm to earn an early submission bonus point.
    • You may work with a partner.
    • Only one partner submits, then marks the other on okpy.org.
  • Homework 2 is due Thursday 9/9 @ 11:59pm.

    • It's quite short; just long enough to help you prepare for Midterm 1.
  • Midterm 1 is 8pm-10pm Monday 9/13.

    • Covers content through Chapter 1.6 (today's lecture).
    • Exam logistics will be posted before lecture on Wednesday 9/8.
Wednesday, September 1
  • Homework 1 is due Thursday 9/2 @ 11:59pm.

    • Come to office hours (drop-in help sessions) if you're stuck.
    • Homework party Wednesday 9/1 6:30pm-8pm in 247 Cory.
  • Project 1: Hog is due Friday 9/10 @ 11:59pm.

    • Complete and submit Phase 1 by Tuesday 9/7 @ 11:59pm to receive the checkpoint.
    • Complete and submit the whole project by Thursday 9/9 @ 11:59pm to earn an early submission bonus point.
    • You may work with a partner.
    • Only one partner submits, then marks the other on okpy.org.
  • Extra lectures are on Thursdays 9am-10am in 20 Social Science.

    • You can receive credit for a 1-unit P/NP course (CS 194-175). Attend for details.
    • You can also join via Zoom.
Monday, August 30
  • Lab 0 and Lab 1 are due Wednesday 9/1 @ 11:59pm.

    • Many students will complete them both during lab section.
  • Homework 1 is due Thursday 9/2 @ 11:59pm.
  • Lots of office hours (drop-in help sessions) are available this week.

    • Homework party Wednesday 9/1 6:30pm-8pm in 247 Cory.
  • Extra lectures are on Thursdays 9am-10am, location TBD (but probably in-person only).

    • These extra lectures won't help you do well in 61A; they're just extra topics for fun.
    • We'll occasionally discuss "just for fun" homework problems there.
    • You can receive credit for a 1-unit P/NP course (CS 198). Attend the extra lecture for details.
Friday, August 27
  • Lab 0 is released and is due next Wednesday, 9/1. It is optional (and doesn't count for points), but is highly recommended.
  • Lab 1 will be posted Monday 8/30 and is due Wednesday 9/1 @ 11:59pm.

    • Go to lab section and try to finish the lab there.
    • You can work with other students on the lab assignment, but make sure you understand the solutions.
  • Homework 1 is due Thursday 9/2 @ 11:59pm. Questions 4-6 depend on lecture 3.
  • Live Zoom lectures by Pamela (2:10pm MWF) and video lectures by John (posted around noon MWF) contain the same content but different examples.
Wednesday, August 25
  • Welcome to CS 61A!
  • The first lecture will be today, Wednesday, at 2pm. All live lectures will be held over Zoom.
  • Lab 00 is released and is due next Wednesday, 9/1. It is optional (and doesn't count for points), but is highly recommended.
  • Discussion 00 will take place this week! Attendance may be taken, but attendance this week will not count toward course participation credit. You will still need to attend at least 5 discussions after this week to earn full participation points.
  • Sign up for a discussion and check your section time and location on sections.cs61a.org.
  • Technical Office Hours will be held this week on Zoom only. During the following times, feel free to join the OH Queue for help with Lab 00: Thursday (10am-6pm, 7pm-9pm) or Friday (10am-2pm, 3pm-4pm)
Friday, August 20
  • Welcome to CS 61A!
  • Join Piazza for announcements and answers to your questions.
  • The lecture and assignment schedule will appear below when it's ready.
  • The first lecture will be 2:10pm-3pm Wednesday 8/25 on Zoom (@berkeley.edu login required). Please attend, but it will be recorded and posted to this site if you miss it.
  • The Summer 2021 website has moved to su21.cs61a.org.
Week Date Lecture Textbook Lab & Discussion Links Homework & Project
1 Wed
8/25
Disc 00: Getting Started
Lab 00: Getting Started (Optional)
Due Wed 9/1
Fri
8/27
HW 01: Control
Due Thu 9/2
2 Mon
8/30
Lab 01: Variables & Functions, Control
Due Wed 9/1
Wed
9/1
Disc 01: Control, Environment Diagrams Hog
Checkpt Tue 9/7
Due Fri 9/10
Fri
9/3
HW 02: Higher-Order Functions
Due Thu 9/9
3 Mon
9/6
No Lecture: Labor Day Lab 02: Higher-Order Functions, Lambda Expressions
Due Wed 9/8
Wed
9/8
Disc 02: Higher-Order Functions, Self Reference (Optional) Hog Strategy Contest
Due Mon 9/20

(Optional) Hog Dice Design Contest
Due Mon 9/20
Fri
9/10
Lab 03: Midterm Review (Optional)
Due Mon 9/13
4 Mon
9/13
Midterm 1 (8pm-10pm)
Wed
9/15
Disc 03: Recursion
Fri
9/17
HW 03: Recursion, Tree Recursion
Due Thu 9/23
5 Mon
9/20
Lab 04: Recursion, Tree Recursion, Python Lists
Due Wed 9/22
Wed
9/22
Disc 04: Tree Recursion, Python Lists Cats
Checkpt Tue 9/28
Due Fri 10/1
Fri
9/24
6 Mon
9/27
Lab 05: Python Lists, Trees
Due Wed 9/29
Wed
9/29
Disc 05: Trees, Data Abstraction, Sequences
Fri
10/1
HW 04: Data Abstraction, Trees
Due Thu 10/7
7 Mon
10/4
Lab 06: Mutability, Iterators
Due Wed 10/6
Wed
10/6
Disc 06: Mutability, Iterators and Generators
Fri
10/8
HW 05: Iterators and Generators
Due Thu 10/14

(Optional) Cats Contest
Due Mon 10/25
8 Mon
10/11
Lab 07: Object-Oriented Programming
Due Wed 10/13
Ants
Checkpt 1 Fri 10/15
Checkpt 2 Tue 10/19
Due Fri 10/22
Wed
10/13
Disc 07: Object-Oriented Programming, String Representation
Fri
10/15
HW 06: Object-Oriented Programming, Linked Lists
Due Thu 10/21
9 Mon
10/18
Lab 08: Linked Lists, Mutable Trees
Due Wed 10/20
Wed
10/20
Disc 08: Linked Lists, Trees
Fri
10/22
10 Mon
10/25
Users (Video)
Lab 09: Midterm Review
Due Wed 10/27
Wed
10/27
Midterm 2 (7pm-9pm)
Fri
10/29
Instructor AMA (Zoom)
11 Mon
11/1
Lab 10: Scheme
Due Wed 11/3
HW 07: Scheme
Due Thu 11/4
Wed
11/3
Disc 10: Scheme, Scheme Lists
Fri
11/5
HW 08: Scheme Lists
Due Fri 11/12
12 Mon
11/8
Lab 11: Interpreters
Due Wed 11/10
Scheme
Due Mon 11/22

Scheme Challenge
Due Mon 11/22
Wed
11/10
Disc 11: Interpreters
Fri
11/12
HW 09: Regular Expressions
Due Thu 11/18
13 Mon
11/15
Lab 12: Regular Expressions, BNF
Due Wed 11/17
Wed
11/17
Disc 12: Regular Expressions, BNF, SQL
(Optional) Scheme Gallery
Due Mon 11/29
Fri
11/19
HW 10: BNF, SQL
Due Thu 12/2
14 Mon
11/22
Lab 13: SQL
Due Tue 11/23
Wed
11/24
No Lecture: Thanksgiving
Fri
11/26
No Lecture: Thanksgiving
15 Mon
11/29
Lab 14: Final Review
Due Wed 12/1
Wed
12/1
Disc 14: Final Review
Fri
12/3
HW 11: Finale
Due Thu 12/9
16 Mon
12/6
No Lecture: RRR Week
Wed
12/8
No Lecture: RRR Week
Fri
12/10
No Lecture: RRR Week
17 Thu
12/16
Final (3pm-6pm)