Welcome to DSC 10 in Fall 2020! This page should answer most of the questions you might have about how the course is run; check out the frequently asked questions for answers to some common ones.

Here is what the syllabus will cover:

  getting started

To get started in DSC 10, you'll need to set up accounts on a couple of websites.


We'll be using Campuswire as our course message board. Campuswire is like Piazza, but unlike Piazza, Campuswire does not sell student data to third parties. You should have received an invitation via email, but if not you should get in touch with a course staff member as soon as possible, as I'll be making all course announcements via Campuswire.

You can send me direct messages on Campuswire, but I may not be able to get back to you immediately. Instead, in most cases it's recommended that you make a post with your question. You can make your post anonymously, but other people will be able to see and respond to your question.


We'll be using Gradescope for homework submission and grading. Most of the assignments will be autograded, meaning that you will write some code, upload it to Gradescope, and a computer will run your code to verify that it works properly. You should have received an email invitation for Gradescope, but if not please let us know as soon as possible (preferably via Campuswire).


Some aspects of the course, like office hours and the remote discussion, will be held using Zoom. You should already have an account through UCSD; see the Zoom guide for more help. Note that you will not be expected to have a webcam!


We'll use Canvas for the course gradebook and for the exams.

  required materials

We'll be using DSC 10's own textbook, Dive into Data Science. This textbook is a work-in-progress, so please let us know if you spot any errors or have any suggestions.

You will not need a webcam for DSC 10.


