CS 61A: Structure and Interpretation of Computer Programs

Fall 2018
Instructor: John DeNero
MWF 1-2 in Wheeler Auditorium

Monday, September 17
  • Optional Hog strategy contest ends Monday 9/17.
  • Homework 4 is due Thursday 9/20.
  • Get an extra Midterm 1 point for transcribing your exam by Friday 9/21.
  • Maps project due Thursday 9/27.

    • Earn an early submission bonus point by submitting on Wednesday 9/26.
    • No homework due next week.
Friday, September 14
  • Guerrilla Section on higher-order functions, writing code, and recursion, 12 - 2pm Saturday 9/15 in Soda 271/273.
  • Optional Hog strategy contest ends Monday 9/17.
  • Homework 4 is due Thursday 9/20.
  • How to get full credit on homework: solve most problems and try to solve all problems.
Wednesday, September 12
  • Midterm 1 exams have been returned by email.
  • Homework 3 is due Thursday 9/13.
  • Optional Hog strategy contest ends Monday 9/17.
  • Guerrilla Section on HOFs code writing + Recursion 12 - 2pm Saturday September 15 Soda 271/273
Friday, September 7
  • HKN review session: 12-3 PM Saturday September 8 in 306 Soda Hall
  • CSM review session: 3-6 PM Saturday September 8 in Genetics & Plant Biology 100
  • Midterm 1 on Monday 9/10 8pm-10pm in various locations across campus.

    • Emphasis on functions, assignment, iteration, higher-order functions, and environment diagrams.
    • Includes lecture through Wednesday 9/5.
    • Most similar past midterm 1 exams: fa14, sp15, fa15, fa16, fa17, sp18
    • No tree recursion (sum_largest on sp18; kbonacci on fa14)
    • The Midterm 1 study guide will be included with your exam.
    • You may bring 1 two-sided sheet of hand-written notes.
    • No lecture on Monday 9/10.
    • No lab on Monday 9/10, Tuesday 9/11, or Wednesday 9/12.
    • Seating assignments will be released Sunday 9/9. If you would like left-handed desk or have another seat request fill out this form by Friday 9/7 @ 11:59pm
  • Join a Computer Science Mentors (CSM) adjunct section by Sunday 9/9.
  • Optional Hog strategy contest ends Monday 9/17.
  • Homework 3 is due Thursday 9/13.
Wednesday, September 5
  • Hog is due Thursday 9/6 @ 11:59pm.

    • Submit everything by Wednesday 9/5 for an early submission bonus point.
    • Come to office hours or post on Piazza if you're stuck!
  • Homework 2 is due Thursday 9/6 @ 11:59pm.
  • Join a Computer Science Mentors (CSM) adjunct section by Friday 9/7.
  • Midterm 1 on Monday 9/10 8pm-10pm in various locations across campus.

    • Emphasis on functions, assignment, iteration, higher-order functions, and environment diagrams.
    • Includes lecture through Wednesday 9/5.
    • Most similar past midterm 1 exams: fa14, fa15, fa16, fa17, sp18
    • No tree recursion (sum_largest on sp18; kbonacci on fa14)
    • The Midterm 1 study guide will be included with your exam.
    • You may bring 1 two-sided sheet of hand-written notes.
    • No lecture on Monday 9/10.
    • No lab on Monday 9/10, Tuesday 9/11, or Wednesday 9/12.
    • Seating will be released Sunday 9/9. If you would like left-handed desk or have another seat request fill out this form by Thursday 9/6 @ 11:59pm
  • Extra Lecture 2 continuing Newton's Method is Wednesday 9/5 @ 3pm in 306 Soda

    • Watch the videos from Lecture 1 for context.
    • It is now possible to enroll in CS 98-52 (1 unit P/NP for completing extra homework).
