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
1 changed file
with
46 additions
and
98 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,120 +1,68 @@ | ||
## **Team Retrospective** | ||
## Team Retrospective | ||
Check failure on line 1 in collaboration/retrospective.md GitHub Actions / md_formatting
|
||
|
||
This project has been a transformative journey for our team, marked by technical | ||
challenges, collaborative problem-solving, and individual growth. Below, we | ||
provide a unified reflection on our collective experience, highlighting what | ||
worked well, what didn’t, and how we plan to improve in the future. | ||
This project has been an inspiring journey for our team, filled with | ||
opportunities to learn, collaborate, and grow. As we reflect, we celebrate what | ||
worked well and identify ways to continue building on our success. | ||
|
||
--- | ||
|
||
### **Stop Doing** | ||
### Stop Doing | ||
|
||
1. **Overcomplicating Solutions** | ||
Many of us realized that simplicity is often more effective than | ||
overengineering. Overcomplicating problems led to wasted time and effort, | ||
which could have been avoided with more straightforward approaches. | ||
|
||
2. **Ignoring CI Feedback Initially** | ||
Early in the project, some team members overlooked the importance of | ||
Continuous Integration (CI) tools and their feedback. This caused | ||
repetitive errors and delayed progress. | ||
|
||
3. **Skipping Edge Case Testing** | ||
Testing primarily focused on the "happy path" early on, leading to | ||
additional debugging when edge cases arose. This oversight highlighted the | ||
need for more comprehensive testing. | ||
|
||
4. **Assuming Understanding Without Verification** | ||
At times, we assumed that all team members fully understood the tasks at | ||
hand. This assumption occasionally led to miscommunication and confusion. | ||
|
||
5. **Overloading Tasks** | ||
Distributing too many challenges and reviews without considering workload | ||
balance resulted in reduced quality and burnout for some team members. | ||
- Overthinking solutions can make challenges seem more complex than they are. | ||
Embracing simplicity will allow us to move faster and more confidently. | ||
- Skipping thorough testing at the beginning meant addressing unexpected | ||
situations later. A comprehensive approach from the start will ensure | ||
smoother progress. | ||
- Taking on too much at once can reduce focus. Balanced workloads will help us | ||
maintain energy and quality. | ||
|
||
--- | ||
|
||
### **Continue Doing** | ||
|
||
1. **Collaborative Code Reviews** | ||
Our collaborative approach fostered diverse perspectives and improved code | ||
quality. Regular check-ins and peer feedback were instrumental in | ||
identifying and resolving issues effectively. | ||
### Continue Doing | ||
|
||
2. **Emphasizing Code Quality** | ||
The team’s commitment to writing clean, modular, and reusable code ensured | ||
we maintained high standards throughout the project. | ||
|
||
3. **Iterating Through Feedback** | ||
Constructively using feedback to refine our work proved invaluable. This | ||
iterative process helped us improve continuously. | ||
|
||
4. **Timely Communication** | ||
Regular updates and open communication ensured alignment and progress across | ||
the team. | ||
- Collaborative reviews have been invaluable. They helped us see challenges from | ||
different perspectives and strengthen our solutions. | ||
- Our commitment to clean, modular, and reusable code brought consistency and | ||
high standards to our work. | ||
- Using feedback constructively allowed us to improve continuously, turning | ||
challenges into stepping stones. | ||
- Open communication and regular updates kept us aligned and moving forward | ||
together. | ||
|
||
--- | ||
|
||
### **Start Doing** | ||
|
||
1. **Planning Before Coding** | ||
More structured planning—using pseudocode, flowcharts, or detailed task | ||
outlines—will help prevent unnecessary rewrites and streamline development. | ||
|
||
2. **Learning Advanced CI/CD Practices** | ||
Diving deeper into CI/CD pipelines, understanding configuration files, and | ||
integrating additional tools like linters and test runners will enhance our | ||
workflows. | ||
|
||
3. **Comprehensive Testing** | ||
Incorporating edge case testing from the start will minimize debugging and | ||
improve reliability. | ||
|
||
4. **Balanced Workload Distribution** | ||
Ensuring a more even distribution of tasks will help maintain productivity | ||
and quality while avoiding burnout. | ||
|
||
5. **Proactive Time Management** | ||
Setting clear timelines and milestones for each task will prevent | ||
last-minute rushes and improve overall efficiency. | ||
|
||
6. **Detailed Task Briefings** | ||
Providing more detailed and comprehensive task descriptions will ensure | ||
everyone has a clear understanding of their responsibilities. | ||
### Start Doing | ||
|
||
- Structured planning before coding—like brainstorming with pseudocode or | ||
diagrams—will help us streamline our workflows. | ||
- Exploring advanced CI/CD tools will enhance our efficiency and help us tackle | ||
projects with confidence. | ||
- Testing for all scenarios early will save time and effort, ensuring | ||
reliability from the start. | ||
- Distributing tasks more evenly will allow everyone to contribute fully while | ||
maintaining balance. | ||
- Setting clear timelines and milestones will help us stay on track and reduce | ||
last-minute stress. | ||
- Providing clear task descriptions will ensure everyone has the clarity needed | ||
to excel. | ||
|
||
--- | ||
|
||
### **Lessons Learned** | ||
|
||
1. **CI/CD is Integral** | ||
Automated tools like Ruff and Black significantly improved efficiency and | ||
code quality. Addressing CI feedback early in the process proved to be a | ||
critical factor in our success. | ||
|
||
2. **Simplicity is Key** | ||
Avoiding overengineering and focusing on straightforward solutions saved | ||
time and effort. | ||
|
||
3. **Planning Reduces Errors** | ||
Structured preparation minimized unnecessary rework and debugging, | ||
underscoring the importance of thorough planning. | ||
|
||
4. **Balanced Workload Boosts Quality** | ||
Effective workload management ensures high-quality output and prevents team | ||
fatigue. | ||
### Lessons Learned | ||
|
||
5. **Clear Communication is Crucial** | ||
Transparent communication and verification of understanding are essential | ||
for successful collaboration. | ||
- CI/CD practices are powerful tools that improve quality and efficiency. | ||
- Simplicity often leads to the most effective solutions. | ||
- Careful preparation upfront prevents unnecessary rework. | ||
- Balanced workloads create an environment where everyone can thrive. | ||
- Clear communication builds trust and ensures smooth collaboration. | ||
|
||
--- | ||
|
||
### **Conclusion** | ||
### Conclusion | ||
|
||
This project has been a remarkable learning experience for all of us. | ||
By embracing collaboration, prioritizing simplicity, and adopting best practices | ||
, we’ve grown both as individuals and as a team. The lessons learned here will | ||
undoubtedly shape our approach to future projects, enabling us to deliver even | ||
greater results. | ||
This project has been an enriching experience for our team. By celebrating | ||
teamwork, staying curious, and embracing best practices, we’ve laid the | ||
foundation for even more success in future endeavors. Together, we’re ready to | ||
take on new challenges with confidence and enthusiasm. | ||
|
||
--- |