DSC 10 is entirely online this quarter due to the . As such, our lectures will be video lectures. There will be two video lectures per week. These lectures will be pre-recorded and posted on the front page of this website ( You will be able to watch them whenever is most convenient for you. I highly recommend that you watch each video, but doing so (or not doing so) won't directly affect your grade.

Video lectures have a lot of benefits over "traditional" lectures — you can pause them, rewind them, and speed them up, for instance. But there's no equivalent of "raising your hand" and getting an immediate like there is in a usual lecture. If you do have a question while watching a lecture, make a post on Campuswire — we'll do our best to answer it ASAP.

watch parties

Asynchronous lectures have their advantages: you can pause them, rewind, speed them up and slow them down. Plus you can watch them whenever you want -- that's important when many people in the class are in different time zones. But with asynchronous lectures, there's no equivalent of "raising your hand" and getting an immediate response like there is in a usual lecture.

We're going to try and address this with watch parties on Zoom. Here's how it will work. On the day of the lecture, I'll post the lecture videos to YouTube and Canvas before the scheduled lecture time of 3:30 PM PST. At the lecture time, we'll hold a "watch party": a Zoom meeting where we'll watch the lecture videos together. I'll be controlling the video, pausing it to add additional additional thoughts, answer questions you might have, or to argue with what I said in the recording.

The idea of the watch party is to give a richer lecture experience to those who want it while preserving the benefits of asynchronous lectures. Attending the watch party is optional.


Discussion section focuses on solving concrete problems using the techniques introduced in lecture. It is excellent preparation for the coming assignments. DSC 10 has four discussion sections this quarter — three are in-person, while one is entirely remote. The remote discussion takes place on Tuesdays from 6:00 &mdash 7:00 PM PST via Zoom. Attendance (either in-person or at the virtual discussion) is highly recommended, but not required.

You'll also notice a Friday "Laboratory" component on your schedule. In a typical quarter the lab is an additional office hour specifically for Python help. This quarter, we will not be utilizing a scheduled lab time; instead, you can ask you general Python questions in the other office hours spread throughout the week. In short, you can ignore the "Laboratory" section.

Please note: if you are registed for an in-person discussion section, you must attend that section *or* the online discussion. If you are in the remote discussion section, you must take discussion remotely. This is due to the campus limiting the number of people in classrooms due to COVID.

  office hours

Course staff, including tutors, TAs, and me (Justin), will hold office hours regularly throughout the week. This quarter, all office hours will be via Zoom. Please see the office hours page for the schedule and for instructions.

  homeworks, labs, and projects

There are three types of assignments in this class: labs, homeworks, and projects. All assignments are completed in Jupyter Notebooks, as will be discussed in lecture.


Labs are weekly coding assignments designed to help you build the skills needed to complete the homeworks. Each lab covers the previous week's material.

While completing the lab, you will be able to run a sequence of "tests" which check to make sure that your answers are correct. If all of the tests pass, you will get full credit!

Each person must submit each lab on their own, but you are welcome to discuss the labs with others. However, you cannot copy or share answers with other students.


Homeworks are like more challenging labs, with one key difference: the tests in homeworks only check to make sure that your answer is reasonable; they do not make sure that it is correct. Homeworks will generally be assigned weekly, with some exceptions.

You may work on homework assignments and projects either alone or with a partner, using pair programming. This means that you should work on the assignment together, discussing each problem together, and writing each answer together. If working with a partner, you should submit one assignment as a team (ask a classmate or a tutor if you are unsure how to do this).


Projects are like more challenging homeworks. They are somewhat longer than a typical homework, and they require you to pull together ideas from the previous weeks, rather than just the last week. There are two projects: a midterm project, and a final project. You may work together with a partner on the projects. If working with a partner, you should submit one assignment as a team (ask a classmate or a tutor if you are unsure how to do this).

deadlines and "slip days"

Homework assignments and projects must be submitted by the 11:59:00 PM PST deadline to be considered on time. You may turn them in as many times as you like before the deadline, and only the most recent submission will be graded, so it's a good habit to submit early and often. If you make a submission after the deadline, your assignment will be counted as late. You can contact a staff member to have this last submission deleted and your previous on-time submission restored, if you so choose.

You have six seven "slip days" to use throughout the quarter. A slip day extends the deadline of any one homework, lab, or project by 24 hours. Slip days can't be "stacked" Slip days can be stacked; this allows you to turn in assignments up to three days late. However, the cost increases the later you wish to turn in an assignment.

Days Late Total Cost in Slip Days
1 1
2 3
3 7

Slip days are applied automatically at the end of the quarter (you don't need to ask in order to use one), but it's your responsibility to keep track of how many you have left. If you run out of slip days and submit an assignment late, it may still be graded so that you'll see what questions you missed, but the grade will be changed to a zero at the end of the quarter.

Slip days are designed to be a transparent and predictable source of leniency in deadlines. You can use a slip day if you are too busy to complete an assignment on its original due date (or if you forgot about it). But slips days are also meant for things like the internet (or the datahub server!) going down at 11:58 PM just as you go to submit your homework. Slip days are meant to be used in exceptional circumstances, so you probably shouldn't get close to using all six — if you feel that you will need that many due to a reason like illness or depression, send me a message and we'll figure something out.


There will be one midterm and one final exam, held on the following dates:

  • Midterm: Tuesday, November 10 (covers weeks 00 — 04)
  • Final Exam: Monday, December 14 (cumulative)

The exams will be online and delivered via Canvas quiz or similar. There will be a window of 24 hours during which you can start your exam, but once your exam is started you will have a limited amount of time to finish it: 1.5 hours for the midterm and 3 hours for the final exam.

  grading scheme

We'll be using the following grading scheme:

  • 30%: Homework Assignments (lowest dropped)
  • 15%: Lab Assignments (lowest dropped)
  • 10%: Project One
  • 10%: Project Two
  • 10%: Midterm Exam
  • 25%: Final Exam

You must score at least 55% on the final exam to pass the course. If you score lower than 55% on the final, you will receive an F in the course, regardless of your overall average.

The class isn't curved. At the end of the quarter, I will run an algorithm to automatically find the best cutoffs for each letter grade, but these cutoffs can only be lowered. For instance, a 93% will always be an A.

  illnesses and extenuating circumstances

Because of the pandemic, we must prepare for the unfortunate possibility that you will get sick and be unable to participate in this class for long periods of time. The university has a mechanism for helping in this situation: the Incomplete. If you are unable to complete the course because of reasons outside of your control, you may be given an Incomplete instead of a letter grade or a P/NP. This simply means that you will complete the rest of the work at a later time. Once you have done so, your overall grade is calculated and your Incomplete grade is replaced.

An Incomplete does not allow you to re-do work that has already been completed, only to do work that hasn't been completed.

Unfortunately, your personal health is not the only think that might prevent you from participating in this class. Some of us will get sick, others will have family members fall ill, and others might lose their jobs. If you have any doubt about your ability to perform satisfactorily in this course due to something outside of your control, please contact me ASAP and we'll figure something out.

  frequently asked questions

Do I need a webcam for this class?

Nope! If you have one, you're welcome to use it; it can be especially useful to share your work during office hours. But we won't require webcams. In particular, we are not using proctoring services like examity.

What happens if the professor gets sick and can't run the course?

We've prepared for this possibility in a couple of ways. Namely:

  1. "Backup" faculty have been selected who are ready to take over the course.
  2. All grades will be stored in Canvas so that they are accessible to the university.

Since lecture is online, there is no physical limitation on class size. So we can let everybody in off the waitlist, right?

We don't have a classroom size limitation, but we only have so many tutors/TAs (and I don't think we can hire more at this point). That's the real limitation. If we scaled the class up without also scaling the number of TAs, I think we'd get overwhelmed. That said, all of my materials are going to be publicly available on, so if you're unable to make it in off the waitlist you can at least audit the class!