Back to blog

Jenkins in Google Summer of Code Community Bonding, Contributors' Takeaways

Alyssa Tong
Alyssa Tong
June 4, 2024

The community bonding period is the three weeks between GSoC contributor acceptance and the start of the coding date. This is a vital time for mentors and org admins to engage with GSoC contributors and set them up for success. This is the time to set expectations and milestones, welcome the contributors to the community, and give them access to the tools they need to succeed during the coding period.

Given that May 26, 2024, marked the end of the bonding period, we asked the GSoC contributors to share their key takeaways from this period. Here’s what they had to say:

  • Implementing UI for Jenkins Infra Statistics | contributor: Shlomo Dahan

    1. Establish a communication schedule: Set up regular meetings with mentors early on. Knowing how often to meet and discuss progress will help keep you on track and ensure you are receiving timely feedback.

    2. Understand the codebase: Understanding the project’s codebase and infrastructure is crucial. This will help you make informed decisions when you are planning out your roadmap.

    3. Create a project roadmap: Having a clear roadmap will ensure that you stay organized throughout your coding period. Set specific milestones and deliverables to always have a tangible goal to work towards.

    4. Utilize downtime efficiently: Don’t get stuck waiting for answers. Mentors are often busy and might not always respond immediately. In the meantime, work on other tasks to ensure you always have multiple items to tackle. This approach will keep your project moving forward.

  • Manage Jenkinsci GitHub Permissions as Code | contributor: Danyang Zhao

    1. Use various communication tools: Don’t rely solely on weekly meetings. Keep the dialogue open through emails, Gitter, or other accessible communication platforms.

    2. Seek help: If you encounter a challenging issue, seeking help is a good strategy. Reach out to your mentor, co-mentor, or even other community members. They are all willing to assist.

    3. Communicate schedules clearly: If unexpected commitments arise, such as exams, inform your mentor. Communication is important.

  • Improve Maintainability for the Repository Permission Updater | contributor: Phillipp Glanz

    1. Be aware of scheduling: It is important to communicate in order to be able to plan better in the event of scheduling conflicts or exams.

    2. Communication is key: Open and direct communication is necessary to get feedback at an early stage, as this prevents duplication of work.

    3. Deliberate planning helps organize work: Precise agreement on who does what and precise delimitations make the process much more efficient.

  • Enhancing an Existing LLM Model with Domain-specific Jenkins knowledge | contributor: Nour Ziad Almulhem

    1. Enhanced understanding of project goals and tools: We spent time comprehending the scope and objectives of the project. I learned how to effectively use tools to collect a dataset of Jenkins-specific knowledge provided by stack exchange, community questions, and Jenkins documents. This foundational knowledge is crucial for the successful implementation of the project.

    2. Community engagement and support: I experienced the importance of community interaction. Engaging with mentors and organization admins helped me feel supported. This engagement provided me with the confidence and motivation to tackle the project, discuss my contribution during the final exams, and speak out loud about the help I need at any time.

    3. Preparation and planning: The bonding period allowed me to prepare and plan for the coding phase effectively with mentors and define our goals and milestones. We focused on data collection, processing strategies, and discussing various approaches to achieve the objective of the project.

  • Using OpenRewrite Recipes for Plugin Modernization | contributor: Sridhar Sivakumar

    1. Define expectations and goals: Refine the proposal and prepare clear expectations and goals for the project, such as defining the project’s scope, setting milestones, and outlining the deliveries. This will significantly aid in preparing the roadmap.

    2. Bonding with the community: The bonding period is not only to interact with the mentors but also with other community members. It is always good to share your thought process and ideas with other community members via blog posts.

    3. Report your blockers: Communication is the key to a successful project. Discuss any obstacles you encounter, such as exams or other personal issues with the mentors or Org Admins.

About the author

Alyssa Tong

Alyssa Tong

Member of the Jenkins Advocacy and Outreach SIG. Alyssa drives and manages Jenkins participation in community events and conferences like FOSDEM, SCaLE, cdCON, and KubeCon. She is also responsible for Marketing & Community Programs at CloudBees, Inc.