Policies

Table of contents

  1. Enrollment
  2. Prerequisites
  3. Communication
  4. Lecture
  5. Discussion Sections
  6. Office Hours
  7. Readings
  8. Exams
  9. Homeworks
  10. Projects
  11. Grading
  12. Ed
  13. Collaboration Policy
  14. Student Support
    1. Extensions Policy
    2. Extenuating Circumstances & Inclusion
    3. Mental Health & Wellness
    4. DSP
    5. Course Climate
  15. Acknowledgements

Enrollment

Class listing on classes.berkeley.edu

Course staff does not control enrollment. We have to follow the enrollment policies on the page linked above. We do not have any enrollment codes or any other way to change the waitlist order.

We have expanded the course capacity to 500 to enroll as many graduating seniors as possible. We do not plan to expand the class any further.

We have no way to estimate the probability of you getting off the waitlist. This is the first time in several years we’ve expanded the course to this size, so we don’t know what will happen.

If you are unable to enroll or waitlist in the class right now, but plan to enroll later, please email cs168@berkeley.edu, so that we know who you are and can add you to course platforms.


Prerequisites

The prerequisites for this class are CS 61B and CS 61C.

The official class listing shows CS 162 as a prerequisite, but this is outdated. The correct prerequisite is CS 61C, not CS 162.

We don’t formally enforce any prerequisites, and the enrollment system should not block you from enrolling or waitlisting if you haven’t taken the prerequisites. We will not drop you if you haven’t taken the prerequisites.

It is possible to take the class without the prerequisites, though we don’t recommend it.

In addition to the prerequisite classes, we assume basic knowledge of Python and Unix systems (e.g. terminal commands).


Communication

The course schedule and all resources (e.g. lecture slides, discussion worksheets) will be posted on the course website: https://fa24.cs168.io/.

All course announcements and content/logistics questions will happen on Ed (the course discussion forum). We will be automatically enrolling everyone.

If you need to contact the course staff privately, please make a private question on Ed or email cs168@berkeley.edu.


Lecture

We will have a 90-minute live lecture on Tuesdays and Thursdays, 11:00 AM–12:30 PM. This is the listed lecture time on the course schedule.

Lectures will be recorded and recordings will be posted on bCourses. Lectures will not be livestreamed.

We’ll give 0.1% extra credit for each lecture you attend, up to a maximum of 2% extra credit (for attending 20 of the lectures), applied on your overall course grade.

If the lecture hall is at capacity, the entire class will receive extra credit for that lecture. Everyone gets credit for the first lecture on August 29.

Do not try to claim attendance credit if you aren’t actually in the lecture hall. We have ways of checking. If you falsely claim attendance credit, we will apply a –2% penalty on your grade, and submit an academic misconduct case to the Center of Student Conduct (CSC).


Discussion Sections

TAs will hold 1-hour live discussions throughout the week. Every discussion in the week covers the same worksheet.

You can attend any discussion sections you want. Discussion attendance is not taken.

We’ll try to post recordings of discussion worksheets, but no promises.

The discussion schedule will be posted on the course calendar by the first day of class.


Office Hours

TAs and instructors will hold in-person and online office hours throughout the semester. We use an online queue to process help tickets.

The office hours schedule will be posted on the course calendar. Note that the schedule changes from week to week.


Readings

Readings come from the course textbook, which is freely available online. The textbook is optional, and lectures are the main source of truth in cases of ambiguity.

Another optional textbook is “Computer Networking: A Top-Down Approach, 7th edition” by Jim Kurose and Keith Ross.


Exams

The midterm is on Tuesday, October 15, 8–10pm PT

The final exam is on Wednesday, December 18, 8–11am PT.

All exams will be in-person this semester. There are no online exams this semester.

Please do not discuss the exam until solutions are released.

If you are unable to take the exam at the scheduled time, we will be offering only one alternate exam time, in-person only, immediately after the scheduled exam. Specifically, the alternate midterm time is Tuesday, October 15, 9–11pm PT. The alternate final exam time is Wednesday, December 18, 11am–2pm PT. There are no other alternate exam 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.


Homeworks

There will be some homeworks (exact number TBA).

Homeworks will be submitted electronically via Gradescope. Homeworks cannot be turned in late unless you have extensions or accommodations.


