Link Search Menu Expand Document


Table of Contents

  1. About the Course
    1. Course Description
    2. Prerequisites
    3. Materials & Resources
    4. Support
  2. Course Components
    1. Live Lecture
    2. Labs
    3. Homework and Projects
    4. Exams
  3. Grades
    1. Grade Bins
    2. Regrades
  4. Assignments
    1. Submitting Assignments
    2. Late Submission
    3. Assignment Extensions
    4. Learning Cooperatively
  5. Academic Honesty
  6. 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 is 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 in need of 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; students may also attend live lectures remotely. 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.


Spring 2023 lab policies are the same as Fall 2022 lab policies, but differ from lab policies from previous semesters. Read this instead of asking former students how labs work.

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 are offering two lab formats: an attendance-based 30-student option called regular lab and a submission-based option called mega lab. Both are designed to help students learn the course material equally well. You can choose which format you want, and can switch options up to the end of the first week of class.

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 both parts. If you complete the lab assignment before the lab period is over and get checked off by the course staff, you may leave early and still receive credit. If you stay for the complete lab period, make significant progress on the lab assignment, and get checked off by the course staff, you will receive full credit for the lab even if you haven’t completed the whole lab assignment.

Your two lowest lab scores will be dropped, which means that missing up to two lab sections will not affect your grade. If you need to miss more than two, talk to your GSI.

You do not need to submit your lab notebook to Gradescope. You will receive full credit for the lab assignment if you are checked off. Your GSI will only check you off if you have either finished the lab notebook or worked until the end of the lab and made substantial progress. Discussion worksheets do not need to be submitted.

Regular lab sessions will not be webcast and are not recorded.

Mega Lab

Mega lab meetings are (approximately) one hour long. The entire time will focus on the discussion worksheet. There is no enrollment limit and attendance is optional.

Students in the mega lab must complete the weekly lab assignment and submit it to Gradescope by 11:00pm Friday. While no class time will be reserved for the lab assignment, there will be dedicated lab office hours on Friday mornings 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.

Mega lab sessions will be webcast and recorded.

Choosing a Lab Format

First-year students and students without prior programming experience are strongly encouraged to choose a 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.

Both options are meant to be great. Mega lab was first piloted last semester and received positive feedback from students. We’ve designed mega lab to appeal to students who learn well from large-format lectures, working independently, and coming to drop-in office hours when they need help. But the regular lab format has clear advantages for students who wish to work with others and get to know the course staff: a guarantee that lab will take exactly 2 hours each week, a dedicated lab GSI, and the peer learning that comes with regularly attending a small 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 are allowed to discuss problems with other students and course staff. See the Learning Cooperatively section below.

Homeworks will be released on Thursday and due the following Wednesday night.

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 held on Friday, March 10 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 9 from 3-6pm PT.

There will be one alternate exam for the midterm and the final exam, for those with exam conflicts. The alternate midterm exam will take place online 8-10AM PT on Saturday, March 11 and the alternate final exam will take place online 7-10PM PT on Tuesday, May 9. If you cannot make either the regular or alternative times, please contact immediately. The regular midterm and final exams will be 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.

Grade Bins

This semester, we will use grade bins to determine the lowest possible letter grade based on final composite scores (where each grade component is weighted according to above table). While we will not raise these bins, we may lower them. The table below contains the grade bins for this semester. For example, final composite scores between 80% (inclusive) and 90% (exclusive) will receive grades of at least B+/B/B-.

Composite Score (%) RangeGrade Range
[90, 100]A
[80, 90)B
[65, 80)C


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 in 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.

Late Submission

The deadline for all assignments in this course is 11 PM PST. Assignments submitted less than an hour after the deadline will not be marked as late. Homework and lab submissions after this time will not be accepted. Instructions on how to request an assignment extension are on the accommodations page.

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.

Projects will be accepted up to 2 days (48 hours) late. Projects submitted fewer than 24 hours after the deadline will receive 2/3 credit, and projects submitted between 24 and 48 hours after the deadline will receive 1/3 credit. Projects submitted 48 hours or more after the deadline will receive no credit.

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 this form will be visible only to the course instructors, the DSP Lead and Grading Leads.

Learning Cooperatively

We encourage you to discuss course content with your friends and classmates as you are 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 to collaboration. As noted above, you and your friends are encouraged to discuss course content and approaches to problem solving. But you are not allowed to share your code or answers with other students. Doing so is considered academic misconduct, and it doesn’t help them either. It sets them up for trouble on upcoming assignments and on the 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. Not only does such copying count as academic misconduct, it 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 in your possession solutions 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 a 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 with respect for other members of the class, just as the course staff will work with integrity and with 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 learn everything that’s being covered, you’ll be able to build on what you do 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!