Skip to content

Commit

Permalink
update style of our group across all MD
Browse files Browse the repository at this point in the history
  • Loading branch information
Saeed-Emad committed Jan 11, 2025
1 parent 482433a commit 7cc5253
Show file tree
Hide file tree
Showing 5 changed files with 232 additions and 233 deletions.
118 changes: 57 additions & 61 deletions collaboration/README.md
Original file line number Diff line number Diff line change
@@ -1,85 +1,81 @@
# Collaboration
# 🤝 Collaboration

<!-- group norms summary -->

## Group Norms Summary
## 🌟 Group Norms Summary

Our team prioritizes productivity through clear communication, timely task
delivery, and collaborative problem-solving. We hold efficient, purposeful
meetings and make decisions democratically. By fostering a supportive
environment, we ensure every member's contributions drive
progress toward our shared goals.
Our team prioritizes productivity through:
📣 Clear communication
⏰ Timely task delivery
🤔 Collaborative problem-solving
We hold efficient, purposeful meetings 🗓️ and make decisions democratically.
By fostering a supportive environment 🫂, we ensure every member's contributions
drive progress toward our shared goals.

<!-- group norms list -->
## Group Norms for Effective Collaboration
## 🚀 Group Norms for Effective Collaboration

### 1. Building Trust
### 1. 🤝 Building Trust

- Trust is built through action: deliver tasks on
time, with quality, and clarity.
- Foster trust by assuming good intentions and maintaining
honesty and transparency.
- Acknowledge each member's contributions regularly and openly.
- Clearly define tasks, deadlines, and expectations to avoid misunderstandings.
- Respect others’ time and schedules, and ask for help when needed.
- ✅ Deliver tasks on time, with quality and clarity.
- 🛡️ Foster trust through honesty and transparency.
- 🎉 Acknowledge contributions regularly and openly.
- 📌 Define tasks, deadlines, and expectations clearly.
- 🕒 Respect others’ time and ask for help when needed.

### 2. Strengthening Relationships
### 2. 🤗 Strengthening Relationships

- Listen actively during discussions, ensuring everyone feels heard.
- Avoid interrupting or dismissing others’ ideas.
- Avoid personalizing conflicts and focus on solutions.
- Show appreciation for teammates' efforts and celebrate collective successes.
- Use constructive feedback to resolve disagreements, offering
solutions rather than criticism.
- 🛑 Avoid interrupting or dismissing others’ ideas.
- 👂 Listen actively to ensure everyone feels heard.
- 🛠️ Focus on solutions, not personalizing conflicts.
- 🙌 Show appreciation and celebrate successes.
- ✍️ Use constructive feedback to resolve disagreements.

### 3. Communication Practices
### 3. 💬 Communication Practices

- Use Google Meet for major decisions and updates.
- Slack or WhatsApp is preferred for detailed discussions and quick questions.
- Keep dedicated project files organized and accessible to everyone.
- Share meeting notes, updates, and agendas on Slack for transparency.
- 📞 Use Google Meet for major updates and decisions.
- 💻 Use Slack or WhatsApp for quick questions and discussions.
- 📂 Keep files organized and accessible to all.
- 📝 Share meeting notes and updates on Slack for transparency.

### 4. Meetings and Coordination
### 4. 🗓️ Meetings and Coordination

- Plan meetings using Slack polls and finalize times with Google Calendar.
- Assign roles for smooth coordination:
- **Coordinator**: Manage meetings and oversee organization.
- **Vice-Coordinator**: Record outcomes and handle updates.
- **Technical Supervisor**: Oversee project technicalities and support the team.
- Meetings should only be held when they add value.
- Set the agenda for each meeting during the previous one to ensure preparedness.
- Wait a maximum of 5 minutes for late members before proceeding.
- Start and end meetings on time, adhering to a clear agenda.
- Promote open communication about scheduling preferences and potential conflicts.
- 🗳️ Plan meetings with Slack polls, finalize times on Google Calendar.
- 🎯 Assign roles for smooth coordination:
- **Coordinator**: Manages meetings and organization.
- **Vice-Coordinator**: Records outcomes and updates.
- **Technical Supervisor**: Oversees technical aspects.
- 🕔 Wait a max of 5 minutes for late members before proceeding.
- ⏱️ Start and end meetings on time with a clear agenda.

### 5. Balancing Discussions and Debates
### 5. ⚖️ Balancing Discussions and Debates

- Prioritize discussions over debates in most cases.
- Engage in discussions to explore ideas and seek consensus.
- Reserve debates for situations with well-formed differing opinions.
- Define the purpose of each debate, avoid redundancy, and listen to diverse perspectives.
- 💡 Prioritize discussions over debates for most decisions.
- 🤝 Seek consensus during discussions.
- 🔄 Reserve debates for clear, differing opinions.
- 🎯 Focus debates on specific purposes and diverse perspectives.