Monday, September 3
  • Hog is due Thursday 9/6 @ 11:59pm.

    • Solve Phase 1 individually; Work with a partner on Phases 2 & 3.
    • Phase 1 checkpoint due Tuesday 9/4.
    • Submit everything by Wednesday 9/5 for an early submission bonus point.
  • Hog Project party Tuesday 9/4 6:30pm-8pm

    • Phase 1 in Cory 241
    • Phase 2 in Cory 247
    • Phase 3 in Cory 277, Cory 285
  • Homework 2 is due Thursday 9/6 @ 11:59pm.
  • Join a Computer Science Mentors (CSM) adjunct section by Friday 9/7.
  • Learn more & find partners at the 61A mixers hosted by the EECS department

    • Tuesday 9/4 10:45-11:10am and 3:45-4:10pm in Wozniak Lounge, 4th Floor of Soda Hall
  • Midterm 1 on Monday 9/10 8pm-10pm in various locations across campus.

    • Emphasis on functions, assignment, iteration, higher-order functions, and environment diagrams.
    • Includes lecture through Wednesday 9/5.
    • The Midterm 1 study guide will be included with your exam.
    • You may bring 1 two-sided sheet of hand-written notes.
    • No lecture on Monday 9/10.
    • No lab on Monday 9/10, Tuesday 9/11, or Wednesday 9/12.
    • Seating will be released Sunday 9/9. If you would like left-handed desk or have another seat request fill out this form by Thursday 9/6 @ 11:59pm
Monday, September 3
  • Hog is due Thursday 9/6 @ 11:59pm.

    • Solve Phase 1 individually; Work with a partner on Phases 2 & 3.
    • Phase 1 checkpoint due Tuesday 9/4.
    • Project party Tuesday 9/4 6:30pm-8pm in Cory 241 & Cory 247.
    • Submit everything by Wednesday 9/5 for an early submission bonus point.
  • Homework 2 is due Thursday 9/6 @ 11:59pm.
  • Join a Computer Science Mentors (CSM) adjunct section by Friday 9/7.
  • Learn more & find partners at the 61A mixers hosted by the EECS department

    • Tuesday 9/4 10:45-11:10am and 3:45-4:10pm in Wozniak Lounge, 4th Floor of Soda Hall
  • Midterm 1 on Monday 9/10 8pm-10pm in various locations across campus.

    • Emphasis on functions, assignment, iteration, higher-order functions, and environment diagrams.
    • Includes lecture through Wednesday 9/5.
    • The Midterm 1 study guide will be included with your exam.
    • You may bring 1 two-sided sheet of hand-written notes.
    • No lecture on Monday 9/10.
    • No lab on Monday 9/10, Tuesday 9/11, or Wednesday 9/12.
Friday, August 31
  • Hog is due Thursday 9/6 @ 11:59pm.

    • Solve Phase 1 individually; Work with a partner on Phases 2 & 3.
    • Phase 1 checkpoint due Tuesday 9/4.
    • Project party Tuesday 9/4 6:30pm-8pm in Cory 241 & Cory 247.
    • Submit everything by Wednesday 9/5 for an early submission bonus point.
  • Homework 2 is due Thursday 9/6 @ 11:59pm.
  • Guerrilla section Saturday 9/1 12pm-2pm in 271 Soda & 273 Soda.
  • Sign up for free one-on-one tutoring!
  • Coming soon: sign up for group mentoring!
  • Learn more & find partners at the 61A mixers hosted by the EECS department

    • Tuesday 9/4 10:45-11:10am and 3:45-4:10pm in Wozniak Lounge, 4th Floor of Soda Hall
Wednesday, August 29
  • Homework 1 is due Thursday 8/30 @ 11:59pm.
  • Hog is due Thursday 9/6 @ 11:59pm.

    • Solve Phase 1 individually; Work with a partner on Phases 2 & 3.
    • Phase 1 checkpoint due Tuesday 9/4.
    • Project party Tuesday 9/4 6:30pm-8pm in Cory 241 & Cory 247.
    • Submit everything by Wednesday 9/5 for an early submission bonus point.
  • Guerrilla section Saturday 9/1 12pm-2pm in 271 Soda & 273 Soda.
  • No live lecture or lab Monday 9/3.

    • Video-only lecture isn't new material, but may be helpful.
    • Attend lab Tuesday/Wednesday or complete the lab at home.
  • First extra lecture on Newton's method this Wednesday 8/29 3pm-4pm in 306 Soda.
Monday, August 27
  • Lab 00 is a take-home lab. Try to complete it before your lab this week.
  • Homework 1 is due Thursday 8/30 @ 11:59pm.

    • Homework party Monday 8/27 6:30pm-8pm in Cory 241 (& Cory 247).
  • Drop-in office hours start this week.
  • Hog is due Thursday 9/6 @ 11:59pm.

    • Solve Phase 1 individually; Work with a partner on Phases 2 & 3.
    • Phase 1 checkpoint due Tuesday 9/4.
    • Submit everything by Wednesday 9/5 for an early submission bonus point.
    • Project Party next Tuesday 9/4.
  • First extra lecture on Newton's method this Wednesday 8/29 3pm-4pm in 306 Soda.
