forked from MIT-Emerging-Talent/ET6-practice-code-review
-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' into update-retrospective
- Loading branch information
Showing
4 changed files
with
100 additions
and
73 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 |
---|---|---|
@@ -1,19 +1,69 @@ | ||
# Git it Done | ||
# **Welcome to** | ||
|
||
## Overview | ||
 | ||
|
||
Welcome to the **Git it Done** repository! | ||
--- | ||
|
||
This is a collaborative learning project where our team works together to solve | ||
problems and learn new skills. Each teammate will: | ||
## **Overview** | ||
|
||
- Solve 2 problems. | ||
- Help resolve 2 problems contributed by others. | ||
Welcome to the **Git it Done** repository! 🎉 | ||
|
||
Our team is made up of people with different levels of experience—some of us are | ||
complete beginners, while others have a little experience. But one thing we all | ||
share is a strong eagerness to learn. By the end of this project, we will no longer | ||
be complete beginners. | ||
This project is all about: | ||
|
||
We are learning collaboratively, growing through our mistakes, and working as a | ||
team to improve. . | ||
- **Teamwork** 🤝 | ||
- **Problem-Solving** 🧠 | ||
- **Key Development Skills** 📚 | ||
|
||
Whether you're a beginner or have some experience, this project is the perfect | ||
opportunity to: | ||
|
||
- Sharpen your skills. | ||
- Grow together as a team. 📈 | ||
|
||
### **What We’re Doing** | ||
|
||
Each team member will: | ||
|
||
- 🧩 Solve **two problems** independently. | ||
- 🛠️ Review and help resolve **two problems** contributed by others. | ||
- 💬 **Discuss & Improve** solutions collaboratively. | ||
- 🎉 **Merge & Celebrate** when a solution is finalized! | ||
|
||
## **Our Goal** | ||
|
||
The goal of this project is to: | ||
|
||
- **Collaborate** 🤝: Work together as a team to tackle challenges. | ||
- **Learn and Improve** 📚: Embrace mistakes as opportunities to grow. | ||
- **Have Fun** 🎉: Enjoy the process of learning and problem-solving. | ||
|
||
--- | ||
|
||
## **Meet the Team** 👭 🧑🤝🧑 | ||
|
||
We’re a group of eight learners with different skill levels, united by a common | ||
goal of growth and collaboration. Here are the amazing members of **Git it Done**: | ||
|
||
- [**Madiha**](https://github.com/MadiMalik): Always ready to help, keeps the | ||
team motivated, and does everything with a positive attitude. 😊💪✨ | ||
|
||
- [**Fatima**](https://github.com/fatima-malik99): Juggles multiple tasks at | ||
once and always makes sure everything is done perfectly. 🧠🖥️✔️ | ||
|
||
- [**Jola**](https://github.com/jola-ds): Always pays attention to details, | ||
makes us laugh even during tough times, and keeps us thinking in new ways. 🔍😂💡 | ||
|
||
- [**Mudassara**](https://github.com/mudassra-taskeen): Works quickly and | ||
carefully, stays calm, and gets things done without making a fuss. 🚀🛠️🤝 | ||
|
||
- [**Shehroz**](https://github.com/Shahroz657): Quiet but gets things done, | ||
plans ahead, and is always dependable when it matters. 🤫📋✅ | ||
|
||
- [**Fayyaz**](https://github.com/mojtabafayyaz): Always finds what we need | ||
quickly and keeps things fun with his bathroom music habit. 🎶🔎😂 | ||
|
||
- [**Anwar**](https://github.com/anwar099) | ||
|
||
- [**Durgesh**](https://github.com/Durgesh976) | ||
|
||
together we **Get things done** |
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,75 +1,52 @@ | ||
# Constraints | ||
# 🚀 Project Constraints | ||
|
||
## External Constraints | ||
## 🌐 External Constraints | ||
|
||
**These factors outside our control influence how we work on this project.** | ||
- **Platform**: Use CodeWars, LeetCode, or workshop exercises to source python problems. | ||
Follow platform requirements (unit tests, docs). | ||
- **Deadlines**: Stick to MIT Emerging Talent timelines. Solve & review on time. | ||
- **Tools**: Use GitHub for version control and docs. Rely on public resources | ||
for learning. | ||
|
||
### Platform Requirements | ||
 | ||
|
||
- Problems must be selected from the workshop's exercises, CodeWars, LeetCode, or | ||
similar coding platforms. | ||
- Solutions must comply with the workshop's requirements (e.g., unit tests, documentation, | ||
and clear variable names). | ||
--- | ||
|
||
### Deadlines | ||
## 🤝 Internal Constraints | ||
|
||
- Projects must be completed according to the timeline set by the | ||
MIT Emerging Talent program. | ||
- Each member must solve and review problems within the agreed-upon timeframes. | ||
### 📚 Documentation | ||
|
||
### Tools and Resources | ||
- Comment code to explain strategy. | ||
- Include problem description, approach, and test cases. | ||
|
||
- GitHub must be used for version control, communication, and documentation. | ||
- The team must rely on publicly available resources (e.g., online tutorials | ||
and documentation) to enhance learning. | ||
### 💬 Communication | ||
|
||
## Internal Constraints: Voluntary | ||
- Use **Slack** for task discussions. | ||
- Require at least **1 review** before merging. | ||
- Share challenges and insights regularly. | ||
|
||
These are self-imposed rules or boundaries designed to improve collaboration and | ||
learning outcomes. | ||
--- | ||
|
||
### Documentation Standards | ||
### 🔄 Workflow | ||
|
||
- All code must include meaningful comments explaining the logic. | ||
- Problem solutions must include documentation with: | ||
- Problem description. | ||
- Approach and thought process. | ||
- Test cases used. | ||
- **One Task = One Branch**: Create a branch per task. | ||
- **Sync First**: Run `git fetch && git merge main` before starting. | ||
- **Selective Adds**: Use `git add [file]` (avoid `git add .`). git pull can also | ||
be used. | ||
- **Template Updates**: Use `update_template_files` branch for changes. | ||
- **Review Fast**: Review pull requests promptly. | ||
- **Merge Criteria**: No pull request will be merged without proper review | ||
and ensuring there are no CI errors. | ||
- **Review suggestion**: Minimize the use of AI models for reviewing | ||
teammates' code. | ||
- **Checklist Use**: Use the checklist template for pull requests only when addressing | ||
actual problems, not for template file changes. | ||
|
||
### Communication Protocols | ||
--- | ||
|
||
- Use GitHub Issues to discuss problems and tasks. | ||
- At least one other member must review pull requests before merging. | ||
- Constructive feedback is required for all reviews. | ||
### 🎯 TL;DR | ||
|
||
### Collaborative Learning | ||
|
||
- Each member must share insights or challenges they faced during problem-solving | ||
to help others learn. | ||
- Regular check-ins (via GitHub comments or virtual meetings) to ensure alignment. | ||
|
||
## New Internal Constraints: Voluntary | ||
|
||
These are new rules designed to improve the workflow and mitigate issues we've | ||
encountered recently. | ||
|
||
### Pull Request and Branching Practices | ||
|
||
- **Pull Requests**: Each template file must be worked on in a separate branch and | ||
added to the TODO list of the project board. | ||
- **Branch Management**: When creating a new branch, ensure it is synchronized and | ||
updated with the main branch using the following commands: | ||
- `git fetch` to fetch updates. | ||
- `git merge main` to merge the latest main branch changes into the current branch. | ||
- **Selective `git add`**: Only add files on which changes have been made. | ||
**Do not use `git add .`**. This ensures only relevant changes are committed. | ||
- **Template File Changes**: For all template file modifications, work exclusively | ||
in the `update_template_files` branch. | ||
Create an issue for any changes you wish to make, and only submit a pull request | ||
if you plan to merge the changes into the main file. | ||
- **Branch Closure**: Once a new branch is created and used, the previous branches | ||
will not be used further. Always start from the latest main branch or an appropriate | ||
updated branch. | ||
- **Pull Request Review**: Pull requests must be reviewed promptly upon submission | ||
to avoid delays and conflicts. Reviews should be completed as soon as possible to | ||
ensure efficient merging. | ||
1. Use approved platforms. | ||
2. Document your work (comments, approach, test cases). | ||
3. Sync branches and avoid unnecessary commits. | ||
4. Review and merge efficiently. |