Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 45 additions & 0 deletions peer_review.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
You will be reviewing projects for two of your peers
Why?

You will provide your peers with valuable feedback for their cornerstone project.
You will receive said valuable feedback from two peers as well - making your cornerstone project that much better.
You will gain insight into issues you might have on your own project.
You will learn how to provide a semi-formal code review. Code reviews will be part of your job, its important to learn how they work.
Guide to giving peer feedback

Forking the project and preparation:

1. Fork your peer's repo into your github account.
2. Create a new peer_review.md file on your peer project fork.
3. Copy the contents of this file and paste them into peer_review.md file you created on your fork.
Creating peer review pull request:

1. Now you should be able to create a pull request from your fork back to your peer's original repo.
2. Title the pull request with: Peer review: Your Name.
3. In the comments section, copy each question from below and answer it!
Questions to answer:

1. Does the project appear to meet the technical requirements? Write up one sentence on your findings and give a score 0-3.

Is your peer making API calls, using SDK's/third-party libraries?
Is your peer making use of Services? If so, are they offloading long tasks to a separate thread, i.e. AsyncTask, Runnable, IntentService, etc.
Is your peer making use of Fragments? If so, are they passing data from Fragment to Activity via interfaces? If not, why did absense of Fragments make sense?
Is your peer making use of RecyclerView? If so, does it appear to be working correctly ( implementation and otherwise )?
Is your peer making use of some sort of persistent storage, i.e. Firebase or SQLite? If so, why do you think Firebase/SQLite was chosen? Could they have used one or the other instead and why?
2. Does the project appear to be creative, innovative, and different from any competition? Write up one sentence on your findings and give a score 0-3.

Is your peer making use of proper UX patterns we learned in class? If not, what are they doing that is unconvetional or that might confuse a user ( you )?
Is your peer making anything cool or awesome that you would like to note or applaud them on?
3. Does the project appear to follow correct coding styles and best practices? Write up one sentence on your findings and give a score 0-3.

Are you able to reasonably follow the code without having anyone answer your questions?
Are you able to make sense of what the code is doing or is trying to do?
4. Find two pieces of code of any size: one that is readable and easy to follow and one that is difficult to follow and understand.

What makes the readable code readable? Be as detailed as you can in your answer, it can be challenging to explain why something is easy to undertand
What makes the difficult code harder to follow? Be as detailed as you can in your answer.
5. High level project overview: Take a look at as many individual files as you have time for

Does this class make sense?
Does the structure of the class make sense?
Is it clear what this class is supposed to do?