Mentorship Program 2023: KickOff 🚀 #689
Replies: 25 comments 46 replies
-
@AceTheCreator not sure why but there was no notification sent to TSC members -> https://github.com/asyncapi/community/actions/runs/4791729095/jobs/8522465648 probably some special sing or something in the text. We probably need better escaping of content, dunno 🤷🏼 anyway pinging TSC again @asyncapi/tsc_members folks please have a look 🙏🏼 AsyncAPI Mentorship starts again, we need proposals for projects |
Beta Was this translation helpful? Give feedback.
-
I created an issue with my proposal regarding the simulator repository. #691 (comment). I will add further details. |
Beta Was this translation helpful? Give feedback.
-
Mentorship Program 2023 : Developing a Step-by-Step Contributing Guide for Newcomers [Project Idea]⭐Description:First of all, why do we need a contributing guide? When I started contributing to AsyncAPI, I had no prior knowledge about event-driven architectures, and had only a slight understanding of APIs. Consequently, I realized that I wouldn't be able to contribute effectively to the community. However, I took my first step by drafting a design for Dark mode of Async Website (Figma) which eventually led to my involvement in contributing to the AsyncAPI website. Subsequently, I delved deeper into other projects within AsyncAPI and applied for GSOC 2023. Despite taking me a week to understand the issue and project, I didn't lose hope and applied for the project. As a result, I am now an upcoming mentee for AsyncAPI under Postman. The goal of this project is to create an exceptional and comprehensive contributing guide to reduce the time it takes for newcomers to make their first contribution to the project. By providing clear and concise instructions, documentation, and resources, we aim to streamline the onboarding process and empower new contributors to quickly and successfully make their initial contribution. Below are some suggestions for the expected outcomes and approach. 🧾 Expected outcomes: 💬
Approach: 📖
P.S. This project idea is also included in the AsyncAPI roadmap.😉 In conclusion, developing a step-by-step contributing guide for newcomers has the potential to greatly benefit the AsyncAPI community. By providing clear instructions and resources, we can empower new contributors to make their initial contributions with ease. It's important to note that this project idea is currently in the proposal stage and has not yet been selected for the mentorship program. However, I believe that implementing this project would foster a more inclusive and supportive community, enabling individuals with varying levels of experience to contribute effectively to AsyncAPI.🚀💜 |
Beta Was this translation helpful? Give feedback.
-
I submit the following project idea present inside the AsyncAPI website for the Mentorship program : |
Beta Was this translation helpful? Give feedback.
-
Hello 👋 I would love to know more about how can I take part in this program for writing opportunity 😃 ? Thank you :) |
Beta Was this translation helpful? Give feedback.
-
For the technical writers, I submit assigning documenting how different protocols work with AsyncAPI. The community already voted and expressed their interest, as you can see from the previous link I added here. (The other core needs of |
Beta Was this translation helpful? Give feedback.
-
Is this issue #4 still valid? I would like to continue working on this and create a proposal |
Beta Was this translation helpful? Give feedback.
-
How can I start contributing? Also is there any role for contribution of technical writer? Thankyou |
Beta Was this translation helpful? Give feedback.
-
Hi everyone we are still accepting project proposals at the present moment, once that is done we will announce the application phase. Please be sure to watch our Slack and Socials for the announcements 🤗 |
Beta Was this translation helpful? Give feedback.
-
Project Idea: [Mentorship Program 2023] Integration of AsyncAPI Tools Examples within AsyncAPI Tools Dashboard Tab (Similar to AsyncAPI Docs but like providing Docs for each Tools)🛠️🚀Introduction🔍AsyncAPI has become a popular specification for building asynchronous APIs. There are many tools available in the market for building and consuming AsyncAPI-based APIs. However, users face difficulty in exploring the tools and their use cases as the information is scattered across different Github pages. This project proposes integrating the setup and examples of almost every tool in the AsyncAPI Tools Dashboard page to save users' time and have all the necessary tools and requirements at one place. Project Goal🎯The goal of this project is to integrate the setup and examples of AsyncAPI tools into the AsyncAPI Tools Dashboard page to provide users with a comprehensive overview of each tool's functionality, setup requirements, and use cases. This will help users understand the tools' capabilities and make an informed decision on which tool to use for their project. Project Scope📜The project scope includes the integration of the setup and examples of the following AsyncAPI tools into the AsyncAPI Tools Dashboard page:
Approach💻To achieve the project goal, we will first go through the documentation of each tool and extract meaningful information, including the tools' descriptions, setup information, and usage examples. If any examples are not available, we will create short and precise examples for each tool with a fresh start. For instance, consider the example of the "nestjs-asyncapi" tool, where the user has to visit the Github page to set up the project and then another page for examples. We can provide all the essential information on the Dashboard page, including the tools' descriptions, setup information, and examples of how to use each tool. Deliverables📦The project deliverables will include the following:
Conclusion🤝The proposed project will help users explore AsyncAPI tools more efficiently by providing all the necessary information in one place. This will save users' time and effort in exploring the tools and their use cases. The project's success will depend on how well we can integrate the setup and examples of each tool into the AsyncAPI Tools Dashboard page. |
Beta Was this translation helpful? Give feedback.
-
For Designers these are the two projects we are proposing:
cc @mcturco |
Beta Was this translation helpful? Give feedback.
-
|
Beta Was this translation helpful? Give feedback.
-
AsyncAPI: Add help/{command} endpointIntroductionAs RESTful APIs grow and encompass a wide range of functionality, it becomes increasingly important for users to easily understand and interact with the API. This project aims to enhance an existing API by adding a help endpoint that provides detailed information on the commands and sub-commands available through the API. Project DescriptionThe goal of this project is to add a new endpoint, /help/{command}, to an existing API. This endpoint will provide users with detailed information about the available commands and their sub-commands. Users will have the option to request information on a specific command or receive an overview of all available commands.
MethodologyAnalyze and understand the existing codebase. QualificationsI have a solid background in Node.js and Express.js, which are fundamental to developing the API. My understanding of asynchronous JavaScript and RESTful principles ensures I can build efficient and scalable endpoints. My experience with Markdown, coupled with my proficiency in using parsers, will be invaluable in handling the command help content. I also have experience in using HTTP clients, such as Axios, for fetching data from GitHub and other external sources. My meticulous attention to detail and commitment to writing clean and maintainable code make me well-suited for this project. AvailabilityI am fully committed to working on this project full-time during the program period, and I have no major scheduling conflicts or other obligations that would prevent me from completing the work on time. I am also highly motivated to work with my mentor and with the AsyncAPI community to ensure that the project is a success, and I am willing to go above and beyond to ensure that the endpoint meets the needs of users.
ConclusionThe proposed project seeks to address a common pain point for AsyncAPI users by adding a new endpoint to the AsyncAPI server API that provides detailed information and usage instructions for the tool. Detailed SolutionKey Points: 1. Setting Up Environment and DependenciesSet up a development environment and relevant dependencies. 2. Implementing the GET /help EndpointCreate a new controller, 3. Supporting Command Specific Help via Query ParametersExtend the 4. Error HandlingImplement proper error handling for cases like failed HTTP requests or when a requested command is not found in the documentation. 5. CachingTo improve performance, implement caching for the fetched Markdown documentation. This will prevent unnecessary HTTP requests for each help query. 6. TestingWrite unit tests to ensure the endpoint returns the expected results. 7. Documentation and CleanupDocument the code and the functionality of the endpoint, including example usage. 8. Final Review and SubmissionPerform a final review of the code to ensure it meets all requirements. Thanking NoteI will look forward to every feedback from the organization members reviewing this, and would be glad to discuss/change accordingly. |
Beta Was this translation helpful? Give feedback.
-
Project Idea: [Mentorship Program 2023] AsyncAPI Studio: Enhanced Collaboration and Real-time Editing🚀 Introduction: AsyncAPI Studio is a web-based IDE designed for working with AsyncAPI specifications. While the tool provides a solid foundation for individual developers, there is a need to enhance collaboration features and introduce real-time editing capabilities. This project aims to improve collaboration within AsyncAPI Studio by enabling multiple users to work together on AsyncAPI specifications in real-time. 💡 Project Description: The primary focus of this idea is to enhance collaboration and real-time editing capabilities within AsyncAPI Studio. The following features can be developed:
🔧 Approach: The approach for enhancing collaboration and real-time editing in AsyncAPI Studio could be like this
By following this approach, we aim to transform AsyncAPI Studio into a powerful collaborative platform where users can seamlessly work together on AsyncAPI specifications in real-time.I look forward to a critical review so that we can fine tune the points. |
Beta Was this translation helpful? Give feedback.
-
For Docs and Engineering I propose the following issue: asyncapi/glee#431 |
Beta Was this translation helpful? Give feedback.
-
Project Proposal - [Mentorship Program 2023]
Enable Metric Monitoring and Observability Modules for Code GeneratorsDescriptionMetric monitoring helps collect and analyze the data generated from an application and can be vital when it comes to maintaining the progress of a system. While AsyncAPI’s current code generator produces a well-formed structure to be built on, this project proposes to develop a feature that can allow users to easily accommodate a metric monitoring module within their application.Approach & Sample OutputTo create a sample application with an expected outcome I used the java-spring-template to generate a spring boot application with Kafka’s configuration for Streetlight’s API. In this example, Prometheus is the monitoring system used to collect and store metrics. A spring boot web project was set up using this structure with the actuator endpoint to expose the application metrics. However, customized code has to be written to expose the consumer metrics to the endpoint and this differs for other servers and brokers. As an extended scope, this endpoint can also be used a data source in Grafana to enable data visualization. ChallengesThe implementation of the solution requires customization across two areas -
ConclusionThis project proposal aimed to introduce a new feature that could elevate the capabilities of AsyncAPI’s code generator. Despite the challenges in its requirements, there is a lot of potential in this problem statement and I believe it will offer a whole new level to explore data in an application based on event-driven architecture. |
Beta Was this translation helpful? Give feedback.
-
For the mentorship I'd like to submit my topics that did not make it into AsyncAPI Mentorship 2022:
I think asyncapi/website#267 would also be a nifty topic to push, but I don't think I'm able to mentor it, I have to many topics. If there is any other TSC member that can mentor it, that would be amazing |
Beta Was this translation helpful? Give feedback.
-
Project Proposal - [Mentorship Program 2023] (Drag&drop AsyncAPI block builder)I would like to work on asyncapi/studio#265 |
Beta Was this translation helpful? Give feedback.
-
I would like to post a project from CLI, @AceTheCreator I need your opinion if we can make it into a project, we basically need help to prepare CLI for the v1 release. Project Title: Prepare CLI for the 1.0 release
|
Beta Was this translation helpful? Give feedback.
-
Project Idea: [Mentorship Program 2023] AsyncAPI Studio: Desktop/Native application for Async API studioThe AsyncAPI Studio is currently exclusively available as a web application, using it locally will require setting up the development environment, which can be a cumbersome process for certain users. In order to address this limitation and provide a more accessible solution, the objective of this project is to develop a cross-platform desktop application for the AsyncAPI Studio. By creating a downloadable version of the studio, users will be able to seamlessly run it on their devices without the need for an internet connection. Project description:The primary motivation behind this project is to enhance the user experience and convenience by eliminating the dependency on the web version or the complexities of building the application from source. By leveraging the power of the Qt framework we aim to create a native desktop application that encapsulates the full functionality of the AsyncAPI Studio. This will enable users to install the application on their devices with ease, ensuring they have a dedicated and offline-accessible environment for designing, visualizing, and managing their event-driven architectures. Compared to web applications, desktop applications offer advantages such as:
Approach :To achieve high performance and offline functionality for the AsyncAPI Studio web application, we will leverage the Qt framework to create a native application that embeds the existing web application and provides additional features and optimizations.
Extended Goals:
ConclusionWith the proposed desktop application, we aim to bridge the gap between the web version and the complexities of building from source, enabling users to enjoy the full capabilities of the AsyncAPI Studio in a convenient and downloadable package. |
Beta Was this translation helpful? Give feedback.
-
Hey Folks 👋🏾 While we received so many exciting projects for this year's mentorship program, unfortunately, we only received a handful of available mentors to drive these projects forward, which means we won't be having a vote to decide which project gets selected and which one we drop because the number of projects with mentors is equivalent to the amount of slot available for the program. So we are selecting projects with available mentors. ICYM @asyncapi/tsc_members, we decided to increase the number of slots available for the program to 13 because project number 4 requires three mentees, so we need three more slots for the last three projects, and that is the reason behind 13 slots. Wouldn't that exceed the amount budgeted for the program, you might ask? We didn't maximize the amount budgeted for last year's program, as we have four projects not completed in the previous year, so we'll use from last year's budget. Another clarification I'll like to make is the projects with Closed status. Projects one and three were supposed to be part of this year's GSOC but were dropped due to the number of slots available, and Project two was part of last year's mentorship program but was stalled due to one of the participants dropping out after the program kicked off. These projects already have mentees assigned to them, so interested candidates should refrain from sending proposals for these projects. Could you approve the program with these projects? @asyncapi/tsc_members
|
Beta Was this translation helpful? Give feedback.
-
I would like to add, It is very important that you concentrate on the programs you are currently participating in and give others a chance to apply to the AsyncAPI Mentorship Program and also grow their skills in open source. (thanks, @alequetzalli for the idea) |
Beta Was this translation helpful? Give feedback.
-
@AceTheCreator How to submit my proposal.. Should I Create an issue? |
Beta Was this translation helpful? Give feedback.
-
Any resources on how to frame the proposals? Thanks! |
Beta Was this translation helpful? Give feedback.
-
Hey Folks!!! Here's to inform you y'all that the lists of the selected candidate will be published next week. Until then fingers crossed 🤞🏾 P.S. We have excluded one of the chosen projects(design) due to its relation and similarities to another selected project |
Beta Was this translation helpful? Give feedback.
-
Hey, Folks!!!
📣 Announcement
It's Ace, and I'm here with an important announcement.
How would you feel if I was to tell you that the AsyncAPI mentorship program is happening again this year?
Yeah, it's happening, and you don't want to miss out because this year, we are not going only to be accepting code-related projects but also design and technical writing, which means anyone can be a part of the program this year 🙂
Last year we hosted the first-ever AsyncAPI mentorship program, and out of 10 candidates, only six candidates completed their projects. I know you might wonder why; the last year's program was more of a beta test to see how things would work out or to see if it's something we should continue, and I'm glad it was a positive experience both from the mentor's side and mentees point of view. Yeah, we had some ups and downs with the participants, and we learned a lot to help us better the program in the long run.
🤨 Why do we do this?
At AsyncAPI, we value giving back to the community, as it gives us a sense of purpose as a community-first organization. We are particularly interested in doing this program again because of the unparalleled feeling of giving back and contributing to the community we've gotten from this program. As an open-source organization, we hope to collaborate with a broader reach of open-source enthusiasts and help bring more folks into the open-source world(which we are already doing). Furthermore, our reason for doing this program comes from our passion for open source and the care to support and encourage open-source contributors by building and participating in mentorships.
It's going to be an exciting year for the AsyncAPI contributors, as we will be participating in 3 mentorship programs which include GSoD, GSoC, and our own AsyncAPI Mentorship Program. If you failed to get into GSoC or GSoD, you still have a chance to participate in this year's AsyncAPI mentorship program.
🦺 Project Ideas
Have any exciting project ideas? Did your project idea get rejected for GSoC? Are you a project maintainer with exciting ideas? Submit your ideas as a GitHub issue(including the mentorship label), a separate discussion, or a comment below.
Anyone can create proposal suggestions. There is no specific template to follow, only common sense. Describe in a detailed way what it is about, what are the requirements and desired outcome. If the proposal suggestion misses some details - do not worry. We will be sure to follow up with a request for more clarification.
Project Ideas can be Engineering, Design, and Technical writing related.
We will make sure there are mentors for each proposal that gets selected because all of AsyncAPI's mentors are core members of the AsyncAPI community and prominent advocates for open-source projects with a strong belief in FOSS, which means keeping them engaged will require just a little effort. But we'll keep them engaged by staying connected and ensuring communication channels go both ways, showing how they made a difference and valuing the opinions of every mentor.
Project Ideas Deadline
The deadline for project ideas submission is four(4) weeks after the program announcement.
⏳ Timeline
The AsyncAPI mentorship program will take approximately 4-6 months, depending on the complexity of each project. Here's a sneak peek at the timeline milestone
💸 Project Budget
Like last year, there will only be ten slots available for this year's program at the cost of $1,500 per candidate, which is a total of $15,000.
🧾 Payment Method
Selected candidates will receive a stipend of $1,500 for participating in the program, and candidates are only allowed to request payment via Open Collective by submitting an expense.
Payments are only made to candidates who pass an evaluation phase; for each successful evaluation phase, you receive half the total amount—more on the program rules and guidelines coming soon.
📱 How to connect with us
#mentorships
that we will use to coordinate the application process until program starts. All mentees and mentors are there.Feel free to share with your peers 🙂
Q&A
Peace ☮️ ✌🏾
cc @asyncapi/tsc_members @derberg @alequetzalli @thulieblack @fmvilas @Barbanio
Beta Was this translation helpful? Give feedback.
All reactions