Link Search Menu Expand Document


Table of Contents

  1. Policies
    1. Policies
    2. About the Course
      1. Course Description
      2. Prerequisites
      3. Materials & Resources
      4. Support
    3. Course Components
      1. Live Lecture
      2. Labs
      3. Homework and Projects
      4. Exams
    4. Grades
      1. Submitting Assignments
      2. Late Submission
      3. Assignment Extensions
      4. Accommodations
        1. Privacy
      5. Learning Cooperatively
      6. Academic Honesty
    5. A Parting Thought


About the Course

Course Description

Foundations of Data Science combines three perspectives: inferential thinking, computational thinking, and real-world relevance. Given data arising from some real-world phenomenon, how does one analyze that data so as to understand that phenomenon? The course teaches critical concepts and skills in computer programming and statistical inference, in conjunction with hands-on analysis of real-world datasets, including economic data, document collections, geographical data, and social networks. It also delves into social issues surrounding data analysis, such as privacy and study design.


The curriculum and format are designed specifically for students who have not previously taken statistics or computer science courses. Students with some prior experience in either statistics or computing are welcome to enroll and often find that this course offers a new perspective that blends computational and inferential thinking. Students who have taken several statistics or computer science courses should instead take a more advanced course like Data 100.

Materials & Resources

Our primary text is an online book called Computational and Inferential Thinking: The Foundations of Data Science. This text was written for the course by the course instructors. A complete PDF of the textbook can be found in the Student Materials Google Drive.

The computing platform for the course is hosted at Students find it convenient to use their own computer for the course. If you do not have adequate access to a personal computer, we can help you borrow a machine; please contact


You are not alone in this course; the staff and instructors are here to support you as you learn the material. It’s expected that some aspects of the course will take time to master, and the best way to master challenging material is to ask questions. For questions, use Ed. We will also hold in-person and virtual office hours that offer drop-in help on assignments and course material.

Your lab TA will be your main point of contact for all course-related questions/grade clarifications. The TAs are here to support you, so please lean on your lab TA if you need more support in the class or have any questions/concerns.

Small-group tutoring sessions will be available for students needing additional support to develop confidence with core concepts. In past semesters, students who attended have found these sessions to be a great use of their time. Details about sign-ups will be available a few weeks into the term.

Course Components

Live Lecture

Live lectures will be held on Mondays, Wednesdays, and Fridays starting at 10:10am in Wheeler 150. Recordings of these sessions will be provided, but students are highly encouraged to attend in real-time. Slides and lecture examples will be provided on the course website.


Weekly labs include a discussion worksheet covering recent material and a programming-based lab assignment that develops skills with computational and inferential concepts. Lab assignments will be released on Monday night each week.

This semester, we offer two lab formats: an attendance-based option called regular lab and a submission-based option called self-service lab. Both are designed to help students learn the course material equally well. You can choose which format you want. Switching formats will be permitted during the first week, but most students will pick one format and stick with it for the semester.

Regular Lab

Regular lab meetings are two hours long. The first hour focuses on the discussion worksheet and group problem-solving. The second hour is dedicated to completing the programming-based lab assignment. To receive credit for lab, you must attend the full discussion portion at which point the GSI will take attendance. You must also submit the lab notebook to Gradescope with significant progress by Friday 5pm; the intention is for you to use the second hour of the lab meeting to work on the assignment so you don’t have to work on it outside of class time. Discussion worksheets do not need to be submitted.

You will have two lab drops to use throughout the semester. To use a lab drop, you must message your GSI at least one hour prior to the start of your lab, informing them that you will not be in attendance. For special circumstances, please talk to your GSI.

Regular lab sessions will not be webcast or recorded.

Self-Service Lab

Students in the self-service lab must submit the weekly lab assignment to Gradescope by Friday, 5 pm. While no class time will be reserved for the lab assignment, there will be dedicated drop-in office hours to assist students with completing the lab. Lab assignments include automatic feedback, so completing the lab assignment in full guarantees you a perfect score. Lab assignments are designed to take one hour.