Projects

There will be 3 course projects. All projects may be done in groups of two or individually. Projects cannot be turned in late unless you have extensions or accommodations.

The projects can be submitted as often as you like before the deadline. The score you see is the score you get (there are no hidden tests). Most students receive 90%–100% of the points on projects.

If you choose to work with a partner, all work must be done synchronously in a pair-programming fashion, and you are responsible for all code submitted in the partership. If you choose to work with a partner, you are responsible for the partnership. Course staff will not help mediate partnership disputes.


Grading

We will compute grades from a weighted average, as follows:

  • Homeworks: 5% (equally weighted)
  • Projects: 45% (equally weighted)
  • Midterm: 25%
  • Final: 25%
  • Lecture attendance: 2% extra credit

The class as a whole has been, and will continue to be, curved to the department guidelines for upper-division CS classes. Previous grade distributions on Berkeleytime are also good indicators of the curve.


Ed

If you have a question, the best way to contact us is via the course Ed site. The staff (instructors and TAs) will check the site regularly.

If your question is personal or not of interest to other students, please mark the question as private.


Collaboration Policy

We believe that most students can distinguish between helping other students understand course material and cheating. Explaining a subtle point from lecture or discussing course topics is an interaction that we encourage, but you must write your solutions strictly by yourself (with your partner on projects). You must not ask for homework/project solutions on Stack Overflow or other online sites. You must not receive help on assignments from students who have taken the course in previous years, and you must not review homework or project solutions from previous years.

If you choose to work with a partner, all work must be done synchronously in a pair-programming fashion. By creating a partnership, both you and your partner are responsible for the work in your repository and the work you submit.

Before you’ve submitted your final work for a project, you should never be in possession of solution code that you (or your partner) did not write. You will be equally culpable if you distribute (even unknowingly) such code to other students or future students.

You must ensure that your solutions will not be visible to other students. DO NOT GIVE ANYONE YOUR CODE! DO NOT POST SOLUTIONS TO PROJECTS ONLINE. If you use GitHub or another source control system to store your solutions electronically, you must ensure your account is configured so your solutions are not publicly visible. If you use GitHub, it offers free private repositories that allow you to keep your solutions private; please use one.

If you’re not sure what you’re doing is OK, please ask.

Listed below are some non-comprehensive examples of what is allowed, and disallowed.

Permitted:

  • Discussion of approaches for solving a problem. Such help should be cited as comments in your code. For the sake of others’ learning experience, we ask that you try not to give away anything juicy, and instead try to lead people to such solutions.
  • Discussion of specific syntax issues and bugs in your code, without showing another student your code. Verbally discussing syntax issues is permitted, but Zoom screen sharing your code, for example, is never permitted. Cite any non course staff (course staff meaning Reader, TA, and Instructor) person you received advice from.
  • Using small snippets of non-168 code that you find online for solving tiny problems such as code for iterating through a map in Python. Such usages must be explicitly cited in comments in your code.

Absolutely Forbidden:

  • Typing or dictating code into someone else’s computer.
  • Looking at someone else’s project code to understand a particular idea or part of a project.
  • Possessing project solution code that you did not write yourself or another student’s project code in any form, be it electronic or on paper. This includes the situation where you’re trying to help someone debug. Distributing such code is equally forbidden.
  • Posting solution code to any assignment in a public place (e.g. a public git repository, a pull request visible to all students, mediafire, etched into stones above the Mediterranean, etc). This applies even after the semester is over.
  • Leaving your code in an insecure place such that other students can take the code and use it (even if it happens without your knowledge).
  • Using automatic code generators such as ChatGPT and Github Copilot.
  • Working in lock-step with other students. Your workflow should not involve a group of people identifying, tackling, and effectively identically solving a sequence of subproblems.

Warning: Your attention is drawn to the Department’s Policy on Academic Dishonesty. In particular, you should be aware that copying or sharing solutions, in whole or in part, from other students in the class or any other source without acknowledgement constitutes cheating. If you are found liable for misconduct, you will receive all of these penalties:

  1. Referral to the Center for Student Conduct (CSC)
  2. Negative points on the entire assignment (for example, even if you copy only one line of code, you would receive negative points on the entire project)
  3. Depending on severity, a failing grade in the course

