From dbb4eaa7516fecfe8d29dea918a7b5f2f3e39143 Mon Sep 17 00:00:00 2001 From: emrebiyik Date: Sun, 5 Jan 2025 00:52:34 +0100 Subject: [PATCH 1/4] Add communication plan to collaboration/communication.md --- .vscode/settings.json | 4 +- collaboration/communication.md | 78 +++++++++++++++++++++++----------- 2 files changed, 55 insertions(+), 27 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index bbda5188d..252022b48 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -119,8 +119,8 @@ "editor.defaultFormatter": "charliermarsh.ruff", "editor.formatOnSave": true, "editor.codeActionsOnSave": { - "source.fixAll.ruff": true, - "source.organizeImports.ruff": true + "source.fixAll.ruff": "explicit", + "source.organizeImports.ruff": "explicit" } } } diff --git a/collaboration/communication.md b/collaboration/communication.md index 484652e0f..7be823233 100644 --- a/collaboration/communication.md +++ b/collaboration/communication.md @@ -9,46 +9,74 @@ # Communication -______________________________________________________________________ +--- ## Communication Schedule -| Day | How | The topic of discussion | | --- | :-: | ----------------------- | -| | | | +| **Day** | **How** | **Topic of Discussion** | +|---------------|--------------------------------|---------------------------| +| Flexible | Slack (Daily) | Quick updates, general communication | +| Twice a week | Google Meet | Progress updates, task discussions, and important decisions | + +--- ## Communication Channels -how often will we get in touch on each channel, and what we will discuss there: +### Frequency and topics for each channel + +- **Slack**: + - **Purpose**: Daily communication, task updates, and sharing quick announcements. + - **Frequency**: Regularly active for asynchronous communication. + +- **Google Meet**: + - **Purpose**: Discuss progress, blockers, and important milestones. + - **Frequency**: Twice per week or as needed based on the project phase. -- **Issues**: -- **Pull Requests**: -- **Slack/Discord**: -- **Video Calls**: +- **GitHub Issues**: + - **Purpose**: Track tasks, report bugs, and plan milestones. + - **Frequency**: Active for task management. -______________________________________________________________________ +- **GitHub Pull Requests**: + - **Purpose**: Code reviews and collaboration. + - **Frequency**: Notified via Slack when a review is needed. + +--- ## Availability -### Availability for calling/messaging +### Team's General Availability + +The team works asynchronously due to different time zones and schedules. To facilitate effective communication: + +- Meeting times are determined by a poll or decided during prior meetings. +- Members are encouraged to stay active on Slack to ensure timely updates. +- Meetings are recorded when possible, and summaries are shared for those unable to attend. -| Day | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday | | ------- | :----: | :-----: | :-------: | :------: | :----: | :------: | :----: | -| _name_ | | | | | | | | +### Response Time -### How many hours everyone has per day +- **Messages**: Responses on Slack are expected within **12 hours**. +- **Code Reviews**: Pull requests are reviewed within **24 hours** whenever possible. -- name: _5h_; -- name: _6h_; -- name: _5h_; -- name: _4h_; -- name: _3h_; +--- ## Asking for Help -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: +Here’s a general guide for when to ask for help if you’re stuck: + +1. **0 -> 30 minutes**: Try solving the problem independently using available resources. +2. **30 -> 60 minutes**: Reach out to the group via Slack for input or support. +3. **60+ minutes**: If still unresolved, tag a coach or mentor on Slack or GitHub. + +### Key Note + +Don’t hesitate to ask for help when needed. Collaboration is about supporting each other to achieve the project goals. + +--- + +## Meeting Agendas + +Meeting agendas will be created before each scheduled meeting: -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 +- Agendas are drafted using GitHub Issues, where members can add discussion points. +- Meeting minutes and action items are recorded and shared in the issue comments or via Slack. +- All agenda points are addressed before closing the meeting issue. From 570ea6729dfe49f1350dac63e687d149a9926aac Mon Sep 17 00:00:00 2001 From: emrebiyik <159007525+emrebiyik@users.noreply.github.com> Date: Sun, 12 Jan 2025 13:09:47 +0100 Subject: [PATCH 2/4] Delete collaboration/constraints.md --- collaboration/constraints.md | 42 ------------------------------------ 1 file changed, 42 deletions(-) delete mode 100644 collaboration/constraints.md diff --git a/collaboration/constraints.md b/collaboration/constraints.md deleted file mode 100644 index 4a9c9538f..000000000 --- a/collaboration/constraints.md +++ /dev/null @@ -1,42 +0,0 @@ - - -# Constraints - -Some boundaries around our project. - ---- - -## **External** - - - -- **Deadline:** The project must be completed by **10 Jan 2025**. -- **Programming Language:** The programming language for this project is **Python** and cannot be changed. -- **Coding Standards:** All coding, documentation, and reviews must adhere to established standards and examples. -- **Restricted Pushes:** Direct pushes to the main branch are prohibited. -- **Branch Merging Rules:** Branches can only be merged after a pull request is reviewed and approved. -- **Team Size:** The team consists of 10 members. However, active participation will be observed throughout the process, and adjustments will be made as needed to ensure tasks are distributed effectively and project goals are met. This flexible approach allows the team to adapt based on member availability and engagement. - ---- - -## **Internal: Involuntary** - - - -- **Different Schedules:** Team members have varying commitments, making synchronous meetings difficult. -- **Learning Together:** Some members are still learning relevant skills, requiring collaboration and support. -- **Limited Availability:** Balancing this project with other responsibilities might reduce availability at times. -- **Knowledge Gaps:** Some members lack experience in specific technologies or concepts, which may slow progress. -- **Dependency on Others:** Certain tasks depend on the completion of others, potentially causing bottlenecks. -- **Limited Review Capacity:** Fewer reviewers might delay pull request approvals and overall progress. - ---- - -## **Internal: Voluntary** - - - -- **Scope Management:** The project scope is deliberately kept small to ensure timely completion and avoid unnecessary complexity. -- **Adherence to Rules:** The team agrees to follow coding style guides, documentation standards, and review conventions. -- **Collaboration Commitment:** All members are dedicated to equal participation and supporting one another. -- **Documentation Priority:** All tasks, decisions, and code will be properly documented to facilitate collaboration. From d28c33d79a9c0e22e40278dfb626ebc64c42baa3 Mon Sep 17 00:00:00 2001 From: emrebiyik <159007525+emrebiyik@users.noreply.github.com> Date: Sun, 12 Jan 2025 13:10:06 +0100 Subject: [PATCH 3/4] Delete collaboration/learning_goals.md --- collaboration/learning_goals.md | 31 ------------------------------- 1 file changed, 31 deletions(-) delete mode 100644 collaboration/learning_goals.md diff --git a/collaboration/learning_goals.md b/collaboration/learning_goals.md deleted file mode 100644 index 474891167..000000000 --- a/collaboration/learning_goals.md +++ /dev/null @@ -1,31 +0,0 @@ -# Learning Goals - -## Group Objectives - -The primary goal of our group is to enhance our understanding and practical skills in software development by working collaboratively on exercises. Each member brings unique objectives, and we aim to create a supportive environment where these individual goals can be achieved. - -## Collective - -1. **Enhance Problem-Solving Skills**: Apply data structures (DSs) and algorithms to solve complex problems effectively. -2. **Learn and Practice New Techniques**: Explore new programming language features and techniques to improve code quality. -3. **Focus on Readability and Documentation**: Develop solutions that are well-documented, clear, and maintainable. -4. **Improve Development Speed**: Practice strategies to write and debug code faster, aiming for efficiency. -5. **Collaborative Code Reviews**: Engage in multiple review cycles to learn from feedback and refine solutions collaboratively. - ---- - -## Individual - -### Emre Biyik - -- Review data structures and algorithms studied previously. -- Focus on writing more complete and readable solutions. -- Gain deeper experience with version control tools like Git and GitHub, especially in team projects. - ---- - -## Group Approach - -- Regularly review and reflect on progress towards these goals during meetings. -- Support each other in achieving individual and shared objectives through collaborative exercises. -- Use tools like GitHub Issues and Project Boards to ensure visibility and accountability. From 9443d1d6003fae2b4db98ddfbede4f496198fc5c Mon Sep 17 00:00:00 2001 From: emrebiyik Date: Sun, 12 Jan 2025 14:42:48 +0100 Subject: [PATCH 4/4] Update communication.md --- collaboration/communication.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/collaboration/communication.md b/collaboration/communication.md index 7be823233..8f8754eeb 100644 --- a/collaboration/communication.md +++ b/collaboration/communication.md @@ -1,10 +1,10 @@ # Communication @@ -13,8 +13,8 @@ ## Communication Schedule -| **Day** | **How** | **Topic of Discussion** | -|---------------|--------------------------------|---------------------------| +| **Day** | **How** | **Topic of Discussion** | +|---------------|--------------------------------|-------------------------------------| | Flexible | Slack (Daily) | Quick updates, general communication | | Twice a week | Google Meet | Progress updates, task discussions, and important decisions |