CS186 Projects
Getting Started


This project is worth 9% of your overall grade in the class.
  • Part 1 is due Thursday, 3/3/2022 at 11:59PM PST (GMT-8) and will be worth 30% of your score. Your score will be determined by public tests only.
  • Part 2 is due Wednesday, 3/16/2022 at 11:59PM PDT (GMT-7) and will be worth the remaining 70% of your score. We'll be running the public tests for Part 2 and all hidden tests for both Part 1 and Part 2 on this submission.
The workload for the project is designed to be completed solo, but this semester we're allowing students to work on this project with a partner if you want to. Your partner does not have to be the same one as you had for Project 2. Feel free to search for a partner on this Piazza thread!


You'll need to finish both Iterators & Joins lectures to finish Part 1.
To finish Part 2 you'll need to watch up to the Query Optimization: Costs & Search lecture.

Fetching the released code

The GitHub Classroom link for this project is in the Project 3 release post on Piazza. Once your private repo is set up clone the Project 3 skeleton code onto your local machine.

Setting up your local development environment

If you're using IntelliJ you can follow the instructions in Project 0 to set up your local environment again. Once you have your environment set up you can head to the next section Part 0 and begin working on the assignment.

Working with a partner

Only one partner has to submit, but please make sure to add the other partner to the Gradescope submission. If you want to share code over GitHub you can follow the instructions here.

Debugging Issues with GitHub Classroom

Feel free to skip this section if you don't have any issues with GitHub Classroom. If you are having issues (i.e. the page froze or some error message appeared), first check if you have access to your repo at https://github.com/cs186-student/sp22-proj3-username, replacing username with your GitHub username. If you have access to your repo and the starter code is there, then you can proceed as usual.

404 Not Found

If you're getting a 404 not found page when trying to access your repo, make sure you've set up your repo using the GitHub Classroom link in the Project 3 release post on Piazza.
If you don't have access to your repo at all after following these steps, feel free to contact the course staff on Piazza.