Code to Community
Journey Through OSS with Go OpenAI.
Dimyo Meetup #2
Yuichi Watanabe at Nulab Inc.
Profile
-
Yuichi Watanabe
-
SWE at Nulab Inc.
-
Also studying at university while working full time.
-
Father of two children.
-
Passionate about football, especially LaLiga.
-
Enjoys with indoor plants.
-
Preference for ferns and air plants.
Index
ABOUT OPENAI API
various tasks
Performs various tasks like language generation, text summarization, translation, and more.
Intgration
Facilitates easy integration of AI into existing systems.
ABOUT Go OPENAI
WITH Azure
Supports OpenAI API and Azure OpenAI Service through a common interface.
popularity
Has a high popularity with 6.0K stars.
ABOUT Go OPENAI
Motivation to Contribute
Starting from an interest in building an experimental tool with the OpenAI API, and a fondness for the Go, I selected the very popular Go OpenAI library.
Go OpenAI community was very active. However, it seemed challenging for a single maintainer to handle the numerous issues and pull requests.
With the intent to help overcome these challenges, I decided to contribute to the development of Go OpenAI.
Continuous Contribution
Initially started working on refactoring tasks labeled as "Good First Issue". This was followed by the implementation of unsupported APIs and bug fixes.
Moreover, due to the presence of a large amount of boilerplate in the test code, a refactoring of the tests was carried out, resulting in a significant reduction in the amount of code.
In addition to code contributions, other activities were also carried out such as participating in discussions on pull requests made by others, responding to questions in issues, and other non-code contributions.
result of continued contributions
After about a month of continuous contribution, I was followed on Twitter by Alex, the author of the project, and received a message of thanks via direct message.
Consequently, thanks to an invitation from Alex, I joined the project as a co-maintainer.
I'm very proud!
Activities as a Maintainer
My First goal
- Increase the efficiency of project management
- Reduce communication costs of maintenance
Activities as a Maintainer
Actions
-
Use of Issue and Pull Request templates
-
Labeling of all issues
-
Organization of duplicate or resolved issues
-
Use of a GitHub Actions to auto close inactive issues
Activities as a Maintainer
Results
-
Use of templates standardized the format for contributors when creating new issues or submitting pull requests, making information easier to understand.
-
Additionally, all issues were labeled and organized, making it possible to understand the type and priority of an issue at a glance.
Activities as a Maintainer
Results
-
Duplicate or already resolved issues were closed, reducing the number of open issues from approximately 70 to 25.
-
These efforts have made project management more efficient and contributed to the improvement of Go OpenAI quality.
Participation in OSS projects fosters individual growth and benefits the community.
This process, transitioning from user to contributor and ultimately maintainer, offers deep software development insights and project management skills.
These valuable experiences can be applied to any role.
I hope my journey inspires you to explore diverse ways to contribute, from coding to managing projects.
Conclusion
acknowledgements
This presentation would not have been possible without the dedicated efforts and contributions of Alex, the owner of Go OpenAI, to whom we extend our deepest respect and gratitude.
Please check it:
https://github.com/sponsors/sashabaranov
CODE TO COMMUNITY【English】
By Yuichi Watanabe
CODE TO COMMUNITY【English】
- 451