This website contains materials from a past semester. Information, assignments, and announcements may no longer be relevant. Please refer to the current semester's site for up-to-date content.
Fall 2026 FAQs
Last updated: August 24, 2026
Fall 2026 listing on classes.berkeley.edu
Enrollment
Q1: Will the course expand?
We don’t know. (And we still won’t know even if we know your waitlist position, so please don’t email us to ask.)
In the past three semesters (Summer 2026, Spring 2026, and Fall 2025), we were able to expand the class to enroll all interested students, but we cannot promise that the same will happen in Fall 2026.
We will not have any information about potential course expansion until the first full week of the fall semester (August 31, 2026), at the earliest.
Q2: What are my chances of getting off the waitlist?
We don’t know. You could check Berkeleytime for enrollment trends from past semesters, but there are no guarantees as to how past trends will extrapolate to Fall 2026.
Besides past trends, we have no way to estimate your odds of getting off the waitlist. If you’re on the waitlist, we strongly recommend having a backup plan in case you are unable to enroll.
Q3: I’m not a declared Computer Science, EECS, or College of Engineering major. Can I enroll in the class?
Sorry, course staff is not in charge of enrollment. We have to follow the department’s enrollment policies, which restricts CS 161 enrollment to declared Computer Science, EECS, or College of Engineering majors only.
If you are not part of this group, you cannot enroll or waitlist in the class. We don’t have enrollment codes to hand out or any other way to circumvent this policy.
If you have further questions, please reach out to the emails listed in the linked document.
Q4: I plan to declare CS this fall. Can I enroll in the class after I declare?
If your declaration is processed in time, and the enrollment system lets you enroll in the class, we can let you enroll. However, it is your responsibility to keep up with the class before you enroll. We can give you access to all the assignments while you wait to enroll (see Q5 below).
Q5: I plan to declare and enroll later. Can I keep up with assignments before I officially enroll?
Yes, we can add you to the course Gradescope and Ed forum. To request access before unofficially enrolling, please email cs161@berkeley.edu. This is only for UC Berkeley students who are blocked from enrolling; it is not for concurrent enrollment students (see Q6 below for concurrent enrollment).
Q6: I’m a concurrent enrollment student. When can I enroll in the class?
Fall 2026 note: We originally planned on not accepting concurrent enrollment students, but as of August 19, 2026, we have changed our decision. We will be accepting concurrent enrollment students in Fall 2026.
The department processes concurrent enrollment applications, not us. Concurrent enrollment applications are scheduled to be processed in the first full week of the fall semester (August 31, 2026), at the earliest. Please check this page later for updates; we have no additional information at this time, so please do not email us about concurrent enrollment until this page is updated.
Please don’t email us asking to be added to the class before your application is processed. There won’t be any assignments due until the first batch of applications are processed. If you submit an application after the first batch is processed, see the later questions for getting added to the class (within 48 hours), and the policies for enrolling late.
Q7: Can I audit the class?
All course materials that we can share with auditors will be posted publicly on the course website. Also, on the policies page, there is a link to a public Gradescope class that you can join.
Q8: I officially enrolled in the class, or filled out the form requesting to be enrolled, but I don’t have access to Gradescope/Ed.
We sync the rosters once a day, so you may need to wait a bit before being automatically added to the class. If you’ve been officially enrolled for 48 hours and haven’t been added, send an email to cs161@berkeley.edu. Please don’t ask us about being added until 48 hours have passed; we don’t have time to manually add each student.
Exams
Q9: When are the exams?
The midterm is on TBA (this page will be updated once we know).
The final exam is on Friday, December 18, 2026, 11:30am–2:30pm. (Source: Registrar website.)
Q10: Can I take this class remotely? Do you offer remote exams?
In some past iterations of CS 161, we have offered remote exams. In this semester, we will not be offering remote exams. All students should plan to take exams in-person at the scheduled time.
Q11: Do you offer alternate time exams?
Fall 2026 note: We originally planned on not holding an alternate final exam, but as of August 19, 2026, we have changed our decision. We will be holding a single alternate final exam in Fall 2026.
If you are unable to take the exam at the scheduled time, we will be offering only one alternate exam time, in-person only:
We have not decided whether we will offer an alternate midterm exam.
The alternate final exam time is Friday, December 18, 2026, 2:30pm–5:30pm (we’ll give you a few minutes to walk between exams).
There are no other alternate exam times. There are no remote exams at alternate times.
We are only offering the alternate exam time if you are unable to take the exam at the normal time. For example, if you have another exam at the same time, you can take the alternate-time exam. However, wanting a break between non-conflicting exams would not be a valid reason to take the alternate-time exam, because in this case you are able to take the exam at the normal time.
We’ll release a form closer to the exams for you to sign up for an alternate-time exam.
Prerequisites
Q12: Do you formally enforce prerequisites?
No. The enrollment system should not block you from enrolling or waitlisting if you haven’t taken the prerequisites (CS61B, CS70, CS61C). We will not drop students who haven’t taken the prerequisites.
Q13: Should I take this class without CS61B or equivalent?
CS61B is a prerequisite for understanding of basic data structures, familiarity with testing your own code, and familiarity with working on large codebases. We try our best to re-introduce any specific CS61B topics as they appear in class, so the actual content of CS61B is not a hard prerequisite.
If you can implement a linked list from scratch, and you’re comfortable testing your own code, and you’re comfortable working in a codebase with 500-1000 lines of code, then you’ve fulfilled the CS61B prerequisite.
Q14: Should I take this class without CS70 or equivalent?
CS70 is a prerequisite for the ability to follow mathematical proofs and explanations. We try our best to re-introduce any specific CS70 topics as they appear in class, so the actual content of CS70 is not a hard prerequisite.
If you can follow the explanations in this CS70 note on RSA encryption, then you’ve fulfilled the CS70 prerequisite.
Q15: Should I take this class without CS61C or equivalent?
We don’t recommend it. Unlike the other two prerequisites, the content of CS61C is used in the first unit of the class (memory safety).
You should not take this class unless you:
- Understand the C and assembly sections of CS61C (Lectures 1-13 from Fall 2020 CS61C)
- Can write a non-trivial C program (100-200 lines)
- Can use GDB to debug a C program
- Can read and understand assembly code (e.g. x86 or RISC-V)
- Can explain how a function is called in assembly (e.g. x86 or RISC-V)
As a diagnostic, you can read Chapter 2 of our textbook. If you can follow along, then you should mostly have fulfilled the CS61C prerequisite.
Q16: Can I take this class concurrently with CS61C?
We don’t recommend it. CS61C takes 5 weeks to cover all the prerequisite content we use, and we use the prerequisite content heavily in the first 5 weeks of class.
Q17: How can I study for the class ahead of time?
If you must take this class without CS61C, or concurrently with CS61C, or you don’t feel confident in your CS61C prerequisite knowledge, then we recommend watching Lectures 1-13 from Fall 2020 CS61C beforehand.
CS161 course content doesn’t change substantially between semesters, so to study ahead, you can reference any past semester website for publicly-available resources. For example, here is the Spring 2025 website.
Joining Late
Q18: I need to miss the first few days of class. Is that okay?
We haven’t decided whether to take attendance, but we won’t drop you from the class for missing the first few days of class. You do not need to contact us about missing class. However, it is still your responsibility to keep up with the material and assignments.
Q19: Can I enroll in the class late?
If you plan on enrolling late, it is your responsibility to keep up with the class before you enroll.
If you enroll late, we will give you a grace period of 3 days after the day you enroll. After the 3 days are over, you should be fully caught up with the class (all assignments due up to that point should be submitted).
You can request extensions using the form on the website so that assignments submitted during this grace period are not counted late.
If you need more than 3 days to catch up, you can request extensions through the form, but we cannot guarantee that they will be approved. Please don’t email us asking about extensions - use the form on the website.
You can attend lectures and discussion sections before you are officially enrolled. The course website will publicly post any recordings, videos, and resources.
Other questions
If you have a question that wasn’t answered above, you can post on Ed or email cs161@berkeley.edu. Please don’t email instructors or TAs directly; you will get a faster answer by postong on Ed or emailing cs161@berkeley.edu.