### 6. Decision-Making and Conflict Resolution
### 6. 🗳️ Decision-Making and Conflict Resolution

- Discuss disagreements calmly in dedicated meetings.
- Use a democratic approach:
- In meetings: Quick voting, with the majority deciding.
- Online: Slack or WhatsApp polls with a 12-hour response window.
- 🤔 Discuss disagreements calmly in meetings.
- 🗳️ Use democratic voting:
- **Meetings**: Majority vote.
- **Online**: Slack or WhatsApp polls (12-hour response).

### 7. Rebuilding Trust When Broken
### 7. 🔄 Rebuilding Trust When Broken

- Address concerns openly and focus on solutions rather than assigning blame.
- Take responsibility for mistakes and commit to improvement.
- Reset expectations and work collaboratively to rebuild confidence.
- 🤗 Address concerns openly and focus on solutions.
- 🤝 Take responsibility for mistakes and commit to improving.
- 📅 Reset expectations and rebuild confidence together.

### 8. Respectful Collaboration
### 8. 🤝 Respectful Collaboration

- Respect is shown by acknowledging ideas, even if they’re not adopted.
- Constructive disagreements involve proposing alternatives or seeking solutions.
- Avoid ignoring deadlines, input, or contributions from team members.
- 🤗 Acknowledge ideas, even if not adopted.
- ✍️ Propose alternatives when disagreeing constructively.
- 🚫 Avoid ignoring deadlines or team contributions.

### 9. Fostering Positivity and Inclusion
### 9. 🌟 Fostering Positivity and Inclusion

- Use emoji codes for quick replies and a "compliments jar" in Slack
to recognize contributions.
- During challenging discussions, pause to ensure everyone feels heard.
- 😄 Use emoji codes for quick responses.
- 🎁 Keep a "compliments jar" in Slack to recognize contributions.
- 🙋 Pause during challenging discussions to ensure everyone is heard.
43 changes: 24 additions & 19 deletions collaboration/communication.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,50 +4,50 @@ 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

---

## Communication Guidelines
## 📝 Communication Guidelines

This document outlines our team's communication practices and expectations.

### **General Principles**

- Communicate clearly and respectfully.
- Keep discussions focused on tasks, challenges, and solutions.
- Use the appropriate channel for each type of communication to maintain efficiency.
- 🗣️ Communicate clearly and respectfully.
- 🎯 Keep discussions focused on tasks, challenges, and solutions.
- 🔄 Use the appropriate channel for each type of communication to maintain efficiency.

---

## Communication Channels
## 📬 Communication Channels

Here is how we’ll use our channels:

- **GitHub Issues**:
- **📌 GitHub Issues**:
- Use issues to track tasks and share updates on progress.
- Provide clear, actionable comments when discussing challenges or asking for clarification.

- **Pull Requests (PRs)**:
- **🔄 Pull Requests (PRs)**:
- Use PRs to propose changes and review code collaboratively.
- Include detailed descriptions of what the PR addresses.
- Follow the PR review process: reviewers provide constructive feedback,
and authors respond promptly.

- **Slack/WhatsApp**:
- **💬 Slack/WhatsApp**:
- Use for quick updates, scheduling calls, or informal discussions.
- Use designated threads.

- **Video Calls (Google Meet)**:
- Reserved for in-depth discussions, presentations, or team retrospectives.
- Ensure the agenda is shared as an issue beforehand to make the most
of everyone's time, and share the MoM after the meeting
- **🎥 Video Calls (Google Meet)**:
- Reserved for deep dives, presentations, or retrospectives.
- Share the agenda in advance to respect everyone’s time.
- Share the 📝 MoM (Minutes of Meeting) afterward

---

## Availability
## Availability

### **Calling and Messaging Availability**
### **📞 Calling and Messaging Availability**

### **Team Availability Schedule**

Expand All @@ -67,6 +67,8 @@ Here is how we’ll use our channels:
`` = Available
`` = Unavailable

## 📊 Team Commitment

### How many hours everyone has per day

1. WuorBhang: _5h_;
Expand All @@ -79,12 +81,15 @@ Here is how we’ll use our channels:
8. Ibrahim Elmisbah: _2h_;
9. Nahom Tekle: _4h_;

## Asking for Help
## 🙋 Asking for Help

There's a fine line between confidently learning from your mistakes,
and stubbornly getting nowhere. Here is a general guide for when to ask for help
based on how long you've been stuck on the same problem:

1. _0 -> 60 min_: Try on your own
2. _60 -> 120 min_: Ask your group for help
3. _120+ min_: Tag your coaches in Slack or GitHub
1. 🧠 **0 -> 60 min**: Try it yourself. You got this! 💪
2. 💬 **60 -> 120 min**: Ask your group for guidance.
Teamwork makes the dream work! ✨
3. 🚨 **120+ min**: Tag your coaches on Slack or GitHub. Don’t hesitate! 👩‍🏫👨‍🏫

