Announcements

  • Project 4 due Friday 8/5 at 11:59pm. Earn extra credit for meeting certain checkpoints.

    • Finish Part I by tomorrow for 1 EC point
    • Finish Parts I and II by Tuesday for 1 EC point
    • Finish project by next Thursday for 1 EC point
  • Maps composition revisions are now open and are due Saturday 7/30 at 11:59pm.
  • Homework 8 is due today 7/27 at 11:59pm.

    • You can get the Scheme interpreter here.
  • Quiz 7 in lecture on Thursday 7/28, may cover mutable linked lists, mutable trees, or Scheme I.
  • Project 4 has been released! Get started, it will be intense.
  • Opportunities to earn back points:

    • Hog composition revisions due today 7/27 at 11:59pm.
    • Maps composition revisions are now open and are due Saturday 7/30 at 11:59pm.
    • Homework 7 AutoStyle portion due today 7/27 at 11:59pm.
  • Ants is due today (7/26) at 11:59pm.
  • Homework 8 is due tomorrow (7/27) at 11:59pm.

    • You can get the Scheme interpreter here.
  • Quiz 7 in lecture on Thursday 7/28, may cover mutable linked lists, mutable trees, or Scheme I.
  • Opportunities to earn back points

    • Hog composition revisions due tomorrow (7/27) at 11:59pm.
    • Maps composition revisions due Saturday (7/30) at 11:59pm.
    • Homework 7 AutoStyle portion due tomorrow (7/27) at 11:59pm.
  • Quiz 6 has been released, and is due Tuesday 7/26 at 10:00am.

    • Running with the --submit flag will tell you whether you have passed all the hidden tests, but it will not tell you what the hidden tests are.
  • Ants is due Tuesday 7/26 at 11:59pm.

    • Also make sure to run --submit, and submit one day early for 1 EC point.
  • Homework 8 is due Wednesday 7/27 at 11:59pm.

    • You can get the Scheme interpreter here.
  • For this week, you must get checked off on a Scheme assignment.
  • Hog composition revisions are due Wednesday 7/27 at 11:59pm.

    • We will allow composition revisions for Maps as well. Details to come.
  • Project 3 is due Tuesday 7/26 at 11:59pm.
  • Homework 7 will be released later today, due Sunday 7/24 at 11:59pm.

    • AutoStyle is up and running for this homework! Details to come.
  • Submit Hog revisions by Wednesday 7/27 at 11:59pm to earn back composition.
  • Quiz 6 will be released 9am on Monday 7/25, due 10am on Tuesday 7/26.

    • May cover material from Monday 7/18 through Wednesday 7/20.
    • But not Brython.
  • Project 3 is released and due Tuesday 7/26 at 11:59pm.

    • Submit one day early for 1 EC point, and run --submit often!
  • Homework 6 is due Wednesday 7/20 at 11:59pm.
  • There are checkoffs in lab this week!
  • Quiz 5 on Thursday in lecture will cover mutability and/or OOP.
  • Didn't do well on the midterm? Consider signing up for tutoring sessions.
  • Project 2 is due today, submit early and often

    • Look at your Hog project for your composition feedback. Check these comments to make sure you don't make the same mistakes in your Maps project! More information is on this Piazza post
  • Midterm is on 7/14, 5-8 PM in 2050 VLSB

    • Read the midterm information Piazza post
    • No checkoffs this week, Lab 7 is optional review
  • Quiz 4 has been released!

    • Take home coding quiz, due 10am on 7/12, submit through OK
  • It's midterm week!

    • Read the midterm information Piazza post
    • No checkoffs this week, Lab 7 is optional review
  • Project 2 is due 7/12, submit early and often

    • Look at your Hog project for your composition feedback. Check these comments to make sure you don't make the same mistakes in your Maps project! More information is on this Piazza post
  • Project 2 is due July 12.

    • Submit by July 12 to earn one extra credit point.
    • Run python3 ok --submit to check against hidden tests.
    • Check your submission at ok.cs61a.org.
    • Invite your partner (watch this video).
  • Homework 4 is due July 7
  • You must be checked off in lab today or tomorrow.
  • Quiz 3 will be at the beginning of lecture tomorrow July 7

    • If you have an alternate time or are not enrolled in the class, please arrive at 11:45am.
  • Quiz 4 will be released 9am on Monday, July 11 and due by 10am on Tuesday, July 12.
  • There will be no written quiz next Thursday, since the midterm is that day.
  • The 61A Potluck is this Friday, July 8. Join us in the Wozniak Lounge from 5-8pm.

    • Bring food and board games!
  • Homework 4 has been released, and is due July 7 at 11:59pm.
  • There's only one lab this week, but you still need to go get checked off!
  • Quiz 3 will be Thursday July 7, and will cover material up to July 5.
  • If you're struggling in this course, consider signing up for small section tutoring.
  • Quiz 4 will be next Monday July 11, and will be a take-home coding quiz. More information about this will be posted soon.
  • There will be no written quiz next Thursday, since the midterm is that day.
  • Quiz 1 grades are now available on Gradescope.

  • Homework 3 is due July 4 at 11:59pm. It's tough, so start early!
  • The optional Hog Contest is now open! Entries are due July 4 at 11:59pm.
  • Project 1 is due June 30 at 11:59pm.

    • Submit by June 29 (today) to earn one extra credit point.
    • Be sure to run --submit early and often to check against hidden tests.
    • Check your submission at ok.cs61a.org.
    • Invite your partner (watch this video).
  • Homework 2 is due June 29 (today) at 11:59pm.
  • Quiz 2 on June 30 may include environment diagrams and higher-order functions.

    • If you have an alternate time or are not enrolled in the class, please arrive at 11:45am.
  • Checkoffs began this week. Find a lab assistant in your lab today or tomorrow to go over one homework or lab assignment with you.
  • If you need an alternate exam time, fill this out: http://goo.gl/forms/FDQix4I5dNXPQDgw2
  • The Hog Contest is now open! Entries are due July 4 at 11:59pm.
  • Project 1 is due June 30 at 11:59pm.

    • Submit by June 29 to earn one extra credit point.
    • Be sure to run --submit early and often to check against hidden tests.
  • Homework 2 is due June 29 at 11:59pm.
  • Tutors have begun small tutoring sessions. Check Piazza for details.
  • Checkoffs began this week. Find a lab assistant in your lab to go over one homework or lab assignment with you.
  • Quiz 2 on Thursday 6/30 may include environment diagrams and higher-order functions.
  • If you need an alternate exam time, fill this out: http://goo.gl/forms/FDQix4I5dNXPQDgw2
  • Homework 0 is due today, June 22, by 11:59pm.
  • Quiz 1 is tomorrow, Thursday, 6/23, at the beginning of lecture.
  • Submitting labs are now worth 2 assignment points each. Lab 1 is due on 6/23 at 11:59pm.
  • Starting with Discussion 1, attending discussion will count toward midterm recovery points.

