Organization Guide

The program has several goals:

  • The core of the program lies in developing open-source projects and expanding the open-source community.
  • Inspire young developers to begin participating in open source development.
  • Provide students the opportunity to do development and encourage academic pursuits during the summer which will help them get recognition internship and job offers from partner organizations
  • Give students more exposure to real-world software development (for example, distributed development and version control, software licensing issues, and mailing list etiquette).

Organization Administrator: Org admins will submit the organization’s application to participate in the program to GitHub, ensure that mentors fill out evaluations in a timely fashion, and generally organize their project’s participation in Github Fellowship. The org admin acts as Github’s go-to person if any issues arise. Org admins are the final authority about matters such as which student projects will be accepted and who will be appointed mentorsl.

Mentor: Mentors are people from the partner organizations community who volunteer to work with a student. Mentors provide guidance such as pointers to useful documentation, code reviews, etc. In addition to providing students with feedback and pointers, a mentor acts as an ambassador to help student contributors integrate into their project’s community. The Organization will be appointing mentors for their projects.

GitHub Externship Structure

The Github Externship will be structured in a 6-month format, which will follow the path as:

STEP 1 - Organizations submit their application to participate in Github Fellowship.

STEP 2 - The list of Organizations is published and the interested students apply in their choice of organizations.

STEP 3 - Students whose application clear the first round will enter the prelims, where the fellow participants and the Mentors will have a series of discussions to better understand the approach of each participant.

STEP 4 - Final list of participants entering the prototyping phase is published, and they along with their mentors will work together for a period of the next 3 months and come up with a conclusive prototype of the suggested proof of concept.

Timeline

Organization Onboarding

Organizations can signup for GitHub Externship & offer open-source projects to students.

Student Applications

Students can register and submit their applications to partner organizations.

First Screening

if ( studentApplication == 'good' )
  { studentScreening = true }

First Screening Announcement

if ( studentScreening == true )
  announce ( 'Student shortlisted' );

Mentor-mentee Interaction

All the shortlisted students will interact with their respective project mentors and define the scope of the project.

Student Shortlisting

After the mentor review and student proposal submission, final candidates shortlisting will be done.

Final Selection

Final list of students for the prototyping phase is announced.

Prototyping Phase

while ( prototypingPhase )
  {  think();
    code();
    debug();
  }

Final Report Submission

Students submit their final report on the project completion.

Rewards & Recognition

Students would be rewarded.

Organization Applications: Each organization willing to be part of the GitHub Externship must apply to participate. Github/IncubateIND program administrators will then select which organizations will participate in Github Externship, post which their project will be listed on the website.

Org Responsibilities

  • Provide project details for the applicants to apply.
  • Must have an active open-source software project.
  • Must commit to provide mentors for supporting / guiding students during their projects.
  • Must have released or produced software under an OSI approved license.
  • Mentors should expect to spend about 2-3 hours a week for each student. Some weeks may be more, some weeks less. More time spent during the community bonding period and the first few weeks of the program have led to more successful and engaged students.
  • Publish weekly or daily goals. This helps to keep scope, show progress, and keep students active.
  • Make all communication public.
  • Prepare students to immediately start writing code at the official start of coding.
  • Get students engaged socially in the project.
  • Provide time for students to learn about the development practices of the organization.
  • Ensure that students have a development environment set up. This includes getting set up with the project version control system and reading up on necessary documentation.
  • Further refine the strategic plan for project completion. Be sure to have solid requirements for both phases, particularly the end of the first phase so there is no confusion between your expectations and the student’s. Other milestones for the final phase can be adjusted by discussing with the student as needed.
  • Determine a schedule and format for regular student project updates.
  • Establish up-front guidelines for mentor time involvement.