Welcome to cs184/284a! This is a handbook detailing the features of the course site and course procedures.


To set up your site account to begin tracking comments and assignments, please set your sid on your profile. This links you to a user on our roster.

If you are not yet enrolled or waitlisted in the course, please contact your TA or follow whatever instructions are given for your circumstances so that you may be added onto our role and your account linked.

Making Comments

Part of your participation credit comes from making comments on lecture slides. Comments can be written using github flavored markdown with support for katex (similar to latex). Take some time to get familiar with their syntax.

You may view your most recent comment on your profile. From there, you may also see all comments that you have ever made.


Accepting Assignments

When an assignment is released, you will see it appear on your profile under Assignments. Clicking on this link for the first time will ask you to confirm accepting the assignment.

After accepting, you will be able to see the assignment overview page. Click on the classroom link. This will have Github Classroom set up your project repo. Your repo may take some time to import. The project spec can be found by clicking the spec link.

Submitting Assignments

To submit an assignment, perform the following steps:

  1. commit and push all your work to your master branch
  2. tag and push the commit you wish to use as your submission as submission
git tag submission          // Tags the latest commit as `submission`
git push origin submission  // Push the submission tag to your remote

To update a tag, perform the following steps:

  1. delete the existing remote tag
  2. tag your desired commit as submission
  3. push your new tag to your remote
git push origin :refs/tags/submission   // Delete your old tag on the remote
git tag -f submission                   // Tags the latest commit as `submission`
git push origin submission              // Push the submission tag to your remote

You can tag a commit by its id with git tag {COMMIT_ID} submission, where COMMIT_ID is the desired commit's id.

For more on tagging, see this chapter of the git docs.

Verifying Submissions

To sanity check and ensure you have submitted your work, you can check on the assignment overview page. The view will check for a submission tag on github and show a preview of the root README.md file on the relevant tree. You can refresh this data using the refresh cta on the right.

If there is still no submission after refreshing, ensure that you have correctly tagged your submission as submission. If you are still unsure of the issue, please contact course staff.

You can also view your submission right on github under the releases tab. Your submission should be under a release titled submission. If you click the commit sha on the left, you can see the details of the latest commit. If you hit browse files on the top right of this page, you can then see the full file structure of your submittion. This is what we will grade. These links will also be available on the assignment overview page if a submission is found.