Welcome to CS 61A! This site is still under construction.

Calendar

Week Date Lecture Reading Handout Homework Quiz Project
Introduction Mon 6/20 Introduction
(full) (1pp) (6pp) (01.py)
1.1
1.2
Lab 00: Introduction and Workflow
(due Tue 6/21)
Homework 00
(due Wed 6/22)
Tue 6/21 Functions
(full) (1pp) (6pp) (02.py)
1.3
1.4
Discussion 00: Python (Solutions)
Wed 6/22 Control
(full) (1pp) (6pp) (03.py)
1.5 Lab 01: Python
(due Thu 6/23)
Hog
(due Thu 6/30)
Thu 6/23 Environment Diagrams
(full) (1pp) (6pp) (04.py)
Discussion 01: Control and Environments (Solutions) Homework 01
(due Sun 6/26) (Solutions)
Quiz 1
(due Thu 6/23) (Solutions)
Functions Mon 6/27 Higher-Order Functions
(full) (1pp) (6pp) (05.py)
1.6 Lab 02: Higher-Order Functions
(due Tue 6/28)
Homework 02
(due Wed 6/29) (Solutions)
Hog Contest
(due Mon 7/4)
Tue 6/28 Recursion
(full) (1pp) (6pp) (06.py)
1.7 Discussion 02: Higher-Order Functions (Solutions)
Wed 6/29 Tree Recursion
(full) (1pp) (6pp) (07.py)
1.7 Lab 03: Recursion
(due Thu 6/30)
Thu 6/30 Growth
(full) (1pp) (6pp) (08.py)
2.8 Discussion 03: Recursion (Solutions) Homework 03
(due Mon 7/4) (Solutions)
Quiz 2
(due Thu 6/30) (Solutions)
Data Mon 7/4 No Lecture: Independence Day
Tue 7/5 Data Abstraction
(full) (1pp) (6pp) (09.py)
2.1
2.2
Discussion 04: Data Abstraction (Solutions) Homework 04
(due Thu 7/7) (Solutions)
Maps
(due Tue 7/12)
Wed 7/6 Linked Lists
(full) (1pp) (6pp) (10.py)
2.3 Lab 05: Linked Lists
(due Thu 7/7)
Thu 7/7 Trees
(full) (1pp) (6pp) (11.py)
2.3 Discussion 05: Trees (Solutions) Quiz 3
(due Thu 7/7) (Solutions)
Mutability Mon 7/11 Mutable Sequences
(full) (1pp) (6pp) (12.py)
2.4 Lab 06: Trees and Mutable Sequences
(due Tue 7/12)
Quiz 4
(due Tue 7/12) (Solutions)
Tue 7/12 Mutable Functions
(full) (1pp) (6pp) (13.py)
2.4 Discussion 06: Mutable Functions and Midterm Review (Solutions)
Wed 7/13 Midterm Review
(full) (1pp) (6pp) (14.py)
Lab 07: Midterm Review
Thu 7/14 Midterm Homework 05
(due Sun 7/17)
Objects Mon 7/18 Object-Oriented Programming I
(full) (1pp) (6pp) (15.py)
2.5 Lab 08: Object-Oriented Programming
(due Tue 7/19)
Homework 06
(due Wed 7/20) (Solutions)
Ants
(due Tue 7/26)
Tue 7/19 Object-Oriented Programming II
(full) (1pp) (6pp) (16.py)
2.5
2.7
4.2
Discussion 08: Object-Oriented Programming and Inheritance (Solutions)
Wed 7/20 Mutable Linked Lists
(full) (1pp) (6pp) (17.py)
2.9 Lab 09: Linked Lists and Interfaces
(due Thu 7/21)
Thu 7/21 Mutable Trees
(full) (1pp) (6pp) (18.py)
2.9 Discussion 09: Recursive Objects (Solutions) Homework 07
(due Sun 7/24) (Solutions)
Quiz 5
(due Thu 7/21) (Solutions)
Interpretation Mon 7/25 Scheme I
(full) (1pp) (6pp) (19.scm)
3.1
3.2
Lab 10: Scheme
(due Tue 7/26)
Homework 08
(due Wed 7/27) (Solutions)
Quiz 6
(due Tue 7/26) (Solutions)
Tue 7/26 Scheme II
(full) (1pp) (6pp) (20.scm)
3.5
4.2
Discussion 10: Scheme (Solutions)
Wed 7/27 Interpreters I
(full) (1pp) (6pp) (21.py)
3.3
3.4
Lab 11: Interpreters
(due Thu 7/28)
Scheme
(due Fri 8/5)
Thu 7/28 Interpreters II
(full) (1pp) (6pp) (22.py)
3.4
3.5
Discussion 11: Interpreters (Solutions) Quiz 7
(due Thu 7/28) (Solutions)
Paradigms Mon 8/1 Logic I
(full) (1pp) (6pp) (23.logic)
4.4 Lab 12: Logic
(due Tue 8/2)
Homework 09
(due Wed 8/3)
Quiz 8
(due Tue 8/2)
Scheme Contest
(due Tue 8/9)
Tue 8/2 Logic II
(full) (1pp) (6pp) (24.logic)
4.4 Discussion 12: Logic (Solutions)
Wed 8/3 Coroutines
(full) (1pp) (6pp) (25.py)
4.2 Lab 13: Coroutines
(due Thu 8/4)
Thu 8/4 Parallelism
(full) (1pp) (6pp) (26.py)
Discussion 13: Final Review (Solutions) Homework 10
(due Tue 8/9)
Quiz 9
(due Thu 8/4)
Applications Mon 8/8 Theory of Computation
(full) (1pp) (6pp) (27.py)
Lab 14: TBD
Tue 8/9 Computer Security
(full) (1pp) (6pp) (28.py)
Discussion 14: TBD (Solutions)
Wed 8/10 Artificial Intelligence
(full) (1pp) (6pp) (29.py)
Homework 11
(due Wed 8/10)
Thu 8/11 Conclusion
(full) (1pp) (6pp) (30.py)
Fri 8/12 Final Homework 12
(due Fri 8/12)