Your two lowest lab scores will be dropped.

Choosing a Lab Format

First-year students and students without prior programming experience are strongly encouraged to choose regular lab. Working on programming-based lab assignments in a small classroom with dedicated course staff available to help is a great way to learn, especially if this is your first exposure to coding!

Both options are meant to be great. The self-service lab is designed to appeal to students who learn well from large-format lectures, work independently at their own pace, and come to drop-in office hours when they need help. However, the regular lab format has advantages for students who wish to work with others and get to know the course staff: a guarantee that lab will take no more than 2 hours each week, a dedicated lab GSI, and the peer learning that comes with regularly attending a weekly section.

Homework and Projects

Weekly homework assignments are a required part of the course. You must complete and submit your homework independently, but you can discuss problems with other students and course staff. See the Learning Cooperatively section below.

Homework will be released on Thursday and due the following Wednesday. Your 2 lowest homework scores will be dropped.

There are 3 projects throughout the semester. A checkpoint must be reached by the following Friday after the project is released, and the whole project is due by the following Friday after the checkpoint.

If you submit a homework or project 24 hours before the deadline or earlier, you will receive 5 bonus points on that assignment.

Data science is about analyzing real-world data sets, and so you will also complete three projects involving real data. On each project, you may work with a single partner; your partner must be from the lab you enrolled in. Both partners will receive the same score.


The midterm exam will be TENTATIVELY held on Friday, March 8 from 7-9pm PT. Please note the date and time carefully.

The final exam is required for a passing grade, and will be held on Tuesday, May 7, from 3-6m PT.

There will be one alternate exam for the midterm for those with exam conflicts. There will not be an alternate exam for the final exam. All exams will be held in-person.


Grades will be assigned using the following weighted components. Every assignment is weighted equally in its category. For example, there are 3 projects, so each project is worth (25 / 3)% = 8.3% of your grade.

Lab Credit10%

In past semesters of Data 8, more than 40% of the students received grades in the A+/A/A- range and more than 35% received grades in the B+/B/B- range.

Grades for Homeworks, Projects, and Labs will be posted on Gradescope about 1 week after the assignment’s due date. Solutions to the assignment and common mistakes will also be posted on Ed. It is up to you to check the solutions and request a regrade request before the regrade deadline (typically 5 days after grade release). Regrade requests can be made on Gradescope. Any regrade request past the deadline will not be looked at; this is to enforce the same deadline across all students, so please do not delay reviewing your work.

For the midterm exam, there will be a regrade request submission window. Please review the solutions and common mistakes before submitting a regrade request. Requests where a rubric item was incorrectly selected or not selected will be reviewed, but any regrade requests that ask to change the rubric or for partial credit will be ignored.

Submitting Assignments

All assignments (homework, labs, and projects) will be submitted on Gradescope. Please refer to this tutorial for submitting assignments. Please note that this video does NOT cover the submission of written work. You should follow the instructions written on each assignment to see how to submit written work.

We understand that the submission process is new for many students taking the course. To account for this, we will do our best to accommodate submission-related issues (submitting to the wrong assignment, not saving files correctly, autograder timing out) up until the third week of the course. After the third week, it is your responsibility to confirm you have submitted your work correctly. We reserve the right to impose penalties for having to resubmit students’ work beyond this point.

Late Submission

The deadline for all assignments in this course is 5 PM PST. Submissions after this time will be accepted for 24 hours and will incur a 20% penalty. Any submissions later than 24 hours after the deadline will not be accepted.

If you need an extension, instructions on how to request an assignment extension are in the following section.

Your two lowest homework scores and two lowest lab scores will be dropped in the calculation of your overall grade. If you have an ongoing situation that prevents you from completing course content, please contact your lab TA.

Assignment Extensions

