LEARNING OBJECTIVES:
- Evaluate a program based on Code Review standards (adapted from Google’s Code Review guide)
- Practice reading someone else’s program
On the first day of class, I mentioned that computer science was a social discipline. Programs are simply too complex these days to be only written by one person. Which means, programs need to be able to be read by other programmers. In this class, we find that students often “stop” refining their programs as soon as they meet the minimum requirements of the assignment. While in a class, that might an okay approach, in the real world, this doesn’t work in any environment where someone else needs to be able to use/read/evaluate your programs.
To that effect, this assignment will ask you to serve as a Peer Reviewer for another student’s Exercise 3 submission.
Ground Rules
- Be kind.
- Explain your reasoning.
- Balance giving explicit directions with just pointing out problems and letting the programmer decide.
- Encourage the author to simplify code or add code comments to explain their approach instead of just saying “you should do this instead…”.
How To Access
The peer review will be completed via Canvas. Note, you will see your Peer Review assigned in Canvas around 5pm on Monday. Here are the instructions on how to access your assigned peer review.
What should the rubric look like?
Like this!
Note that some of the categories are "out of order" so make sure to select the one you mean!
Your choices will NOT affect the grade of the other person. This is simply a form of feedback.
You should download the other person’s program and copy it into your Exercise 3 folder (so that you can use the cs110_ex3_shapes
module) in order to complete your review. To download your Peer’s Submission, visit your Exercise 4 assignment and click View Feedback. Everyone should have a comment from Prof. Bain with an attached file that is the submission of your peer. If that’s not the case, email Prof. Bain.
Once you click submit you will not be able to edit your Peer Review so make sure to read all the instructions below FIRST and double check you've completed the review before hitting submit!
Once your peer has reviewed your assignment, you can view their comments by following the instructions here. You will also receive an “autograder report” with a more readable version of your peer’s feedback (this will be run manually so it may not post for a day or so after you submit your rubric).
Do not share your comments or your peer's submission with ANYONE other than with the original submitter via Canvas. Violating this policy is a serious NU Student Code of Conduct violation and will be reported to your Dean of Students.
What To Look For
Canvas has a rubric built-in for the assignment for you to use to evaluate the person’s program. While you should certainly look at the other student’s flower function, please focus most of your attention on the other submitter’s creature
function. For each rubric item you should assign a category and add a 2+ sentence comment justifying your rubric selection. It should be constructive and address the rubric item’s points. If the course staff determines your comment is not meaningful you will receive a 0.
- Design
- Does this program fit the idea of the assignment?
- Compared to your program, how different is the approach?
- Is it impressive? Exciting? Innovative?
- Is there excess code that is commented out, unused, or otherwise in the way?
- Style
- Are variables named with meaningful and reasonable descriptors (i.e. mnemonic but not overly verbose)?
- snake_case for variables?
- Does the program use consistent indentations, spacing, etc.?
- Are there excessive parentheses?
- Functionality
- Does it do what the the programmer says it does?
- Does it do what the assignment asks for?
- Could it effect anything other than this one program? (side-effects)
- Complexity
- How long did it take for you to understand the program?
- Are individual lines too complex?
- For more complex steps, are there comments describing what the intent?
- Are there simpler ways to express the idea (i.e. is it over-engineered)?
There’s a fifth rubric item that asks whether or not you learned anything from reviewing this student’s assignment that you might want to change / use in your own creature
function if you were asked to revise it.
How do I add a comment?
For each rubric category, there's a small "comment bubble." Click on the bubble and it will allow you to add your comment!
DO NOT ENTER A COMMENT on the submission itself. Only use the comments on the rubric. You will not receive any credit for comments made on the submission rather than via the rubric.
How will you be graded?
This is a participation-based activity meaning someone’s review doesn’t affect your grade on the assignment. You will receive credit based off of whether or not you completed your review of a peer’s program. You will lose points if you do not do any of the following:
- If your comments/rubric selections are random or unthoughtful (as determined by course staff), you will receive a 0. They must be written by you without the aid of any other tools.
- Any comments that violate the Northwestern Student Code of Conduct will be referred to the Dean of Student’s office.
- If you do not leave a comment on each of the 4 rubric items, you will receive a 10 point penalty. These comments don’t need to be extensive, but they should be meaningful. You can reference particular line numbers of a person’s program if you want to refer to something specific.
- Just like a normal homework, these peer reviews should be completed by Friday at 11:59pm CST. If your review is completed after that, you will receive the normal Late Penalty. Peer reviews completed after Sunday at 11:59pm CST will receive a 0.
You do not need to submit anything to the Ex 4 assignment. It’s literally only here to provide instructions and to have a Canvas assignment that we can put your grade in.
When you submit the rubric will may display the correct item selections. Worry not! Your rubric selections have been saved correctly, Canvas is just displaying them incorrectly. When we grade the peer reviews, we’ll make sure to post a summary comment with your true category selections. There’s nothing you need to do!
Submission Details
Remember, close IDLE before you submit to ensure that you’ve saved your latest work. Once you’ve successfully submitted you should receive feedback from the autograder in 30 or so minutes. If you fail one of the checks, you’re welcome to resubmit (up to the Canvas resubmit limit for that assignment). If you’re confused on how to fix one of the checks, then bring your submission and the test results to office hours!