Project (CS 376)

Instead of a final exam, our course will culminate in a final project.

Objectives

Successful projects will demonstrate that you can:

Successful projects will also demonstrate competency in various other skills, but the specific skills will vary between people and projects. Some options include:

You are encouraged to try to demonstrate competency in several of these topics even before the final project submission. Please either write a note or arrange a brief meeting.

Choosing a Project

The choosing-a-project page has some suggestions for project types.

Rubric

Rubric

This rubric is a rough guide; adjustments may be made based on the specifics of your project. The choosing-a-project page has some details about evaluation of different types of projects.

Since different projects will have different emphases, projects wil lbe graded holistically based on their contribution to your portfolio:

Here are some ways that projects can demonstrate these levels of quality. The strongest projects will demonstrate several of these.

Minimum expectations:

An excellent project could become a submission to an academic conference or a blog post. At the very least it should be a good portfolio piece.

Teams

Milestones

To show progress:

  1. Submit your project report early, nearly blank but with a clear vision statement, and submit updates to it as you progress.
  2. Include an update on your project progress in your weekly reflection.

Final Deliverables

Presentation

The final course meeting (during the designated final exam period) will be devoted to final project presentations. Feedback on others’ projects is expected, so attendance is mandatory.

Presentations should communicate the key points (not every detail) of your project, such as:

Example Presentation Outline

Slides are not strictly required (you could talk as you scroll through a notebook) but are probably helpful. Aim for 5 minutes of content. All team members should participate.

Example Presentation

Here is an example presentation that I threw together. Self-critique:

By the end of the day of final presentations, submit the following:

The following sections provide additional detail about each component.

Technical Report

The report should be at the level of polish and formality of a blog post (more than a class homework assignment, less than an academic paper). Precise technical language should be used in descriptions of methods.

Example Report Structure

Reports should be organized in a way that makes sense for your project. The following is a general outline of what a report might look like. You can use this as a starting point, but feel free to adjust it to fit your project.

Artistic or exploratory projects may need other elements.

Checklist:

Reflection

Write an individual reflection (about a page or should suffice) discussing:

  1. Which course objectives do you think this project demonstrates? For each one, write a sentence or two about how you think it demonstrates that objective. (You can find the course objectives in the syllabus.)
  2. How does this project fit into your portfolio? What technical skills do you want it to demonstrate? What makes it high-quality?
  3. Imagine discussing this project in a technical job interview. What question does the interviewer ask? What’s your response? (Ask an LLM for feedback on this one.)
  4. What was your role or contribution to the project (if it was a team project)? Look at some examples of Author contributions statements, such as this one.

A few other things you could optionally include in the reflection:

Supporting Material

Submit code needed to replicate the visual and quantitative results in your report.

General Advice

Technically: keep it simple. A thoughtful analysis of a technically simple thing is much better than a hasty analysis of a technically fancy thing.

See the Resources page here, especially Tools.

Contents