If you work in a group, the penalties apply for all group members, even if only one group member engaged in misconduct, or if the other group member was unaware of the misconduct.

These policies have been consistently applied for many semesters, and in order to ensure consistency and avoid biases, we cannot reduce the penalties or make any exceptions, even if you ask us.

This policy is not a game to be defeated, and such circumventions will be seen as plagiarism.


Student Support

Extensions Policy

We understand that life is unpredictable, and want to work with you to make sure you are supported. While we do not provide slip days in this course, please request an extension for any deadline by filling out this form.

Extenuating Circumstances & Inclusion

We recognize that our students come from varied backgrounds and have widely-varying experiences. As instructors, our goal is to teach you the material in our course. The more accessible we can make it, the better. If you encounter extenuating circumstances, please do not hesitate to let us know. The sooner we are made aware, the more options we have available to us to help.

We believe in the crucial importance of creating a learning environment that is welcoming and respectful to students of all backgrounds. The following are specific steps that will help us in achieving this goal:

  • If you feel your academic performance has been impacted negatively due to a lack of inclusion, or due to experiences outside of class such as current events or family matters, please reach out to the instructors and staff. Our job is not only to teach but to support you in every way we can.
  • If something is said in class (by anyone) that makes you feel uncomfortable, disrespected, or excluded by a staff member or fellow student, please report the incident so that we can work to address the issue and create a more supportive and inclusive learning environment. Some options are:
  • If we have inadvertently scheduled an exam or major deadline that creates a conflict with your religious observances, please let us know as soon as possible so that we can make other arrangements.
  • If your name differs from your legal name, you may designate a preferred name for the classroom by following these steps.
  • Pronouns can be different for each student and should not be assumed. If you are misgendered by staff or another student, please respond however is best for you in the moment. If you’re open to letting us know about the incident via email (cs168@berkeley.edu) or through the anonymous reporting form, we would really appreciate it, so we can both make sure you are appropriately addressed and continue to build habits of inclusion in our staff.
  • If you’re in need of laptops, Wi-Fi hotspots, or other required technologies, check out the Student Technology Equity Program.

Mental Health & Wellness

As a student you may experience a range of issues that can cause barriers to learning, such as strained relationships, increased anxiety, depression, difficulty concentrating and/or lack of motivation. These mental health concerns or stressful events may lead to diminished academic performance or reduce a student’s ability to participate in daily activities. UC offers services to assist you with addressing these and other concerns you may be experiencing.

If you or someone you know are suffering from any of the aforementioned conditions, consider the following services available to you:

DSP

We committed to creating a learning environment that meets the needs of its diverse student body including students with disabilities. If you anticipate or experience any barriers to learning in this course, please feel welcome to discuss your concerns with the instructors or head TAs. All DSP and accommodations-related materials for this course are kept in a repository separate from the rest of the course materials that is visible only to staff members with the “DSP Data” tag on the course website.

If you have a disability, or think you may have a disability, you can work with the Disabled Students’ Program (DSP) to request an official accommodation. The Disabled Students’ Program (DSP) is the campus office responsible for authorizing disability-related academic accommodations, in cooperation with the students themselves and their instructors. You can find more information about DSP, including contact information and the application process, at https://dsp.berkeley.edu. Students registered with DSP can expect to receive an onboarding email within a week of sending us your formal letter of accommodation through the AIM portal.

Course Climate

As a member of the Berkeley EECS community, realize that you have an important duty to help other students and staff feel respected in helping create an inclusive learning environment.

It is our expectation that all interactions with course staff and other students will demonstrate appropriate respect, consideration, and compassion for others. Please remember to be friendly and thoughtful; our community draws from a wide spectrum of valuable experiences. For further reading, please reference the Berkeley Principles of Community and Berkeley Campus Code of Student Conduct.

For exceptionally rude or disrespectful behavior toward the course staff or other students, we reserve the right to file a misconduct case with the Center for Student Conduct. You don’t need to be concerned about this policy if you treat other human beings with even a bare minimum of respect and consideration and do not engage in behavior that is actively harmful to others.

Acknowledgements

Parts of the syllabus have been adapted from CS61A, CS61B, CS61C, CS161, CS188, and CS152.