Wow, the final week - congratulations!
This week is different from previous weeks: there is no new technical content, and no cohort problems.
Instead, the goal of this week is for you to do something that either synthesizes a key idea from the class, or explores a topic of your choice related to theoretical computer science.
Although it will be sufficient to earn full credit this week to do something that just benefits your own understanding, we hope some of you will produce artifacts that will have value beyond this.
Collaboration Options
For this assignment, you may work together as a full cohort, or sub-divide your cohort into groups anyway you choose (e.g., all six members could work individually on independent projects, you could split into two teams of three, or any other way of partitioning your cohort into disjoint sets). The expectations for quality and value of your submission scale according to the square root of the number of members in a group (so if all six members of a cohort work together, you would be expected to do something at least sqrt(6) = 2.45… as impressive as what an individual would do working alone).
Schedule
Because of the Thanksgiving holiday and the end of the semester, the schedule will adjust so the Monday and Tuesday cohorts will have your assessed cohort meetings one week later (on December 6 and December 7).
We includethe normal preparation Cohort Meetings in this schedule, but depending on how you partition your cohort you will probably want to plan things differently. If you decide to all work independently, no need for a cohort meeting (unless you want to still discuss your plans or just hang out); if you are working in sub-groups, you will probably need several meetings of your sub-group; if you are all working together, you will probably need additional cohort meetings.
The assessed meetings will happen as scheduled (unless you arrange something else with your TA). For the final assessed cohort meeting, you will present your project for this assignment and answer questions about it, and use any additional time to discuss anything else you want (including questions to prepare for the final exam).
Day | “Monday” Cohort | “Tuesday” Cohort | “Wednesday” Cohort | “Thursday” Cohort | “Friday” Cohort |
---|---|---|---|---|---|
Mon 29 Nov | Preparation | Preparation | Prep Cohort Meeting | Preparation | Preparation |
Tues 30 Nov | Preparation | Preparation | Preparation | Prep Cohort Meeting | Preparation |
Wed 01 Dec | Preparation | Preparation | Assessed Meeting | Preparation | Prep Cohort Meeting |
Thu 02 Dec | Preparation | Preparation | — | Assessed Meeting | Preparation |
Fri 03 Dec | Preparation | Preparation | — | — | Assessed Meeting |
Sat 04 Dec | Prep Cohort Meeting | Preparation | — | — | — |
Sun 05 Dec | Preparation | Prep Cohort Meeting | — | — | — |
Mon 06 Dec | Assessed Meeting | Preparation | — | — | — |
Tue 07 Dec | — | Assessed Meeting | — | — | — |
Monday, 6 December is the last full class. We will use the class time to review for the final exam and synthesize material from the course.
Friday, 10 December: Final Exam (2-5pm in Maury Hall 209).
Video
There’s only one video for Week Omega — a course wrap-up that recaps the main themes we’ve seen in cs3102:
Main Themes of the Course (12:22)
(You won’t be asked questions about this in the cohort meetings, but we do hope you’ll find it worthwhile.)
Assignment
Create an artifact that conveys some idea related to this class.
Your artifact can be anything you want, so long as it includes some representation as a finite sequence of bits that can be posted on the Internet. Examples of possible artifacts include a written story, a comic, a video, a song (lyrics), or an interpretive dance.
If your artifact cannot be posted on the Internet (for example, if you bake lasagna, build a quantum computer, or develop a time machine) you should still make some description of your artifact (including a video or pictures if helpful) that can be posted.
Submit this form to submit your project:
One member of your project team should submit a single form on behalf of the whole team.
Target Audience
You can define your target audience but should specify what it is. Examples of target audiences include “five year olds”, “typical third graders”, “your parents”, “professional programmers without formal CS background”, “UVa students majoring in history”, “Martians”, “cs1110 students”, or “future cs3102 students”.
Evaluation Criteria
At your assessed cohort meeting, you will present your artifact to your cohort, and your Cohort Leader (and cohortmates) may ask questions about it.
Your artifact will be evaluated on technical correctness and perceived effectiveness in conveying an important idea to your defined target audience. Aesthetic merit, entertainment value, production quality, and creativity are also important, but only in as much as they support the goal of conveying an idea related to theoretical computer science to your target audience.
Examples
We don’t want to limit your creativity, but here are some examples from previous courses for a similar assignments. (Note that most of these are on topics that would not be appropriate for cs3102, but they might still give you ideas for things to do.)
Selected from cs3102 Fall 2020:
Children’s Book
In the Land of NAND [PDF]
Emily Franklin, Luke Sills, Emily Huo, Reza Mirzaiee (Cohort Felt)
Songs
Derek Bassett, Isabelle Deadman, Justin Ngo, Anh Nguyen, Henry Todd, Letao Wang (Cohort Benjamin)
The Day Computing Died - The Rao-Blackwell Theorems
Zach Baugher, Tyler Willis, Sarah Yao, Karen Zipor, Jennifer Li, Carryk Bhattal
Wilkes Cohort Final Project Rap
Stephen Boakye, Kyle Cheng, Collin Orendorff, Yu-Jiyun Taom, Iskander Umarkhodjaev
Cris Scruggs
Movies
News Flash: P = NP!
Cameron Church, Diana Damenova, Daniel Lower-Basch, Jason Tufano, Michael Yates (Cohort Anh)
Noah Holloway
Mulan Solves P vs. NP
Charles Fang and Darwin Walter
Theory of Computation — Official Trailer
Gabriel Edwards, Prithvi Kinariwala, Jared Nguyen, Ian Reyes, Dawang Shen (Cohort Rosenblum)
Games
The Legend of Bruno L.‘s Lasagna Language
Benjamin Grant, Callie Hartzog, I Jung, Joseph Kerrigan, Hallie Khuong, Grace Kisly (Cohort Jones)
Make your way Through Finite State Automata
Selena Johnson
Domino Logic Gates
Jack Liu, Anh-Thu Nguyen, Victor Pham
Minecraft
2-bit Ripple-Carry Adder and 4-bit CLA in Minecraft
Jackson Berigan, Edward Kim, Justin Liu, Phuc Nguyen, Parth Raut, Evan Topoleski (Cohort McCarthy)
Divisible by 8 FSM
Kevin Cooper, Maxim Gorodchanin, Amar Singh, David Zhang, Zhen Zhang (Cohort Buolamwini)
Selected from cs2102 Fall 2017:
Max Rifkin
From Conveying Complexity Highlights (cs3102: Theory of Computation, Spring 2010):
From CS588: Cryptology - Principles and Applications (Fall 2001):