Review Questions

Assignment

GitHub Classroom assignment

You should write up both a question, stored in DIRECTORY/q1.md, and a brief solution, stored in DIRECTORY/q1sol.md. We prefer questions and solutions be written in Markdown or plaintext. If images are required, that’s OK; you can link to them from Markdown, or, if necessary, add a PDF or Word document to the directory.

Students must not collaborate on the review questions they create. Students should create questions on their own. Each question should represent the student’s own work—no copying a question from the Internet or posting questions to the Internet, although the usual resources (book, notes, course videos, prior course material, general Internet research) may be used in the process of creating a question. Staff can help students evaluate whether a review question is too close to material available in the book or on the web.

We grade questions along 4 dimensions. Full credit is 6 points out of 8 total awardable points. Anything above the 6 will be considered for extra credit at the end of the class.

• 0: covering 1 basic point in class but it’s not the core point
• 1: cover 1 important point in class, or covering 1 basic point in class + some extension points
• 2: cover >=2 points in class
• Relevance
• 0: all questions are not relevant to class
• 1: >=1 large question, or >=2 parts, are relevant to the core points in class
• 2: all questions are relevant to the core points in class
• Creativity
• 0: straightforward questions that one can quickly answer
• 1: standard questions similar to exercise questions
• 2: questions that are different with standard questions, or questions combining >=2 points in a non-trivial way
• Solvability
• 0: no questions have clear answers (e.g., missing assumptions)
• 1: some questions do not have clear answers
• 2: all questions are well defined

We also awarded a very small number of “gold stars” to questions that covered an advanced topic, that combined multiple core points in an interesting way, or gave background knowledge to add real-life context to a program.