GSoC 2022 comes with more changes and flexibility. This presentation aims to give an introduction to the contributors and what to expect this summer.
https://kkpradeeban.blogspot.com/2022/01/google-summer-of-code-gsoc-2022.html
1. Summer of Code
Summer of Code 2022
2022
Pradeeban
Pradeeban Kathiravelu, Ph.D.
Kathiravelu, Ph.D.
Dept of Biomedical Informatics,
Dept of Biomedical Informatics,
Emory University
Emory University
2. 2
Contents
โข Why GSoC?
โข Before you begin..
โข Right Project?
โข Shout!
โข Apply.
โข Code.
โข Conclude/Continue.
โข What Else?
3. 3
Why should I bother?
๎
Code for your preferred
preferredopen
source project
projectfor 3 months.
โ And get paid!
โ Open for all the adults (18+) from 2022
โข Not only for students.
โ Must be an open-source beginner.
4. 4
Stipends
Stipends
โข
Stipends
Stipends based on your residence location.
based on your residence location.
โข
Option for:
Option for:
โข
Large Size Projects / Full-time
Large Size Projects / Full-time
โข
(35 hrs/week) / 350 hours in total.
(35 hrs/week) / 350 hours in total.
โข
3000 โ 6600$.
3000 โ 6600$.
ยป Medium Size Projects / Half-time
Medium Size Projects / Half-time
ยป (18 hrs/week) / 175 hours in total.
(18 hrs/week) / 175 hours in total.
ยป 1500 โ 3300$.
1500 โ 3300$.
Background Image: http://blog.echoenduring.com/2010/11/23/learning-about-design-from-angry-birds/
5. 5
Google Summer of Code (GSoC)
๎ Code for an open source organization for 3 months.
๎ Not accepted in previous GSoCs as a
student/contributor, with an exception of either
GSoC 2020 or GSoC 2021 (just once before!).
๎ Google coordinates and rewards you!
โ Getting Accepted.
โ 2 milestones (a.k.a., evaluations).
โข First Evaluation. (45% of the stipend)
โข Final Evaluation. (55% of the stipend)
โ A completion certificate!
6. 6
Some statistics of 2019
๎ 201 Organizations
โ 2,815 mentors and co-mentors.
โ 2,066 from 72 countries, with an assigned student.
๎ Registered
โ 30,922 students, from 148 countries.
๎ Accepted
โ 1, 276 students/projects
โข 148 countries. 6,586 universities.
๎ Completed successfully
โ 1,134 students from 61 countries.
7. 7
Success Rate..
is pretty high!
๎ Most accepted students passed the final
evaluations
โ Success rate โ 88.87% (2019).
10. 10
Timeline (2022)
๎
Feb 7th
โ Feb 21st
: Organizations apply.
๎
March 7th
: Accepted organizations announced.
๎
April 4th
โ April 19th
: Contributor application period.
๎
May 12th
: Slot requests due from organizations.
๎
May 20th
: Accepted contributors announced.
11. 11
Timeline..
After getting accepted
๎
May 20thth
: Community Bonding Period Begins.
๎
June 13th
โ Sep 5th
: Coding Period.
๎
July 25th
โ July 29th
: First Evaluation.
๎
Sep 5th
โ Sep 12th
: Contributor Final submission.
โ Contributors submit the final code and documentation.
๎
Sep 12th
โ Sep 19th
: Final Evaluation.
๎
Sep 20th
: Initial set of final results announced.
12. 12
2022 brings some flexibility
๎ Extended time for coding.
โ Plan with your mentor if you need additional time
to finish your project.
๎
Nov 21st
: Contributor โFinalโ (Extended) Final
Submission.
๎
Nov 28th
: Mentors final evaluation for the
extended GSoC projects.
14. 14
Before you begin..
๎ Google Summer of Code is all about being
Open Source.
๎ Get your basics and motives right.
๎ Netiquettes.
๎ Sign up to the lists.
๎ Join the relevant communication channel.
15. 15
Technologies..
๎ Version Control Systems
โ git, mercurial, ..
๎ Build Tools
โ Maven, Ivy, Ant, ..
๎ IDEs (Integrated Development Environments)
โ IntelliJ IDEA, Eclipse, ..
โ Microsoft Visual Studio ..
๎ Issue Tracker
โ Jira, Bugzilla, Trac, ..
16. 16
๎ Mailing Lists
โ Dev, User, Commit lists, sub-groups, ..
๎ Internet Relay Chat (IRC) and Slack channels
๎ Issue Tracker
๎ Forums and wiki
๎ Blogs
๎ Skype, Personal Mails, gtalk, conference
calls, .. [with the mentors, if that is preferred.]
Communicating with the team..
and the mentor, over the Internet
17. 17
Network Etiquettes
๎ Be Specific and clear.
๎ Research (google.. ;)) before asking.
๎ Be helpful to others.
๎ Be ethical; respect.
๎ NO CAPS! (UNLESS YOU ARE SHOUTING!)
๎ Don't take messages personally.
๎ Dn't snd ur sms msgs to thrds or lsts.
๎ Language/English
18. 18
Proper Addressing..
over the lists/irc/..
๎ Address the devs and users properly.
โ First Name or Preferred calling name.
โ NO Sir, Madam, bro, sis, pal..
โข Even if you know them, personally.
โ No Mr., Dr., or Prof. either.
โ Be gender neutral.
โข โFolksโ over โGuys and Girlsโ.
โ Not too personal.
โข Use โHiโ, instead of โDearโ.
19. 19
Mailing lists
๎ Post only to the relevant list/channel.
๎ Check the mail archives or channel logs first.
๎ No [URGENT]/[IMPORTANT] tags.
๎ No unnecessary attachments.
๎ No Cross Posting.
๎ Don't hijack threads.
๎ Don't post off-topic.
20. 20
IRC/Slack Etiquettes
๎ Join the relevant channels.
๎ Be an observer first.
๎ Refer to others using their irc/slack nick to get
attention.
โ But avoid misusing.
โข Especially no unnecessary @channel or @here.
๎ Don't expect immediate replies; wait.
๎ Discuss in the channel. Minimize direct messages
to mentors, unless they suggest otherwise.
21. 21
Find a mentoring organization..
๎ Have a look at the list of past GSoC.
๎ 201 in 2019!
๎ New Organizations.
๎ Google as the mentoring organization.
๎ Introduce GSoC to an organization (Sounds
Smart!).
22. 22
Find THE right project..
๎ Go through the organizations' project ideas list.
โ Check for the 2022 GSoC ideas from the potential
organizations.
โ Refer to the organizations lists from previous years
until the GSoC 2022 organizations are announced.
23. 23
Project Ideas List
๎ Project ideas by the organizations are
intentionally left generic enough.
โ Open for interpretation by the contributors.
โ Clarify with mentors
on assumptions and
chosen approach.
24. 24
Get to know more..
about the projects
๎ Talk to the mentor(s)
โ Assigned by the organization
โ for each project idea.
๎ Mailing lists and archives.
๎ Issue Tracker
โ Open issues or tickets
โข New features/enhancements (RFE)
โข Bugs (easy/difficult and normal/critical)
25. 25
What makes you
special?
๎ Experience
โ Being a great user doesn't mean that you can be a
good developer.
๎ Your interests and motivation
โ Pick something you really enjoy doing.
โ Being a great developer doesn't mean that you
can be a good contributor.
๎ Opportunities
โ What makes you the right person?
26. 26
Are you willing
to contribute further?
๎ Willingness
โ To contribute to the community
โ Beyond the time frame of GSoC.
๎ We want committers and long time
volunteers!
โ Not just contributors for the summer!
27. 27
Experience
๎ Language
โ Java, Python, Javascript, Go, C++, C, ..
โ Not much time to learn a new language (?)
๎ Prove It!
โ Patches.
โ Assist other new potential contributors!!!
โ Project expertise
โข Bug reports and fixes.
โข Go through the archives, wikis, and web sites.
28. 28
Opportunities..
๎ Project that matches your previous work
experience.
๎ Choose the right project.
๎ Timezone Difference
โ Use it effectively
๎ Multiple Applications
โ Up to 3!!! But only one accepted per contributor.
๎ Preferences!
29. 29
Shout!
๎ Communicate early โ but meaningfully.
โ Not necessary to send an email/message just to
say โhiโ.
๎ Communicate often.
๎ Ask questions.
๎ Most importantly,
Answer others' questions!
๎ Mentor is your friend!
(respect)
31. 31
Apply
๎ Register as a contributor for GSoC.
๎ Use the project's wiki for draft proposal
โ if applicable.
๎ Apply on Google's system.
โ Can edit later, until the last minute!
โ Get the mentors' opinions and improve.
๎ Check often for the mentors' comments
โ attend to them.
32. 32
Proposal
How to impress the mentors/developers?
๎ Stick to the organization's template.
๎ Abstract.
๎ Introduce yourself properly.
โ Focus on the relevant facts.
โ Why do you fit? Your skill sets.
โ List of the patches (if any) you have submitted.
33. 33
Propose..
๎ Project Goals
โ Proves you got them correct.
๎ Deliverables
โ Code, Documentation, test cases, ..
๎ Description
โ Benefits to the organization and other projects.
โ Can also be given along with the timeline.
34. 34
Propose..
๎ Timeline
โ Finer details.
โ Break up to periods of 3 - 4 days or a week.
โ Testing takes time.
โ Don't be over-optimistic.
โ Require 35 or 18 hours of work per week based on the
project type (large vs medium size projects).
๎ Links
โ References and additional details.
35. 35
Application Template
๎ Name:
๎ Email:
๎ Project Title:
๎ Synopsis:
โ A short description of your project.
๎ Benefits to the organization/project
โ and/or other project(s):
๎ Deliverables:
โ Quantifiable results.
36. 36
โข e.g.: โAt the end of my project, Niffler Metadata
Processing Pipeline will be 3 times faster.โ
๎ Project Details:
โ A more detailed description of your project:
๎ Project Schedule:
โ How long will the project take?
โ When can you begin work?
โ Do you know of any planned absences or other
major conflicts
โข summer classes, vacations, etc.
37. 37
๎ Bio:
โ Who are you?
โ What makes you the best person to work on this
project?
๎ Additional Requirements:
โ Patches / Specific requirements for the project.
๎ Further Related Information:
38. 38
After the submission..
๎ Don't go invisible!
โ Evaluation is still going on.. ;)
๎ You may be asked to provide
โ additional information.
โข Bug fixes / pull requests.
โข Demos and screenshots.
๎ You may even start coding on your project!
โ Especially if you didn't apply for multiple projects.
๎ Be motivated.
39. 39
Got Selected? yay/
๎ Don't Panic.
๎ You have one more month
โ just to mingle with the developers and the code
base.
๎ Mentors are there to help you!
๎ Keep touch with the developers.
๎ Users.
40. 40
Community Bonding Period
๎ Learn the project
โ Go through the code base
โ Documentation.
โข Coding styles and coding guide lines.
๎ Communicate often
๎ Understand the project idea more.
โ Come up with a design.
โ Start with simple hacks.
41. 41
Coding..
Easiest task of all.. ;)
๎ Commit often, if given committership.
โ Send frequent pull requests (daily ?) otherwise.
โ Meaningful Commit messages.
๎ Get feedback from the mentor(s).
๎ Keep the community/mentor updated
โ Daily (?).
๎ Plan for the mid and final evaluations early,
with the mentor.
42. 42
Conclude/Continue..
๎ Final Submission.
โ Make a static web page to summarize your GSoC work.
โ Submit the link at the GSoC site.
๎ Donโt miss any of the evaluations.
โ Both mentors and contributors must submit evaluations.
โ All 2 of the evaluations!
๎ Focus on becoming a committer in the organization
โ if not already given committership.
๎ Keep contributing.
43. 43
What else?
๎ More FOSS?
๎ Annual?
๎ Stipend?
๎ Student?
๎ Country/Location?
45. 45
Some links.. ;)
๎ GSoC home page
๎ Google Open Source Blog on GSoC
๎ Proposal [Pradeeban]
โ GSoC 2015 Emory BMI
โ GSoC 2014 Emory BMI
โ GSoC 2010 OMII-UK/OGSA-DAI
โ GSoC 2009 AbiWord
46. 46
Are you ready?
๎ Past successful proposals - Wikis, blogs, ..
๎ Ideas list 2022
โข Emory BMI
โข caMicroscope
๎ Apache Software Foundation
โ More slots and more choices.
โข Tomcat, Derby, Axis2, and more ..
๎ Join the projects' mailing lists and channels.
โ Emory BMI
โ Apache CXF, ...
47. 47
For more Information ..
๎ Join the GSoC mailing lists.
๎ Check the GSoC official site and blog.
๎ Join your local GSoC Google Group
โ For e.g., Group for Sri Lankan contributors:
http://groups.google.com/group/gsoc-srilanka
๎ Logos used in the presentation are owned by the respective open source organizations or the individuals, and used for the
particular non - commercial informative purpose only.