We understand that life happens and want to provide you with the support you need. If you need to request an extension, please fill out this form. Submissions to the form will be visible only to the course instructors and select Lead TAs. Please ensure that extension requests are submitted before the deadline to ensure a timely response on our end.

Extension requests are most likely to be approved if they are submitted at least 3 days in advance and requesting at most 2 days’ extension. Requests outside of these guidelines are subject to more detailed review and may require a meeting with course staff or be denied. Students with DSP extension accommodations must submit extension requests before the assignment deadline.

Please read the entirety of the form and its instructions before/while submitting a request to reduce confusion.

We hope that this policy encourages you to be proactive in communicating difficulties in advance while also allowing flexibility in the case of unforeseen circumstances.


We will provide appropriate accommodations to all students enrolled in Berkeley’s Disabled Students Program (DSP). To ensure that you receive the appropriate accommodations, have your DSP specialist submit a letter confirming your status and accommodations.

If you’re not enrolled in DSP, or are in the process of being onboarded by DSP, you may still be eligible for accommodations. We also aim to provide fair and appropriate accommodations to any students who, because of extenuating circumstances, may need them. Please reach out to in this case.


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 the instructors and selected Lead GSIs.

For any DSP and accommodations-related communications, please reach out to and the DSP Lead will get back to you. This inbox will be visible to future members of course staff, so if you ever have a communication that you wish to remain private, let us know and we can delete the email exchange once the conversation is resolved.

Learning Cooperatively

We encourage you to discuss course content with your friends and classmates while working on your assignments. No matter your academic background, you will learn more if you work alongside others than if you work alone. Ask questions, answer questions, and share ideas liberally.

If some emergency takes you away from the course for an extended period, or if you decide to drop the course for any reason, please don’t just disappear silently! You should inform your lab TA and your project partner (if you have one) immediately so that nobody is expecting you to do something you can’t finish.

Academic Honesty

You must write your answers in your own words, and you must not share your completed work. The exception to this rule is that you can share everything related to a project with your project partner (if you have one) and turn in one project between the two of you, and if you are attending a lab session and have a lab partner you can share everything related to that lab with your lab partner.

Make a serious attempt at every assignment yourself. If you get stuck, read the textbook and go over the lectures and lab discussion. After that, go ahead and discuss any remaining doubts with others, especially the course staff. That way, you will get the most out of the discussion. It is important to keep in mind the limits of collaboration. As noted above, you and your peers are encouraged to discuss course content and approaches to problem solving. But you cannot share your code or answers with other students. Doing so is considered academic misconduct, and it won’t help your peers either. Sharing answers will set them up for trouble on upcoming assignments and exams.

In addition, posting course content such as homeworks, projects, and exams on any 3rd party websites or submitting your own answers on outside sites/forums is considered academic misconduct.

You are also not permitted to turn in answers or code that you have obtained from others or online sources. This includes any generative AI tools, including but not limited to ChatGPT. Not only does such copying count as academic misconduct, but it also circumvents the pedagogical goals of an assignment. You must solve problems with the resources made available in the course. You should never look at or have solutions in your possession from another student or another semester.

Please read Berkeley’s Code of Conduct carefully. Penalties for academic misconduct in Data 8 are severe and include reporting to the Center for Student Conduct. They might also include an F in the course or even dismissal from the university. It’s just not worth it!

When you need help, reach out to the course staff using Ed, in office hours, and/or during labs. You are not alone in Data 8! Instructors and staff are here to help you succeed. We expect that you will work with integrity and respect for other members of the class, just as the course staff will work with integrity and respect for you.

Finally, know that it’s normal to struggle. Berkeley has high standards, which is one of the reasons its degrees are valued. Everyone struggles, even though many try not to show it. Even if you don’t fully master everything covered, you can build on what you learn, whereas if you cheat, you’ll have nothing to build on. You aren’t expected to be perfect; it’s ok not to get an A.

A Parting Thought

The main goal of the course is that you should learn and have a fantastic experience doing so. Please keep that goal in mind throughout the semester. Welcome to Data 8!