Friday, August 24
  • Lab 00 is a take-home lab. Try to complete it before your lab next week.

    • We are holding special office hours Friday 8/24 4pm-7pm in 611 Soda to help with Lab 00 (and anything else).
  • Homework 01 is due next Thursday 8/30 @ 11:59pm.

    • Homework party Monday 8/27 6:30pm-8pm in Cory 241 & Cory 247.
  • Extra office hours with John DeNero in 781 Soda on Monday 8/27 2:20-5pm.
  • Live lecture is in Zellerbach Hall Friday 8/24, but Wheeler Hall starting Monday 8/27.
  • Join Piazza for announcements and answers to your questions.
  • More section options will appear by Monday 8/27.
  • Mark your calendars for the midterms:

    • Midterm 1 is Monday 9/10 8pm-10pm in various locations across campus.
    • Midterm 2 is Wednesday 10/17 8pm-10pm in various locations across campus.
    • If you have a course conflict, see the exam policy.
Tuesday, August 14
  • Welcome to CS 61A!
  • Join Piazza for announcements and answers to your questions.
  • Sign up for sections starting Friday 8/17 at 2pm.
  • The first and second lectures will be held in Zellerbach Hall.
  • The Summer 2018 website has moved to http://su18.cs61a.org.
Week Date Lecture Textbook Handout Homework & Project
1 Wed
8/22
Functions
Lab 00: Getting Started
Fri 8/31
Fri
8/24
Names
Disc 00: Getting Started HW 01
Thu 8/30
2 Mon
8/27
Control
Lab 01: Variables & Functions, Control
Fri 8/31
Hog
Thu 9/6
Wed
8/29
Higher-Order Functions
Disc 01: Environment Diagrams, Control
Fri
8/31
Environments
Guerrilla 01: Variables & Functions, Control, Environment Diagrams HW 02
Thu 9/6
3 Mon
9/3
Iteration
Lab 02: Higher-Order Functions
Fri 9/7
Wed
9/5
Recursion
Disc 02: Higher-Order Functions, Recursion Hog Contest
Mon 9/17
Fri
9/7
Function Examples
HW 03
Thu 9/13
4 Mon
9/10
No Lecture
Midterm 1 (8-10 PM)
Wed
9/12
Tree Recursion
Disc 03: Recursion, Tree Recursion
Fri
9/14
Data Abstraction
Guerrilla 02: Higher-Order Functions, Recursion, Tree Recursion HW 04
Thu 9/20
5 Mon
9/17
Containers
Lab 04: Python Lists, Data Abstraction
Fri 9/21
Maps
Thu 9/27
Wed
9/19
Trees Disc 04: Python Lists, Trees
Fri
9/21
Mutable Values HW 05
Thu 10/4
6 Mon
9/24
Mutable Functions
Wed
9/26
Iterators
Fri
9/28
Objects
7 Mon
10/1
Inheritance Ants
Thu 10/11
Wed
10/3
Representation
Fri
10/5
Growth HW 06
Thu 10/11
8 Mon
10/8
Composition
Wed
10/10
Ordered Sets
Fri
10/12
Tree Sets HW 07
Tue 10/16
9 Mon
10/15
Data Examples
Wed
10/17
No Lecture
Midterm 2 (8-10 PM)
Fri
10/19
Users
HW 08
Thu 10/25
10 Mon
10/22
Scheme
Wed
10/24
Exceptions
Fri
10/26
Calculator HW 09
Thu 11/1
11 Mon
10/29
Interpreters Scheme
Wed 11/14
Wed
10/31
Tail Calls
Fri
11/2
Macros HW 10
Thu 11/8
12 Mon
11/5
Streams
Wed
11/7
Declarative Programming Scheme Contest
Mon 11/26
Fri
11/9
Tables HW 11
Thu 11/15
13 Mon
11/12
No Lecture: Veterans Day
Wed
11/14
Aggregation
Fri
11/16
Databases HW 12
Thu 11/29
14 Mon
11/19
Distributed Computing
Wed
11/21
No Lecture: Thanksgiving
Fri
11/23
No Lecture: Thanksgiving
15 Mon
11/26
Distributed Data
Wed
11/28
Natural Language
Fri
11/30
Conclusion
HW 13
Fri 12/7
16 Wed
12/12
Final (7-10 PM)