In Fall 2020, CS10 is planning to try a new teaching plan to better support students and
encourage participation during this unusual online offering of the course. Special thank you
to John DeNero and the CS61A team for writing the original document which this was based on.
Collaboration, not Competition
You are encouraged to form study groups and work together to understand course material, but
(unless specified otherwise) all your graded work should be your own. Academic integrity and
ethical conduct are of utmost importance in the College of Engineering and at UC Berkeley,
especially with online offerings. We want to remind you that this course is graded on an
absolute scale – that means that there will be no curve at the end of the course, so you
don’t have to feel the pressure of having to cheat to get your A. You’re competing against
an absolute scale, and you can all (in theory) receive A+ grades! (Though, we might need to
make small bin adjustments if the GPA of the class is below the department suggested range,
so we might adjust your score up, but it’ll never be adjusted down).
Flexibility and Community
Online classes taught during a time of wildfires, power outages, and a worldwide pandemic
need to have policies that support students in different living situations, and in different
time zones. They need to have a way that the students can get to know each other, learn from
each other, and study with each other. They need to have a way the course staff can get to
know their students, and (most importantly) check in with them to make sure their health and
learning is going ok. The deadlines need to have flexibility in case a student or team needs
some more time to finish a project or homework. We believe we have built all of that into
our class this semester.
Synchronous and Asynchronous Learning
Research (and anecdotal evidence) have shown that students who keep up with the material
every week do better than students who fall behind, start projects late, and have to cram
for each exam at the last minute. So, as much as you can, attend our face-to-face live
session (Mon @ 10am PST … but Wed when Monday is a holiday) + a discussion (5 different
times) synchronously. However, you will not be penalized for being in a time zone that makes
that difficult, and you will find recordings of these sessions available. The only required
synchronous element is a weekly 15m check-in with you and three other students with video on
(with exceptions on a student-by-student basis), but will have many times throughout the day
available for that.
Course Elements
We have a few different components to this course, all of which we
have tried to optimize for online learning.
Lecture
Lecture content has been pre-recorded with high production value.
There will be questions to answer via Gradescope after every lecture, for which you will
earn credit. On Mondays at 10 AM, there will be a live weekly summary lecture--all
content will be the same as in the recordings, but in less depth. You are required to watch
the recording and encouraged (but not required) to attend the live sessions. If Monday is a
holiday, the live session will be Wednesday. The live session wil also be recorded.
Lab
Similar to discussion, we will have five labs scheduled through the
day to be sensitive to differences in time zones. Lab attendance is encouraged and will be
counted towards extra credit, but is not mandatory. Labs will be conducted through Discord.
Checkoffs either happen in lab or via a Google Form submission. Note that you are graded on
completion.
Discussion
Discussion content will be pre-recorded. However, we will also have
five live discussion sections, scheduled throughout the day to be sensitive to differences
in time zones. Discussion attendance is encouraged and will be counted towards extra credit,
but is not mandatory. Live discussions will be held via Zoom.
Check-Ins
Once a week, mandatory fifteen-minute synchronous group check-ins
will be scheduled throughout the day to be sensitive to differences in time zones. Students
will earn credit for attending.
Head Teaching Assistant
Head TA Murtaza Ali will run the course at a high level and
is the point of contact for questions when you do not know who to reach out to. For any
high-level course questions, reach out to Murtaza before Dan. He will also teach a
discussion section.
Lead Teaching Assistants
Lead Administrative TA Isaac Merritt, Lead Lab TA
Kathleen Gao, Lead Exam TA Max Yao, and Lead Discussion TA Patricia Yu
have course-wide administrative duties. Each Lead TA will also teach a section.
Teaching Assistants
Teaching assistants will focus their efforts on teaching a
particular component of the course, either lab or discussion. Some TAs may also spearhead
different areas of course development. Lab TAs:Bryant Bettencourt, Lam
Pham, and Shannon Hearn. Discussion TAs:Yolanda Shen,
Andrew Burke, and Dani Swords.
Readers
Readers will be in charge of grading for the semester. The readers
for the course are Samhita Sen, Aayush Shah, Taroob Zia, and Sarah
Varghese. Please reach out to the Head Reader, Kellyann Ye, for any
grading-related questions.
Tutors
Tutors will primarily be running the check-in groups mentioned
above. The tutors for the course are Nicholas Lai and Gowri Somayajula. Please
reach out to the tutors if you have any concerns about your ability to keep pace with the
course, and they will connect you to the right person or resource needed to assist you.
Course Technology
Zoom
The primary medium for all synchronous portions of the course.
Google Drive and YouTube
We will release recordings for the course via this platform.
Piazza
The class forum for all questions and communication regarding the
course.
Gradescope
This is where assignments will be turned in and graded.
PrairieLearn
This is where exams will be taken.
Discord
A video conferencing/social community platform where you’ll be able
to collaborate and communicate with course staff as well as other students. Labs will be
held via Discord.
Course Website
This is the central hub for all information about the course.
Grading Scheme
The course will be graded out of 500 points, and there is no curve.
The grading breakdown and bins can be found below.
Grading Breakdown
Exams - 200 points
Quest - 20 points
Midterm Exam - 80 points
Final Exam - 100 points
Projects - 225 points
Project 1: Wordmatch - 10 points
Project 2: Mastermind - 20 points
Project 3: 2048 - 30 points
Project 4: Explore - 40 points
Project 5: Python - 50 points
Project 6: Final Project - 75 points
Labs - 30 points
18 total - 2 points each
Lowest 3 scores dropped
Reading Responses - 20 points
12 total - 2 points each
Lowest 2 scores dropped
Attendance - 25 points
14 weekly check-ins - 1 point each
Post-Lecture Questions - 11 points total
Grading Ranges
We will be awarding the following grades based on the following
point ranges:
A+: 485 - 500 points
A: 460 - 484 points
A-: 450 - 459 points
B+: 440 - 449 points
B: 420 - 439 points
B-: 400 - 419 points
C+: 375 - 399 points
C: 360 - 374 points
C-: 350 - 359 points
D: 300 - 349 points
F: 0 - 200 points
Flexibility + Extra Credit
We aim to be as flexible as possible as we would like you all to do
well. Below, we outline some of our policies intended to help ease your stress levels.
Late Submissions and Slip Days
If you cannot turn in an assignment on time, contact your TA (and
partner on partner assignments) as early as possible. Late project submission requires
approval by your TA. For each day a project is late, one-third of the total points you would
have earned on the assignment will be deducted. You will be granted six slip days throughout
the course. A slip day allows you to extend the deadline period by one day with no penalty.
For example, if you turn in an assignment due Sunday at 11:59 PM any time before Monday at
11:59 PM, you will use one slip day. It will be applied automatically, and if you use more
than 6 throughout the semester, than we will apply them to the assignments in a way that
maximizes your overall course grade.
Clobber Policy
The Clobber Policy allows you to 1) Erase your quest score and
replace it with your midterm exam score, 2) Erase your midterm exam score and replace it
with your final exam score, 3) Erase your quest score and replace it with your final exam
score, or 4) Erase your quest AND midterm score and replace it with your final exam score.
The clobber policy exists so that if you add the class late or had to miss the quest or
midterm due to unforeseen circumstances, you will be able to receive a grade for the exams.
Pass/No Pass Grading
This section only applies to students who are not taking the course
for a letter grade. To receive a Passing grade in the course a student must get at a C-.
When taking the class P/NP, a student will not receive an NP if they at minimum turn in all
the course assignments and take all exams with meaningful effort. This includes: homework 1, homework 2, homework 3,
lab check-offs, midterm project, final project, and explore post.
EPA - Effort, Participation, Altruism
EPA is a form of extra credit that we award invisibly at the end of
the semester. Essentially, every TA will have an opportunity to award students with EPA
points, up to 3 points in each category.
Effort stands for the amount
of work a TA has recognized that you put into the course. This can be observed through
things like office hours, labs, and more.
Participation includes being
an active voice in discussions, posting and answering questions on Piazza (our Q&A forum),
and getting involved with the course in other ways.
Altruism points can be awarded
for any observed efforts in helping your peers, sharing and posting helpful resources on
Piazza for your peers, and any other work you put into furthering your peers’ understanding
of the material.
Academic Integrity
Cooperation has a limit and in CS10 that limit is copying lines
of code or using ideas that are not your own code. Projects should be completed and
turned in individually unless the project calls for a partner. Feel free to discuss the
projects with others beforehand; just submit your own work in the end. By discussing
assignments, we mean talking about high level ideas (for example, you may discuss how to
debug and clarify the spec questions; you may not discuss the solution). Projects are to
be completed in groups of 2 or 3, but you may discuss them more broadly than with your
partner(s). However, you should not be sharing lines of code with others or reading code
from other people's projects. Write your own programs and keep them to yourself.
We expect you to hand in your own work, take your own tests,
and complete your own projects. The assignments and evaluations are structured to help
you learn. The course staff works hard to put together this course, and we ask in return
that you respect the integrity of the course by not misrepresenting your work.
The EECS Department Policy on Academic Dishonesty says,
"Copying all or part of another person's work, or using reference materials not
specifically allowed, are forms of cheating and will not be tolerated." The policy
statement goes on to explain the penalties for cheating, which range from a zero grade
for the test up to dismissal from the University for a second offense.
Rather than copying someone else's work, ask for help. You are
not alone in this course! The TAs, academic interns, and instructor are all here to help
you succeed. If you ever need help in this course, let us know in person, during office
hours, or via email/Piazza.
If you have any question as to if what you are doing
constitutes academic dishonesty, please reach out to a staff member. If any academic
dishonesty is detected, saying, “I did not know that was academic dishonesty,” will not
be accepted.