Unit 4 Code Review
Review your teammates' practice projects by cloning, running, and testing their applications. Compare their implementation choices to yours and identify patterns worth adopting or avoiding. Then review their final project repositories and provide constructive feedback on scope, feasibility, and approach.
This hands-on review builds practical skills in evaluating code organization, testing unfamiliar codebases, and assessing project feasibility. You will learn from different approaches to the same problems while helping your teammates succeed with their final projects.
Assignment Instructions
Complete the following steps in order and record your observations in the provided submission document at the end of this page:
1. Clone and Test Practice Projects
Get GitHub URLs from all teammates. For each repository:
- Clone the repository and install dependencies
- Create your own
.envfile with your database credentials - Run their application and test all features (contact form, registration, login, protected routes)
- Explore their code structure: controllers, models, routes, validation organization
- Compare their implementation to yours
- Optionally fix any bugs you find for practice
Spend a minimum of 8–10 minutes on each project. Focus on understanding their approach, not debugging their code. You may choose to test additional edge cases beyond the required features or correct minor issues for practice.
2. Write Personal Reflection
Reflect on what you learned from reviewing your teammates' code. Address these questions in 3 to 4 connected paragraphs:
- What did you learn from seeing different implementations?
- How does your code organization compare to your teammates'?
- What patterns or techniques do you want to adopt or avoid?
- How has your understanding evolved from Unit 1 to Unit 4?
- Where do you feel confident? Where do you need more practice?
3. Review Final Project Repositories
Review each teammate's final project repository. Consider:
- What is their project concept?
- Does the scope seem achievable?
- Do their demonstrated skills align with their proposed project?
- Does it meet the final project requirements?
- What challenges do you foresee?
If you have concerns or suggestions, create a GitHub issue in their repository. Be constructive and specific. Frame concerns as questions, not criticisms.
4. Complete Submission Document
Fill out the document below with your observations, reflections, and final project assessments. Download as PDF and submit to Canvas.
Assignment Submission Template
Fill out the form below and click the download button. A new page will open and automatically prompt you to print as a PDF. Submit that PDF to your instructor.
- What you learned from seeing different implementations
- How your code organization compares to your teammates'
- Patterns or techniques you want to adopt or avoid
- How your understanding evolved from Unit 1 to Unit 4
- Where you feel confident and where you need more practice
- Who have you checked in with recently?
- What is each teammate's progress level?
- Who have you not heard from or are concerned about?
- Overall team health and participation
Key Concepts Summary
This assignment taught you to learn from others' code by running their applications, exploring implementation choices, and understanding different approaches. You gained experience evaluating project scope and feasibility while providing constructive feedback to help teammates succeed.
Working with unfamiliar codebases is a fundamental professional skill. The final project consultation helps you think critically about scope and architecture while supporting your teammates as they complete the course.