Announcements

  • Lecture 2 on Friday 8/26 will be held in Zellerbach Auditorium.
  • Waitlisted students who hope to enroll should turn in all assignments on time.
  • Starting next week, lab and discussion attendance count for section participation points.
  • Need help with Lab 00? Come to Office hours on Monday!
  • Homework 1 due Thursday 9/1 @ 11:59pm

    • This homework has two parts: problems and a quiz
    • The problems can be completed with a partner, and you can discuss with anyone
    • The quiz must be completed on your own!
    • You can still receive full credit without solving everything by making significant progress on each question
  • Sign up for Piazza, the course forum.
  • Welcome to CS 61A!
  • Lectures 1 & 2 on Wednesday 8/24 and Friday 8/26 will be held in Zellerbach Auditorium.
  • There is no lab on Tuesday 8/23 or Wednesday 8/24.
  • Discussion begins Thursday 8/25. See the weekly schedule for times and locations.
  • Sign up for Piazza, the course forum.

Calendar

Week Date Lecture Reading Handout Homework Project
1 Wed 8/24 Functions
(Video) (full) (1pp) (8pp) (01.py)
1.1
1.2
Lab 00: Introduction and Workflow
(due Mon 8/29)
Fri 8/26 Names
(Video) (full) (1pp) (8pp) (02.py)
1.3
1.4
Discussion 00: Lost on the Moon (Solutions) Homework 01
(due Thu 9/1)
2 Mon 8/29 Control
(full) (1pp) (8pp) (03.py)
1.5 Hog
(due Thu 9/8)
Wed 8/31 Higher-Order Functions
(full) (1pp) (8pp) (04.py)
1.6 Homework 02
(due Tue 9/6)
Fri 9/2 Environments
(full) (1pp) (8pp) (05.py)
1.6
3 Mon 9/5 No Lecture: Academic Holiday
Wed 9/7 Recursion
(full) (1pp) (8pp) (06.py)
1.7 Homework 03
(due Tue 9/13)
Fri 9/9 Tree Recursion
(full) (1pp) (8pp) (07.py)
1.7 Hog Contest
(due Mon 9/19)
4 Mon 9/12 Function Examples
(full) (1pp) (8pp) (08.py)
Thu 9/15 Midterm 1
Fri 9/16 Data Abstraction
(full) (1pp) (8pp) (09.py)
2.1
2.2
Homework 04
(due Thu 9/22)
5 Mon 9/19 Containers
(full) (1pp) (8pp) (10.py)
2.3 Maps
(due Thu 9/29)
Wed 9/21 Trees
(full) (1pp) (8pp) (11.py)
2.3 Homework 05
(due Tue 9/27)
Fri 9/23 Mutable Values
(full) (1pp) (8pp) (12.py)
2.4
6 Mon 9/26 Growth
(full) (1pp) (8pp) (13.py)
2.8
Wed 9/28 Mutable Functions
(full) (1pp) (8pp) (14.py)
2.4
Fri 9/30 Objects
(full) (1pp) (8pp) (15.py)
2.5 Homework 06
(due Thu 10/6)
7 Mon 10/3 Interitance
(full) (1pp) (8pp) (16.py)
2.5 Ants
(due Thu 10/13)
Wed 10/5 Sequences
(full) (1pp) (8pp) (17.py)
Homework 07
(due Tue 10/11)
Fri 10/7 Representation
(full) (1pp) (8pp) (18.py)
2.7
8 Mon 10/10 Composition
(full) (1pp) (8pp) (19.py)
2.9
Wed 10/12 Hierarchy
(full) (1pp) (8pp) (20.py)
2.9
Fri 10/14 Sets
(full) (1pp) (8pp) (21.py)
2.9
9 Mon 10/17 Data Examples
(full) (1pp) (8pp) (22.py)
Thu 10/20 Midterm 2
Fri 10/21 Users
(full) (1pp) (8pp)
10 Mon 10/24 Scheme
(full) (1pp) (8pp) (24.scm)
3.1
3.2
Homework 08
(due Thu 10/27)
Wed 10/26 Exceptions
(full) (1pp) (8pp) (25.py)
3.3
Fri 10/28 Calculator
(full) (1pp) (8pp) (26.scm)
3.4 Homework 09
(due Thu 11/3)
11 Mon 10/31 Interpreters
(full) (1pp) (8pp) (27.scm)
3.5 Scheme
(due Thu 11/17)
Wed 11/2 Tail Calls
(full) (1pp) (8pp) (28.scm)
3.5 Homework 10
(due Thu 11/10)
Fri 11/4 Coroutines
(full) (1pp) (8pp) (29.py)
4.2
12 Mon 11/7 Streams
(full) (1pp) (8pp) (30.py)
4.2
Wed 11/9 Declarative Programming
(full) (1pp) (8pp) (31.sql)
4.3 Homework 11
(due Tue 11/15)
Fri 11/11 No Lecture: Academic Holiday
13 Mon 11/14 Tables
(full) (1pp) (8pp) (32.sql)
4.3
Wed 11/16 Recursive Select
(full) (1pp) (8pp) (33.sql)
4.3 Homework 12
(due Tue 11/22)
Fri 11/18 Aggregation
(full) (1pp) (8pp) (34.sql)
4.3 Scheme Contest
(due Mon 11/28)
14 Mon 11/21 Distributed Computing
(full) (1pp) (8pp) (35.py)
4.6
Wed 11/23 No Lecture: No Lecture
Fri 11/25 No Lecture: Academic Holiday
15 Mon 11/28 Distributed Data
(full) (1pp) (8pp) (36.py)
4.6
Wed 11/30 Natural Language
(full) (1pp) (8pp) (37.py)
Fri 12/2 Conclusion
(full) (1pp) (8pp)
16 Thu 12/15 Final