CS 186 at UC Berkeley


Course Format

CS W186 is different from most courses in that there is no in-person lecture. Instead you'll get exposed to most of the material online via edX, and then attend in-person discussion sections / office hours to supplement your understanding.

Before continuing please enroll in edX here, using your UC Berkeley credentials. Please also enroll in the course Piazza, as Piazza is our main method of communication and you are responsible for checking it frequently.

edX Materials

Lecture & Interactive Exercises / Quick Checks: On edX, you'll find video lectures and other interactive exercises meant to reinforce the concepts in the videos. Please try and stay up to date, as it is deceptively difficult to catch up if you fall behind in an online course.

Vitamins (a.k.a. Quizzes): Vitamins are short, weekly assignments on edX designed to keep you on schedule and check your understanding of the basics from lecture. Vitamins must be submitted on time! However, your lowest two vitamin scores will automatically be dropped at the end of the semester. For each vitamin, you have 3 attempts per question, and you are encouraged to come to office hours for help. In particular, if you use all your attempts and don't get a full score, please come to office hours so a TA can walk through any conceptual misunderstandings or mistakes with you. Afterwards, they can reset your attempts and you can try again.

Discussion Sections

In-person discussion sections are an optional and highly recommended component of this course, and you may attend whichever section(s) you like. In discussion, you'll learn more in depth about the previous week's content and you'll have the opportunity to ask your TA relevant conceptual questions. This semester, we also offer a specially designated Lost Section targeted towards students that feel behind or lost regarding the course. It will be 1.5 hours long and will spend extra time on conceptual fundamentals, building all the way up to exam-level practice. Anyone is welcome to attend. All discussion sections will start on the week of September 2; you can find a list of discussion sections under the Calendar tab above.

Office Hours

Office hours are a great place to go for help with homework or any other content-related questions. Administrative OH will be held Friday, 1:00 - 2:00 PM in Soda 283H and are solely dedicated to administrative and logistical questions regarding the course (you can also go here for vitamin resets). You can find a list of office hours under the Staff tab on this page. The course calendar under the Calendar tab also shows the office hours for the week.


Throughout the semester, we will release 5 programming assignments via Piazza, each worth 7% of your grade. They are designed to cover distinct parts of the course and are done in SQL (HW1) and Java (HW 2 - 5). We will try to hold at least one homework party for each, but the time, location, and logistics will be announced much closer to the due dates.

Late Policy: You will get 72 hours of slip time (counted in minutes) for the entire semester. You may use your slip time for any homework submission except Homework 3: Part I and Homework 4: Part 1. After using all your slip time, you'll be docked 33% credit for each extra late day (counted in days, not minutes) on your homework submission. We grade your latest submission by default, so if you want to defer to an earlier submission instead, email cs186berkeley.backup@gmail.com.


Your total score will be calculated as follows:

  • Vitamins (a.k.a. Quizzes): 10%
    • Your lowest two vitamin scores are automatically dropped at the end of the semester.
  • Homework (a.k.a. Projects): 35%
  • Two Midterm Exams: 30%
    • 18% will come from your higher-scoring exam, and 12% will come from your lower-scoring exam.
    • Midterm 1 is in-person and held on Friday, October 4, 8:00 - 10:00 PM.
    • Midterm 2 is in-person and held on Friday, November 8, 8:00 - 10:00 PM.
  • Final Exam: 25%
    • The final is in-person and held on Wednesday, December 18, 11:30 AM - 2:30 PM

Some other key notes on grading:

  • The class will be curved to fit within EECS departmental guidelines, but specific bin and curve-related data will not be released to students.
  • Participation on Piazza and in discussion/office hours may positively influence your semester grade.
  • Work that you submit must be your own. We will run the latest software duplication checkers on all your assignments.
  • We will follow the EECS departmental policy on academic honesty, so be sure you are familiar with it. And hey — don't cheat. Not cool.


The official textbook for CS W186 is Database Management Systems, 3rd Edition, by Ramakrishnan and Gehrke. Lectures will correspond to the book sections listed on the main page of this website (under the Calendar tab). Note that while the textbook is useful, it is not mandatory; exams and all other aspects of the course will center on material as covered in the lectures.

You may also want to read our optional recommended alternative, Database Systems Concepts 6th Edition by Silberschatz, Korth and Sudarshan.

Other Questions & Exceptional Circumstances

Piazza is the main method of communication for this course. Join it ASAP if you haven't already. For issues, concerns, requests, and special accommodations that you do not feel comfortable posting on Piazza, please email cs186berkeley.issues@gmail.com.