GSoC Admin Guidelines
Areas of this page are still under construction as this is a guide passed down from previous GSoC administrators.
Purpose of this document
This document serves as a resource on how to administer Google Summer of Code for OpenMRS.
What is Google Summer of Code?
Google Summer of Code (GSoC) is a global program focused on bringing more student developers into open source software development. Students work with an open source organization on a 3 month programming project during their break from school.
Who are the GSoC Admins this year?
This year, we have a small team of four GSoC Admins who will be supporting students, mentors, squads, and the community between January and September 2022.
@Herbert Yiga
@Kakumirizi Daud
@Grace Potma
@Jennifer Antilla
What is the role of a GSoC Admin?
The GSoC Admin is to handle tasks related to the success of OpenMRS projects for the calendar year while supporting students and mentors during the program's duration.
Overview of Tasks
We set up this activity plan to track our admin tasks. This plan tells you who is responsible for the tasks below (and more) - and when they're slated for action.
Getting Started (what you need to know up front)
Purpose of GSoC
Contacts and who to ask for help
GSoC Admin Team
Project Management calls
Timing of Admin Support (January thru September)
Expectations of GSoC Admin
Having multiple ways of communicating with mentors
Anticipating timeline and deadlines
Expectations of GSoC Mentors
Expectations of GSoC Students
Melange – what you need to know about it
How finances are handled
Getting the right privileges
Access to GSoC resources
The GSoC (Google Summer of Code) Google Drive folder
Wiki
JIRA
Telegram - there is a dedicated OpenMRS GSoC Admins channel
An @openmrs.org email address (if you don’t already have an assigned @openmrs.org email address associated with your OpenMRS ID, contact the help desk to get one).
Setting up the GSoC wiki page
See https://openmrs.atlassian.net/wiki/display/RES/Summer+of+Code for page template.
Page should be added at https://wiki.openmrs.org/display/RES/Summer+Of+Code+YYYY, as well as a shortened URL http://om.rs/socYYYY, where YYYY is the current year, e.g. 2018. You can ask the help desk or anyone in the infra team to make the short link for you. It should point to the short URL of the page (which is permanent, even if the page should later be renamed or moved within the wiki). Whenever referencing the GSoC page, try to use the short link (including in the application).
Proposed page headings:
Program Timeline
Proposed/Accepted Projects
Initially heading is listed as ‘Proposed Projects’, once the projects and mentors have been finalised, update to ‘Accepted Projects’
Expectations for Students
Expectations for Mentors
Expectations of Backup Mentors
Have Additional Questions?
Our Technology At-A-Glance
Application Requirements & Questions
Registering OpenMRS for GSoC
The GSoC admin(s) are responsible for ensuring the community is registered for GSoC and submits a strong application. There is no guarantee that OpenMRS will be accepted each year; however, a strong application and successfully mentoring students in GSoC certainly helps.
The GSoC folder on Google drive contains folders for prior years of GSoC. If there isn’t one already, make a folder for this year’s GSoC. This is the place to draft the application and keep any additional files pertinent to administration of GSoC (forms/spreadsheets used to track student progress, notes from mentors about students during the application process, etc.). Keeping this organized helps make it easier to improve our process each year.
Register OpenMRS for GSoC
Go to the GSoC web application and follow the instructions to get started as a mentoring organization. You will be registering both as an admin/mentor as well as registering OpenMRS for GSoC. The organization name is obviously OpenMRS. Otherwise, fill in your personal information (use your @openmrs.org email address). You’ll need to agree to terms both for yourself and then on behalf of OpenMRS. Once done, you should end up at an organization application dashboard. This application summary page should make it obvious that there are 3 steps to complete: (1) an application, (2) an organization profile, and (3) identifying at least 2 administrators. You should have at least two admins identified, so you can invite any other admins once registered. See the section below for details about preparing and submitting the application.
DEADLINE WARNING
Make sure the steps for the application are completed well before the deadline. Missing the deadline would mean missing a year of GSoC and that would be a very, very sad thing for OpenMRS.
Don’t forget that our strength is community. Recruit your fellow admin(s) to help ensure the application process goes smoothly and don’t hesitate to ask for help from community members and other leaders in the community.
Getting people thinking about potential projects and being a mentor
See here (2018) and here (2017) for example/template Talk posts to introduce GSoC, and identify potential projects & mentors.
Make sure to tag the post with gsocYYYY, where YYYY is the current year, e.g. gsoc2018.
TODO: Consider how to get the most of this post (i.e. to gain more traction):
What is the best time of day to post (considering varying timezones)?
Should the post be shared on chat or any other forums?
Who should be tagged in the post?
Submitting the OpenMRS application to GSoC
There are two parts to the application in the GSoC web app: (1) an organization application and (2) an organization profile. The GSoC web app allows you to complete both of these in parts – i.e., you can answer some of the questions, save your work, and return to answer more questions later. The GSoC web app will give you information about your progress and let you know when the application is complete.
Complete the organization application
Start by copying the application Google doc from last year to this year’s folder and renaming it for the current year. First compare the questions on the GSoC application web form to the sections in the Google Doc from last year. Sometimes Google will change or add a question, in which case you’ll want to update the Google Doc to match.
Rather than simply copying the same information from the prior year’s application, first read through each answer and make sure it reflects the current state of OpenMRS. Take a moment to make some small improvements to our answers. While just making the answer longer doesn’t make it better, there may be new information or accomplishments to include this year that didn’t exist in prior years. Help keep our application strong and fresh! Ask other admins to review the application before it’s due, so they have an opportunity to find typos or make suggestions.
If you make any changes to the application within the GSoC web application, please try to make the same changes to the Google Doc. While it might not seem critical this year, next year’s admins will be glad that they’re starting with the actual application content submitted rather than a rough draft.
Complete the organization profile
Most of the information in the organization profile should be straightforward.
Our website is https://openmrs.org
Our tagline is “Write code. Save lives.”
You can use the OMRS-cross.jpg file for our logo. If you find a better version of the logo to use, be sure to include a copy of the logo file in the Google Drive (for next year’s reference) and update this document accordingly.
Category is: Science and Medicine
Suggested technology tags (these may evolve as OpenMRS evolves): Java, JavaScript, REST, MySQL
Suggested topic tags: developing countries, open source, medical records
For the ideas list, provide a URL to this year’s GSoC page. Use the short link (om.rs/socXX) you created earlier for this year’s GSoC wiki page.
Recruiting Mentors
Getting the wiki page ready
What makes a strong GSoC project and what does not
Listing potential GSoC projects on the wiki
What to do when OpenMRS is accepted
Announcements on Talk
Contact mentors to notify them of the next steps, and confirm email addresses for mentor invites, e.g.:
Hi All! Now that OpenMRS has been selected as a mentor organization for GSoC 2018, there are a few ‘next steps’ to get through. I’ll be helping to administer OpenMRS’ participation in GSoC this year, and I’ve added you all to this thread as your names are currently listed as primary or backup mentors for one or more of the GSoC 2018 project ideas. (I’ll add new mentors to this thread as they are identified) The student application period is from 12-27 March, but interested students can start discussing project ideas as of now. There’ll likely be increased activity on Talk, Telegram, and IRC as potential students start to familiarise themselves with OpenMRS, explore project ideas, and take on introductory tasks. To make things easier during the student on-boarding process, can I suggest reviewing project wiki pages to make sure there are a well-defined set of objectives, and clear project scope. Org Admins should now be sending potential mentors invitations to be a part of their organization. The mentor will need to click the link in the email they receive to accept the invitation and create their account. I’ll be sending out invites shortly to join the OpenMRS organization on the GSoC site, so that you can start receiving email updates and access student applications etc. These will be sent to your @openmrs.org email accounts - I’m assuming email account names match your OpenMRS ID usernames. If your @openmrs.org email account name is different to your OpenMRS ID username, please let me know. Any questions, concerns or corrections, please don’t hold back Thanks |
Send out email invitations to mentors
“Org Admins should now be sending potential mentors invitations to be a part of their organization. The mentor will need to click the link in the email they receive to accept the invitation and create their account. All mentors must be invited by an Org Admin.”
Getting projects into the GSoC application
Suggested labels (“my first interest”, “my secondary interest”) for GSoC app
Create secret document for mentors & admins to track feedback on potential students
Getting mentors and projects aligned
Backup mentor for each project
Read Google email carefully
Potential students
Answering initial questions
Expectations
Preparing intro tickets
Getting students connected to the community
Keys to successfully connecting students and mentors
Student Proposal Time
Post to Talk when student application period opens, e.g. see here and here.
What students should be doing
What mentors should be doing
What you should be doing
Review secret document to track feedback on students
Adding tips/comments about students for mentor as private message on proposals in GSoC app, especially for the most outstanding students
Trying to distribute students across projects and helping projects that may be getting less attention.
Getting the best students onto projects
Making sure mentors are reviewing applications
Getting mentors to review proposals
Agree on rules for minimum needed for acceptable proposal
Helping filter out incomplete or unacceptable proposals (to help mentors)
Student Selection Time
What to tell (and not to tell) students
What to tell mentors
Make sure every project has a mentor assigned to a student in GSoC app
Conflict resolution meeting
Announcing accepted students
Updating the wiki
Tweeting
Blogging
Post on Talk
Community Bonding Period
Student introductions on Talk:
What students should be doing
What mentors should be doing
Finalizing design plans with students.
What you should be doing
Ensuring projects are ready.
Preparing for tracking weekly evaluations & blogs
Starting GSoC
Student Blogs
Students are required to post (at least) one blog entry a week during the course of the GSoC program. To prepare students for this, ask students to set up their blog and add one post during the community bonding period:
Once all blogs have been shared, these should be added to the feeds on http://planet.openmrs.org. To do this, the blog URLs should be added to the openmrs-contrib-planet repository, where they will be auto-deployed to OSUOSL (hosting OpenMRS Planet). You should fork this repository, create a new branch, add the list of blog feeds to openmrs-planet.ini, and open a PR against the base repository to have this merged, e.g.:
Weekly Status Reports
Students are expected to submit a weekly status report and blog post (to be provided as a link in the status report). Encourage students to attend the daily standups on IRC (this is not a strict requirement as the timing of the standups won’t suit everyone, and in all likelihood only a handful of students will take this up).
Talk post:
Status Report (set up as a Google Form):
https://docs.google.com/forms/d/e/1FAIpQLSe70Wxp40WhZvFzjWcko8DZhT5nRiuQGC_CCF6QSFn261wywQ/viewform
https://docs.google.com/forms/d/11yFCXAM6vkVEEhTlIij9C681PbWMTZARvYFy5GG7ogQ/edit
The form includes a checkbox for:
I'm worried/concerned about my project's progress. Please contact me.
Try to check this each week and follow up with students who have marked this field, and/or have rated their mentor’s efforts as low. This is important to ensure that issues are identified and handled early on, and applies to issues with students and mentors. GSoC uses a continuous assessment approach, with several evaluations through the course of the program. If students are not meeting expectations and making progress (be it for personal reasons, issues with mentor support or other reasons) this will be reflected in the evaluations. The results of the evaluations should not come as a surprise for students though - issues should be handled early on so that there is a chance to correct them and get back on track.
Tracking Progress
What your week should include
Updating the GSoC wiki page
Following up with students and mentors
Project Evaluations
There are three times during the coding phase of GSoC where mentors evaluate their student’s progress and students evaluate their mentors (after the first, second and third months of coding).
https://google.github.io/gsocguides/mentor/evaluations
https://google.github.io/gsocguides/student/evaluations
The evaluations require students and mentors to complete a set of survey questions on the GSoC site. Examples of the types of questions that are asked at each evaluation are available online:
https://developers.google.com/open-source/gsoc/help/evaluations
First Evaluation
In the week before the first evaluation, send a message to students and mentors to notify them early on that evaluations are due soon, and describe what each evaluation will consist of.
e.g. Talk post:
First Evaluations
Dealing with failing students
Second Evaluation
Preparing students for presentations
Announcing presentations
Dealing with failing students
Final Evaluation
Preparing students for final presentations
Announcing final presentations
Finishing up GSoC
Blogging
See here for an example of the GSoC 2017 post summarizing the GSoC experience for that year.
Updating this document and other GSoC resources
Update GSoC wiki page
Move project wiki pages to Completed Projects and remove the links from the Unassigned Projects page.
Preparing for the next year (asking for who wants to be admin next year)
Mentor Summit
How to decide who goes
After Action Review
What should change for next year
Preparing for next year’s GSoC
Troubleshooting
What to do with a trouble student
What to do with a trouble mentor
What to do when you’re in trouble
Questions?
Prerequisites to be a GSoC Admin?
How are GSoC projects chosen?
How much time does it take to be a GSoC Admin?
Am I in it alone?
No, the GSoC Admin can reach out to admins from previous years (see Contacts) for guidance. Also GSoC Admin(s) are encouraged to join OpenMRS Project Management (PM) calls to give updates on how they things are going and whether there are any blockages or issues they need help with.
Resources
Timelines and general information - https://summerofcode.withgoogle.com/