Let’s communicate, collaborate, and conquer! 🚀
70 changes: 40 additions & 30 deletions collaboration/constraints.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
<!-- this template is for inspiration, feel free to change it however you like! -->

# Constraints
# 🚧 Constraints

Some boundaries around our project are here now live.
Some boundaries around our project are now live and in action! 🎯
Let’s stay on track and deliver with focus. 💪

## External
---

## 🌐 External Constraints
<!--
constraints coming from the outside that your team has no control over:
- projects deadlines
Expand All @@ -14,19 +16,20 @@ Some boundaries around our project are here now live.
- power or connectivity
- ...
-->
These are the non-negotiables, folks. Let’s roll with them:

**1. Deadline:** Ensure the project is completed and tested before 10th/Jan/2025.
**1. Deadline:** 🕒 Complete and test the project by **12th/Jan/2025**. 🗓️

**2. Code Review:** The code must pass at least 4 unit tests to be considered complete.
**2. Code Review:** ✅ Code must pass at least **4 unit tests** to be considered complete.

**3. Libraries:** Use only standard Python libraries and `pytest` for testing.
**3. Libraries:** 📚 Use only **standard Python libraries** and `pytest` for testing.

**4. Version Control:** Use Git and GitHub for collaboration. Main branch
protection enabled.
**4. Version Control:** 🔗 Collaboration is through **Git** and **GitHub**, with
main branch protection enabled.

**5. Packaging:** Ensure the module is packaged for installation using `setup.py`.
**5. Packaging:** 📦 Ensure the module is packaged for installation using `setup.py`.

## Internal: Involuntary
## 🏠 Internal: Involuntary Constraints

<!--
constraints that come from within your team, and you have no control over:
Expand All @@ -35,13 +38,13 @@ Some boundaries around our project are here now live.
- Most members are inactive on slack
-->

**1. Daily Time Commitment:** Each team member commits at least 2 hours per day
to work on his/her own project.
1. **Daily Time Commitment**: Each team member dedicates at least
**2 hours/day** to their project.

**2. Hardware:** All team members must use devices capable of running
Python 3.10.0 or higher.
2. 💻 **Hardware**: All team members must use devices capable of running
**Python 3.10.0+**.

## Internal: Voluntary
## 🤝 Internal: Voluntary Constraints

<!--
constraints that your team decided on to help scope the project. they may include:
Expand All @@ -50,43 +53,50 @@ Some boundaries around our project are here now live.
- the number of hours you want to spend working
- only using the colors black and white
-->
Here’s what we’ve agreed upon to scope the project effectively:

**1. Language and Frameworks:**
### 🛠️ **Language and Frameworks**

- Use Python (minimum version 3.10.0).
- 🚀 Use **Python** (minimum version **3.10.0**).

**(a). Naming Conventions:**

- File names must be in lowercase and use underscores (e.g., `good_fruit_names.py`).
- 📂 File names: Must be lowercase with underscores (e.g., `good_fruit_names.py`)

- Testing files must follow the naming pattern `test_<module_name>.py` (e.g., `test_good_fruit_names.py`).
- 📂 Test files: Follow `test_<module_name>.py` (e.g., `test_good_fruit_names.py`).

**(b). Collaboration Tools:**

- Use GitHub Issues and Projects for task tracking.
- 📋 Use **GitHub Issues** and **Projects** for task tracking.

- Use Slack for communication.
- 💬 Communicate via **Slack**.

**2. Team Roles:**
### 🤝 **Team Roles**

**(a). Developer:** Writes the main logic for the module.
Everyone plays their part to make magic happen:

**(b). Tester:** Develops unit tests and ensures code coverage.
**(a). Developer:** 🖥️ Writes the main logic for the module.

**(c). Documenter:** Prepares project documentation, including a README.md file.
**(b). Tester:** 📋 Develops unit tests and ensures code coverage.

**(d). Reviewer:** Reviews pull requests before merging to the main branch.
**(c). Documenter:** 📖 Prepares project documentation, including a README.md file.

**3. Scope of the Module:**
**(d). Reviewer:** 🔍 Reviews pull requests before merging to the main branch.

### 🎯 **Scope of the Module**

- Input: A name (string).

- Output: Boolean value indicating if the name contains consecutive identical letters.

- Edge cases: Handle special characters, empty strings, and numeric values gracefully.

**4. Documentation:**
### 📚 **Documentation**

- 📖 Include a **README** file with clear usage instructions

- 🛠️ Provide **example input and output** for better understanding

- Include a README file with clear instructions on usage.
---

- Provide example input and output.
🎉 Let’s stick to these constraints and make our project shine! 🚀
Loading

0 comments on commit 7cc5253

Please sign in to comment.