forked from MIT-Emerging-Talent/ET6-practice-code-review
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
7 changed files
with
241 additions
and
69 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
# WELCOME TO THE CODE COLLABORATORS' REPOSITORY | ||
|
||
![Visual aid code collaborators are from different parts of the world!](assets/collaboration.jpg) | ||
We are a collaborative group of problem-solvers who are working together to tackle | ||
exciting challenges in this particular project. | ||
|
||
## 🚀 Mission | ||
|
||
Our main mission is to build a foundation of creativity, collaboration, and learning | ||
while developing basic solutions that help in the build-up of solutions that | ||
provide aid to real-world problems. | ||
|
||
## 🔍 Our Current Focus | ||
|
||
We are currently exploring the endless world of project challenges. | ||
Each member of this group will select two challenges and share their progress in | ||
this repository. | ||
|
||
## Repository Overview | ||
|
||
This repository contains the following: | ||
|
||
- Group collaborations | ||
- Solutions and Tests to individual challenge projects. | ||
|
||
## Contributions | ||
|
||
Our aim is to promote collaboration among members. As we believe that | ||
there is always room for improvement in everything we do, we welcome | ||
contributions, suggestions, and feedback from all members. | ||
|
||
## 🤩 What to expect? | ||
|
||
As our project and challenges change, so will this README. Stay tuned for our | ||
regular updates, | ||
|
||
Join us as we grow on this platform together! |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,41 @@ | ||
# Collaboration | ||
|
||
<!-- group norms summary --> | ||
**Summary**: Norms were agreed upon and will be used to maintain effective teamwork. | ||
|
||
<!-- group norms list --> | ||
## Our List of Group Norms | ||
|
||
### 💬 Communication | ||
|
||
- Communicate via WhatsApp and Slack channels | ||
- Respect the opinion of others and their way of working | ||
- Be patient with late responses | ||
|
||
### 🤝 Collaboration | ||
|
||
- Provide regular updates on important milestones in your work | ||
|
||
### 🔒 Accountability | ||
|
||
- Setting clear goals and expectations for the role and responsibilities of each | ||
- Setting deadlines for completing part of or all of deliverables | ||
|
||
### ⚖️ Conflict Resolution | ||
|
||
- Foster a culture of understanding and forgiveness | ||
- Offer constructive criticism but avoid personal attacks | ||
- If a conflict occurs, learn from it to strengthen dynamics and avoid future conflicts | ||
|
||
### 📆 Meetings | ||
|
||
- Reach a consensus for an agreed upon schedule and stick to it | ||
- Be well prepared | ||
|
||
### 👥 Behavioral | ||
|
||
- Respect diversity and inclusion | ||
- Avoid offensive language and behaviour | ||
- Maintain confidentiality when needed | ||
|
||
--- | ||
Group Name: Code Collaborators |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,54 +1,59 @@ | ||
<!-- | ||
this template is for inspiration, feel free to change it however you like! | ||
Careful! be sure to protect your privacy when filling out this document | ||
everything you write here will be public | ||
so share only what you are comfortable sharing online | ||
you can share the rest in confidence with you group by another channel | ||
--> | ||
|
||
# Communication | ||
|
||
______________________________________________________________________ | ||
|
||
## Communication Schedule | ||
|
||
| Day | How | The topic of discussion | | --- | :-: | ----------------------- | | ||
| | | | | ||
--- | ||
|
||
## Communication Channels | ||
|
||
how often will we get in touch on each channel, and what we will discuss there: | ||
Details about how often we will communicate and what to discuss on each platform: | ||
|
||
- **Issues**: | ||
Use GitHub Issues to document and discuss tasks. Assign yourself to an issue | ||
when you begin a task and provide updates regularly. Add clear labels | ||
(e.g., "Bug," "Feature," "Question") for better organization. | ||
|
||
- **Pull Requests**: | ||
When a task is completed, create a Pull Request (PR) on GitHub. Ensure your | ||
PR includes a descriptive title and summary of changes. | ||
|
||
- **Slack/WhatsApp**: | ||
These platforms will be our primary channels for real-time communication. | ||
Use them to: | ||
- Share quick updates. | ||
- Clarify immediate questions. | ||
- Notify members of any schedule or plan changes. | ||
|
||
- **Video Meetings**: | ||
Regular video meetings will take place on **Google Meet**. | ||
The meeting link will be shared on Slack or WhatsApp at least 24 hours in advance. | ||
Use meetings for: | ||
- Planning next steps. | ||
- Discussing blockers or complex issues. | ||
- Reviewing progress and setting goals. | ||
|
||
--- | ||
|
||
- **Issues**: | ||
- **Pull Requests**: | ||
- **Slack/Discord**: | ||
- **Video Calls**: | ||
## Asking for Help | ||
|
||
______________________________________________________________________ | ||
Avoid getting stuck for too long by following this guide: | ||
|
||
## Availability | ||
1. _0 -> 30 minutes_: Try to solve the issue independently. | ||
2. _30 -> 60 minutes_: Reach out to your group via Slack or WhatsApp. | ||
3. _60+ minutes_: Tag a coach or mentor on Slack | ||
|
||
### Availability for calling/messaging | ||
--- | ||
|
||
| Day | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday | | | ||
------ | :----: | :-----: | :-------: | :------: | :----: | :------: | :----: | | ||
| _name_ | | | | | | | | | ||
## Meeting Etiquette | ||
|
||
### How many hours everyone has per day | ||
1. **Agenda**: An agenda will be shared before each meeting. Review it in advance | ||
and prepare relevant updates or questions. | ||
2. **Punctuality**: Join meetings on time to respect everyone’s schedule. | ||
3. **Participation**: Actively participate and ensure all voices are heard. | ||
|
||
- name: _5h_; | ||
- name: _6h_; | ||
- name: _5h_; | ||
- name: _4h_; | ||
- name: _3h_; | ||
--- | ||
|
||
## Asking for Help | ||
## Feedback and Retrospectives | ||
|
||
There's a fine line between confidently learning from your mistakes, and | ||
stubbornly getting no where. Here is a general guide for when to ask for help | ||
based on how long you've been stuck on the same problem: | ||
At the end of major milestones or the project: | ||
|
||
1. _0 -> 30 min_: Try on your own | ||
1. _30 -> 60 min_: Ask your group for help | ||
1. _60+ min_: Tag your coaches in Slack or GitHub | ||
- Schedule a retrospective meeting to discuss what went well and what could be improved. | ||
- Provide constructive feedback to help each other grow and enhance team collaboration. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,34 +1,78 @@ | ||
<!-- this template is for inspiration, feel free to change it however you like! --> | ||
# **Constraints** | ||
|
||
# Constraints | ||
Every project operates within a unique set of boundaries that define what is possible, | ||
practical, and achievable. These constraints help shape the project’s scope, set | ||
expectations, and guide decision-making throughout its lifecycle. By understanding | ||
and defining these limitations early, we can establish a clear framework for what | ||
the project can and cannot include. | ||
|
||
Some boundaries around our project. | ||
Constraints are not just obstacles; they can also be tools for innovation. When | ||
used constructively, they push us to think critically and find creative solutions | ||
within the defined boundaries. This document outlines both **external factors** | ||
(which we cannot control) and **internal constraints** (both involuntary and voluntary) | ||
that influence our approach. Together, these considerations will help us craft a | ||
realistic and impactful project that meets its objectives efficiently and effectively. | ||
|
||
## External | ||
## **External Constraints** 🚧 | ||
|
||
<!-- | ||
constraints coming from the outside that your team has no control over: | ||
- project deadlines | ||
- number of unit tests required to pass a code review | ||
- technologies (sometimes a client will tell you what to use) | ||
- power or connectivity | ||
- ... | ||
--> | ||
External constraints are limitations imposed by factors outside the team’s direct | ||
control. These constraints shape the scope, timeline, and feasibility of the project, | ||
requiring careful planning and adaptability. Key external constraints include: | ||
|
||
## Internal: Involuntary | ||
- **Internet Connectivity** 🌐: Unreliable or slow internet access can disrupt | ||
- communication, research, and collaborative workflows, affecting project progress. | ||
- **Power Outages** ⚡: Unpredictable power cuts can interrupt work, delay progress, | ||
- and impact productivity, especially in locations without backup power. | ||
- **Competing Workload** 📚: Team members juggling other responsibilities, such | ||
as additional jobs or unrelated projects, can reduce the time and focus dedicated | ||
to the current project. | ||
- **Resource Availability** 🔧: Limited access to external tools, materials, or | ||
technologies required for the project can create bottlenecks. | ||
|
||
<!-- | ||
constraints that come from within your team, and you have no control over: | ||
- each of your individual skill levels | ||
- amount of time available to work on the project | ||
--> | ||
## **Internal Constraints: Involuntary** 🔒 | ||
|
||
## Internal: Voluntary | ||
Internal involuntary constraints arise from unavoidable limitations within the team | ||
or organization. These constraints are inherent and require careful management to | ||
ensure they do not hinder project success. Key involuntary constraints include: | ||
|
||
<!-- | ||
constraints that your team decided on to help scope the project. they may include: | ||
- coding style & conventions | ||
- agree on a code review checklist for the project repository | ||
- the number of hours you want to spend working | ||
- only using the colors black and white | ||
--> | ||
- **Time Availability** ⏳: Team members may have limited hours to dedicate to the | ||
project due to fixed schedules, personal commitments, or overlapping responsibilities. | ||
- **Varied Skill Sets** 🛠️: Differences in expertise or gaps in knowledge within | ||
the team can create dependencies, requiring additional training or external support | ||
to complete certain tasks. | ||
- **Other Priorities** 🔄: Internal competing priorities, such as involvement in | ||
other projects, deadlines, or other responsibilities, can reduce the focus and | ||
effort allocated to this project. | ||
|
||
Recognizing these constraints helps the team set realistic goals, plan effectively, | ||
and address challenges proactively to maintain productivity. | ||
|
||
## **Internal Constraints: Voluntary** 💡 | ||
|
||
Voluntary internal constraints are self-imposed limitations set by the team to guide | ||
the project and ensure quality, efficiency, and alignment with goals. These constraints | ||
reflect deliberate decisions made to improve outcomes and maintain focus. Key voluntary | ||
constraints include: | ||
|
||
- **Time Management Rules** 🕒: Allocating specific working hours or limiting overtime | ||
to maintain work-life balance and prevent burnout. | ||
- **Skill Development Focus** 📈: Prioritizing tasks that align with team members’ | ||
learning goals or strengths to foster growth while ensuring quality output. | ||
- **Project Scope Definition** 🎯: Deliberately narrowing the scope to focus on essential | ||
features and deliverables, avoiding unnecessary complexity or scope creep. | ||
- **Adherence to Standards** 📑: Committing to practices like clean coding, thorough | ||
documentation, and consistent testing, as well as going through the code review checklist | ||
to ensure quality and consistency throughout the project. | ||
|
||
These constraints are designed to create a structured and sustainable workflow, enabling | ||
the team to deliver a high-quality project while fostering creativity and collaboration. | ||
|
||
## **Call to Action** 🚀 | ||
|
||
We encourage everyone to continuously evaluate the constraints that affect their | ||
work and communicate any challenges or solutions as they arise. If you encounter | ||
any | ||
constraints that impact your ability to deliver, collaborate with the team to develop | ||
a plan and overcome them and free to create an issue. Together, we can navigate | ||
these challenges and ensure | ||
the success of the project! |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,55 @@ | ||
# Learning Goals | ||
# Group 18 Learning Goals | ||
|
||
## Collective | ||
![Collaboration Image](../assets/goals.jpg) | ||
|
||
## Individual | ||
## Collective Learning Goals | ||
|
||
As a team, we aim to achieve the following: | ||
|
||
1. **Master Collaborative Tools:** | ||
- Become proficient in using GitHub for version control, | ||
collaboration, and project management. | ||
- Ensure effective communication and documentation within the repository. | ||
|
||
2. **Build a Culture of Teamwork:** | ||
- Foster an environment of mutual support and accountability. | ||
- Encourage active participation, constructive feedback, and knowledge sharing. | ||
|
||
3. **Deliver High-Quality Outputs:** | ||
- Set clear milestones and deliverables for projects. | ||
- Maintain high standards for code quality, readability, and functionality. | ||
|
||
4. **Resolve Conflicts Efficiently:** | ||
- Learn to handle merge conflicts and ensure seamless integration of team contributions. | ||
- Develop a shared understanding of best practices for collaboration. | ||
|
||
5. **Develop Agile Practices:** | ||
- Adopt iterative approaches for project development. | ||
- Regularly review progress and adjust priorities as needed. | ||
|
||
--- | ||
|
||
## Individual Learning Goals | ||
|
||
As part of the program, Every team member will focus on | ||
achieving the following personal goals: | ||
|
||
1. **Enhance GitHub Proficiency:** | ||
- Understand and use Git commands to manage repositories effectively. | ||
- Master branching, merging, and handling pull requests. | ||
|
||
2. **Improve Coding Skills:** | ||
- Write clean, maintainable, and well-documented code. | ||
- Learn and apply relevant programming languages or frameworks for the project. | ||
|
||
3. **Strengthen Communication:** | ||
- Provide clear and constructive feedback on code reviews. | ||
- Document team contributions and thought processes to benefit the team. | ||
|
||
4. **Time Management:** | ||
- Prioritize tasks and meet deadlines while balancing program commitments. | ||
- Use tools like project boards to track progress and manage workloads. | ||
|
||
5. **Develop a Growth Mindset:** | ||
- Seek opportunities to learn from peers and mentors. | ||
- Reflect on challenges and successes to continuously improve personal skills. |