SlideShare a Scribd company logo
1 of 48
Download to read offline
Summer of Code
Summer of Code 2021
2021
Pradeeban
Pradeeban Kathiravelu, Ph.D.
Kathiravelu, Ph.D.
Dept of Biomedical Informatics,
Dept of Biomedical Informatics,
Emory University
Emory University
2
Contents
➢
Why GSoC?
➢
Before you begin..
➢
Right Project?
➢
Shout!
➢
Apply.
➢
Code.
➢
Conclude/Continue.
➢
What Else?
3
I CAN HAZ CHEEZBURGER?
18+
18+
Students only!
4
Why should I bother?

Code for your preferred
preferredopen
source project
projectfor 3 months.

And get paid!
5
Stipends
Stipends
➢
Stipends
Stipends based on the location of your
based on the location of your
university/college/post-secondary
university/college/post-secondary
academic program.
academic program.
➢
From 1500 – 3300 $ in total.
From 1500 – 3300 $ in total.
➢
Half of previous years
Half of previous years
➢
18 hrs/week.
18 hrs/week.
Background Image: http://blog.echoenduring.com/2010/11/23/learning-about-design-from-angry-birds/
6
Google Summer of Code (GSoC)

Code for an open source organization for 3 months.

Not accepted twice or more in previous GSoCs as
a student.

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!
7
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.
8
Success Rate..
is pretty high!

Passed the final evaluations
– Success rate – 88.87%
9
Why Google Summer of Code?
10
What do you need?
♥
11
Timeline (2021)

Jan 29th
– Feb 19th
: Organizations apply.

March 9th
: Accepted organizations announced.

March 29th
– April 13th
: Student application period.

May 3rd
: Slot requests due from organizations.

May 13th
: Student selections made by
organizations.
12
Timeline..
After getting accepted

May 17th
: Accepted Students announced.
– Community Bonding Period Begins.

June 7th
– Aug 16th
: Coding Period.

July 12th
– July 16th
: First Evaluation.

Aug 16th
– Aug 23rd
: Student Final submission.

Students submit the final code and documentation.

Aug 23rd
– Aug 30th
: Final Evaluation.

Aug 31st
: Final Results Announced.
13
Got some idea..
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
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

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
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
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
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
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.
21
Find a mentoring organization..

Have a look at the list of past GSoC.

201 Last year!

New Organizations.

40 – 50 expected for 2020.

Google as the mentoring organization.

Introduce GSoC to an organization (Sounds
Smart!).
22
Find THE right project..

Go through the organizations' projects list.
– Check for the 2021 GSoC ideas from the potential
organizations.
– Refer to the organizations lists of 2020 and 2019
until the GSoC 2021 organizations are announced.
23
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)
24
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?
25
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 students!
26
Experience

Language
– Java, Python, Javascript, Go, C++, C, ..
– Not much time to learn a new language (?)

Prove It!
– Patches.
– Assist other students!!!
– Project expertise
• Bug reports and fixes.
• Go through the archives, wikis, and web sites.
27
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 student.

Preferences!
28
Shout!

Communicate early – but meaningfully.

Not necessary to send an email just to say ‘hi’.

Communicate often.

Ask questions.

Most importantly,
Answer others' questions!

Mentor is your friend!
(respect)
29
Be Known..

Be heard!

Be visible!

Be responsive!

Be quick!
30
Apply

Register as a student 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.
31
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.
32
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.
33
Propose..

Timeline
– Finer details.
– Break up to periods of 3 - 4 days.
– Testing takes time.
– Don't be over-optimistic.
– Require 18 hours of work per week.

Links
– References and additional details.
34
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.
35
• 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.
36

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:
37
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.
38
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.
39
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.
40
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.
41
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 students need to submit evaluations.

All 3 of the evaluations!

Focus on becoming a committer in the organization
– if not already given committership.

Keep contributing.
42
What else?

More FOSS?

Annual?

Stipend?

Student?

Country/Location?
43
More Open Source
programs/contests..

OpenDaylight Internship

Season of KDE (SoK)

Outreachy

Rails Girls Summer of Code
44
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
45
Are you ready?

Have a look at the successful projects.
– Proposals available online - Wikis, blogs, ..
– Project ideas 2021
• Emory BMI
• caMicroscope

Apache Software Foundation
– More slots and more choices.
• Tomcat, Derby, Axis2, and more ..

Join the projects' mailing lists and channels.

For Example, Apache CXF
46
For more Information ..

Join the GSoC mailing lists.

Join your local GSoC Google Group
– For e.g., Group for Sri Lankan students:
http://groups.google.com/group/gsoc-srilanka

Drop me a line. :)
– kk.pradeeban@gmail.com | kkpradeeban.blogspot.com
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.
47
Questions?..
Questions?..
48
Wish you all the best..
Wish you all the best..

More Related Content

Similar to Google summer of code (GSoC) 2021

discussion_3_project.pdf
discussion_3_project.pdfdiscussion_3_project.pdf
discussion_3_project.pdfKuan-Tsae Huang
 
How to start your data career
How to start your data careerHow to start your data career
How to start your data careerAdwait Bhave
 
Career Hacks for Developers
Career Hacks for DevelopersCareer Hacks for Developers
Career Hacks for DevelopersBarElin
 
GDSC IIIT-Bh Orientation'21
GDSC IIIT-Bh Orientation'21GDSC IIIT-Bh Orientation'21
GDSC IIIT-Bh Orientation'21GDSCIIITBbsr
 
GDSC LPU Info Session 2023
GDSC LPU Info Session 2023GDSC LPU Info Session 2023
GDSC LPU Info Session 2023GDSCLPU
 
Dr. You or, How I Learned to Stop Worry and Love the PhD
Dr. You or, How I Learned to Stop Worry and Love the PhDDr. You or, How I Learned to Stop Worry and Love the PhD
Dr. You or, How I Learned to Stop Worry and Love the PhDOlga Botvinnik
 
Write code and find a job
Write code and find a jobWrite code and find a job
Write code and find a jobYung-Yu Chen
 
Gsoc2012 checklist
Gsoc2012 checklistGsoc2012 checklist
Gsoc2012 checklistDavid Bain
 
Google Summer of Code 2017: Experience at Discourse
Google Summer of Code 2017: Experience at DiscourseGoogle Summer of Code 2017: Experience at Discourse
Google Summer of Code 2017: Experience at DiscourseJakub Macina
 
Edu614 session 1 ws13 spring
Edu614 session 1 ws13 springEdu614 session 1 ws13 spring
Edu614 session 1 ws13 springKathy Favazza
 
Edu614 session 1 ws13 spring
Edu614 session 1 ws13 springEdu614 session 1 ws13 spring
Edu614 session 1 ws13 springKathy Favazza
 
Common Core Technology for ELA
Common Core Technology for ELACommon Core Technology for ELA
Common Core Technology for ELAcpsedtech
 
The Generative AI System Shock, and some thoughts on Collective Intelligence ...
The Generative AI System Shock, and some thoughts on Collective Intelligence ...The Generative AI System Shock, and some thoughts on Collective Intelligence ...
The Generative AI System Shock, and some thoughts on Collective Intelligence ...Simon Buckingham Shum
 
Edu614 session 1 sf13 summer
Edu614 session 1 sf13 summerEdu614 session 1 sf13 summer
Edu614 session 1 sf13 summerKathy Favazza
 
Edu614 session 1 sf13 summer
Edu614 session 1 sf13 summerEdu614 session 1 sf13 summer
Edu614 session 1 sf13 summerKathy Favazza
 

Similar to Google summer of code (GSoC) 2021 (20)

Google summer of code
Google summer of codeGoogle summer of code
Google summer of code
 
Google summer of code 2012
Google summer of code 2012Google summer of code 2012
Google summer of code 2012
 
Google summer of code
Google summer of codeGoogle summer of code
Google summer of code
 
discussion_3_project.pdf
discussion_3_project.pdfdiscussion_3_project.pdf
discussion_3_project.pdf
 
Embracing AI In Assessment
Embracing AI In AssessmentEmbracing AI In Assessment
Embracing AI In Assessment
 
How to start your data career
How to start your data careerHow to start your data career
How to start your data career
 
Career Hacks for Developers
Career Hacks for DevelopersCareer Hacks for Developers
Career Hacks for Developers
 
GDSC IIIT-Bh Orientation'21
GDSC IIIT-Bh Orientation'21GDSC IIIT-Bh Orientation'21
GDSC IIIT-Bh Orientation'21
 
GDSC LPU Info Session 2023
GDSC LPU Info Session 2023GDSC LPU Info Session 2023
GDSC LPU Info Session 2023
 
Dr. You or, How I Learned to Stop Worry and Love the PhD
Dr. You or, How I Learned to Stop Worry and Love the PhDDr. You or, How I Learned to Stop Worry and Love the PhD
Dr. You or, How I Learned to Stop Worry and Love the PhD
 
Write code and find a job
Write code and find a jobWrite code and find a job
Write code and find a job
 
Gsoc2012 checklist
Gsoc2012 checklistGsoc2012 checklist
Gsoc2012 checklist
 
Google Summer of Code 2017: Experience at Discourse
Google Summer of Code 2017: Experience at DiscourseGoogle Summer of Code 2017: Experience at Discourse
Google Summer of Code 2017: Experience at Discourse
 
Edu614 session 1 ws13 spring
Edu614 session 1 ws13 springEdu614 session 1 ws13 spring
Edu614 session 1 ws13 spring
 
Edu614 session 1 ws13 spring
Edu614 session 1 ws13 springEdu614 session 1 ws13 spring
Edu614 session 1 ws13 spring
 
Common Core Technology for ELA
Common Core Technology for ELACommon Core Technology for ELA
Common Core Technology for ELA
 
The Generative AI System Shock, and some thoughts on Collective Intelligence ...
The Generative AI System Shock, and some thoughts on Collective Intelligence ...The Generative AI System Shock, and some thoughts on Collective Intelligence ...
The Generative AI System Shock, and some thoughts on Collective Intelligence ...
 
Managing and Maximizing Your Scholarly Impact
Managing and Maximizing Your Scholarly ImpactManaging and Maximizing Your Scholarly Impact
Managing and Maximizing Your Scholarly Impact
 
Edu614 session 1 sf13 summer
Edu614 session 1 sf13 summerEdu614 session 1 sf13 summer
Edu614 session 1 sf13 summer
 
Edu614 session 1 sf13 summer
Edu614 session 1 sf13 summerEdu614 session 1 sf13 summer
Edu614 session 1 sf13 summer
 

More from Pradeeban Kathiravelu, Ph.D.

Niffler: A DICOM Framework for Machine Learning and Processing Pipelines.
Niffler: A DICOM Framework for Machine Learning and Processing Pipelines.Niffler: A DICOM Framework for Machine Learning and Processing Pipelines.
Niffler: A DICOM Framework for Machine Learning and Processing Pipelines.Pradeeban Kathiravelu, Ph.D.
 
A DICOM Framework for Machine Learning Pipelines against Real-Time Radiology ...
A DICOM Framework for Machine Learning Pipelines against Real-Time Radiology ...A DICOM Framework for Machine Learning Pipelines against Real-Time Radiology ...
A DICOM Framework for Machine Learning Pipelines against Real-Time Radiology ...Pradeeban Kathiravelu, Ph.D.
 
Data Services with Bindaas: RESTful Interfaces for Diverse Data Sources
Data Services with Bindaas: RESTful Interfaces for Diverse Data SourcesData Services with Bindaas: RESTful Interfaces for Diverse Data Sources
Data Services with Bindaas: RESTful Interfaces for Diverse Data SourcesPradeeban Kathiravelu, Ph.D.
 
The UCLouvain Public Defense of my EMJD-DC Double Doctorate Ph.D. degree
The UCLouvain Public Defense of my EMJD-DC Double Doctorate Ph.D. degreeThe UCLouvain Public Defense of my EMJD-DC Double Doctorate Ph.D. degree
The UCLouvain Public Defense of my EMJD-DC Double Doctorate Ph.D. degreePradeeban Kathiravelu, Ph.D.
 
My Ph.D. Defense - Software-Defined Systems for Network-Aware Service Compos...
 My Ph.D. Defense - Software-Defined Systems for Network-Aware Service Compos... My Ph.D. Defense - Software-Defined Systems for Network-Aware Service Compos...
My Ph.D. Defense - Software-Defined Systems for Network-Aware Service Compos...Pradeeban Kathiravelu, Ph.D.
 
My Ph.D. Defense - Software-Defined Systems for Network-Aware Service Composi...
My Ph.D. Defense - Software-Defined Systems for Network-Aware Service Composi...My Ph.D. Defense - Software-Defined Systems for Network-Aware Service Composi...
My Ph.D. Defense - Software-Defined Systems for Network-Aware Service Composi...Pradeeban Kathiravelu, Ph.D.
 
Software-Defined Systems for Network-Aware Service Composition and Workflow P...
Software-Defined Systems for Network-Aware Service Composition and Workflow P...Software-Defined Systems for Network-Aware Service Composition and Workflow P...
Software-Defined Systems for Network-Aware Service Composition and Workflow P...Pradeeban Kathiravelu, Ph.D.
 
Moving bits with a fleet of shared virtual routers
Moving bits with a fleet of shared virtual routersMoving bits with a fleet of shared virtual routers
Moving bits with a fleet of shared virtual routersPradeeban Kathiravelu, Ph.D.
 
Software-Defined Data Services: Interoperable and Network-Aware Big Data Exec...
Software-Defined Data Services: Interoperable and Network-Aware Big Data Exec...Software-Defined Data Services: Interoperable and Network-Aware Big Data Exec...
Software-Defined Data Services: Interoperable and Network-Aware Big Data Exec...Pradeeban Kathiravelu, Ph.D.
 
On-Demand Service-Based Big Data Integration: Optimized for Research Collabor...
On-Demand Service-Based Big Data Integration: Optimized for Research Collabor...On-Demand Service-Based Big Data Integration: Optimized for Research Collabor...
On-Demand Service-Based Big Data Integration: Optimized for Research Collabor...Pradeeban Kathiravelu, Ph.D.
 
Scalability and Resilience of Multi-Tenant Distributed Clouds in the Big Serv...
Scalability and Resilience of Multi-Tenant Distributed Clouds in the Big Serv...Scalability and Resilience of Multi-Tenant Distributed Clouds in the Big Serv...
Scalability and Resilience of Multi-Tenant Distributed Clouds in the Big Serv...Pradeeban Kathiravelu, Ph.D.
 
Software-Defined Inter-Cloud Composition of Big Services
Software-Defined Inter-Cloud Composition of Big ServicesSoftware-Defined Inter-Cloud Composition of Big Services
Software-Defined Inter-Cloud Composition of Big ServicesPradeeban Kathiravelu, Ph.D.
 
Scalability and Resilience of Multi-Tenant Distributed Clouds in the Big Serv...
Scalability and Resilience of Multi-Tenant Distributed Clouds in the Big Serv...Scalability and Resilience of Multi-Tenant Distributed Clouds in the Big Serv...
Scalability and Resilience of Multi-Tenant Distributed Clouds in the Big Serv...Pradeeban Kathiravelu, Ph.D.
 
SD-CPS: Taming the Challenges of Cyber-Physical Systems with a Software-Defin...
SD-CPS: Taming the Challenges of Cyber-Physical Systems with a Software-Defin...SD-CPS: Taming the Challenges of Cyber-Physical Systems with a Software-Defin...
SD-CPS: Taming the Challenges of Cyber-Physical Systems with a Software-Defin...Pradeeban Kathiravelu, Ph.D.
 
ViTeNA: An SDN-Based Virtual Network Embedding Algorithm for Multi-Tenant Dat...
ViTeNA: An SDN-Based Virtual Network Embedding Algorithm for Multi-Tenant Dat...ViTeNA: An SDN-Based Virtual Network Embedding Algorithm for Multi-Tenant Dat...
ViTeNA: An SDN-Based Virtual Network Embedding Algorithm for Multi-Tenant Dat...Pradeeban Kathiravelu, Ph.D.
 
Software-Defined Simulations for Continuous Development of Cloud and Data Cen...
Software-Defined Simulations for Continuous Development of Cloud and Data Cen...Software-Defined Simulations for Continuous Development of Cloud and Data Cen...
Software-Defined Simulations for Continuous Development of Cloud and Data Cen...Pradeeban Kathiravelu, Ph.D.
 
Selective Redundancy in Network-as-a-Service: Differentiated QoS in Multi-Ten...
Selective Redundancy in Network-as-a-Service: Differentiated QoS in Multi-Ten...Selective Redundancy in Network-as-a-Service: Differentiated QoS in Multi-Ten...
Selective Redundancy in Network-as-a-Service: Differentiated QoS in Multi-Ten...Pradeeban Kathiravelu, Ph.D.
 
Building Blocks of Mayan: Componentizing the eScience Workflows Through Softw...
Building Blocks of Mayan: Componentizing the eScience Workflows Through Softw...Building Blocks of Mayan: Componentizing the eScience Workflows Through Softw...
Building Blocks of Mayan: Componentizing the eScience Workflows Through Softw...Pradeeban Kathiravelu, Ph.D.
 

More from Pradeeban Kathiravelu, Ph.D. (20)

Niffler: A DICOM Framework for Machine Learning and Processing Pipelines.
Niffler: A DICOM Framework for Machine Learning and Processing Pipelines.Niffler: A DICOM Framework for Machine Learning and Processing Pipelines.
Niffler: A DICOM Framework for Machine Learning and Processing Pipelines.
 
A DICOM Framework for Machine Learning Pipelines against Real-Time Radiology ...
A DICOM Framework for Machine Learning Pipelines against Real-Time Radiology ...A DICOM Framework for Machine Learning Pipelines against Real-Time Radiology ...
A DICOM Framework for Machine Learning Pipelines against Real-Time Radiology ...
 
Data Services with Bindaas: RESTful Interfaces for Diverse Data Sources
Data Services with Bindaas: RESTful Interfaces for Diverse Data SourcesData Services with Bindaas: RESTful Interfaces for Diverse Data Sources
Data Services with Bindaas: RESTful Interfaces for Diverse Data Sources
 
The UCLouvain Public Defense of my EMJD-DC Double Doctorate Ph.D. degree
The UCLouvain Public Defense of my EMJD-DC Double Doctorate Ph.D. degreeThe UCLouvain Public Defense of my EMJD-DC Double Doctorate Ph.D. degree
The UCLouvain Public Defense of my EMJD-DC Double Doctorate Ph.D. degree
 
My Ph.D. Defense - Software-Defined Systems for Network-Aware Service Compos...
 My Ph.D. Defense - Software-Defined Systems for Network-Aware Service Compos... My Ph.D. Defense - Software-Defined Systems for Network-Aware Service Compos...
My Ph.D. Defense - Software-Defined Systems for Network-Aware Service Compos...
 
My Ph.D. Defense - Software-Defined Systems for Network-Aware Service Composi...
My Ph.D. Defense - Software-Defined Systems for Network-Aware Service Composi...My Ph.D. Defense - Software-Defined Systems for Network-Aware Service Composi...
My Ph.D. Defense - Software-Defined Systems for Network-Aware Service Composi...
 
UCL Ph.D. Confirmation 2018
UCL Ph.D. Confirmation 2018UCL Ph.D. Confirmation 2018
UCL Ph.D. Confirmation 2018
 
Software-Defined Systems for Network-Aware Service Composition and Workflow P...
Software-Defined Systems for Network-Aware Service Composition and Workflow P...Software-Defined Systems for Network-Aware Service Composition and Workflow P...
Software-Defined Systems for Network-Aware Service Composition and Workflow P...
 
Moving bits with a fleet of shared virtual routers
Moving bits with a fleet of shared virtual routersMoving bits with a fleet of shared virtual routers
Moving bits with a fleet of shared virtual routers
 
Software-Defined Data Services: Interoperable and Network-Aware Big Data Exec...
Software-Defined Data Services: Interoperable and Network-Aware Big Data Exec...Software-Defined Data Services: Interoperable and Network-Aware Big Data Exec...
Software-Defined Data Services: Interoperable and Network-Aware Big Data Exec...
 
On-Demand Service-Based Big Data Integration: Optimized for Research Collabor...
On-Demand Service-Based Big Data Integration: Optimized for Research Collabor...On-Demand Service-Based Big Data Integration: Optimized for Research Collabor...
On-Demand Service-Based Big Data Integration: Optimized for Research Collabor...
 
Scalability and Resilience of Multi-Tenant Distributed Clouds in the Big Serv...
Scalability and Resilience of Multi-Tenant Distributed Clouds in the Big Serv...Scalability and Resilience of Multi-Tenant Distributed Clouds in the Big Serv...
Scalability and Resilience of Multi-Tenant Distributed Clouds in the Big Serv...
 
Software-Defined Inter-Cloud Composition of Big Services
Software-Defined Inter-Cloud Composition of Big ServicesSoftware-Defined Inter-Cloud Composition of Big Services
Software-Defined Inter-Cloud Composition of Big Services
 
Scalability and Resilience of Multi-Tenant Distributed Clouds in the Big Serv...
Scalability and Resilience of Multi-Tenant Distributed Clouds in the Big Serv...Scalability and Resilience of Multi-Tenant Distributed Clouds in the Big Serv...
Scalability and Resilience of Multi-Tenant Distributed Clouds in the Big Serv...
 
Componentizing Big Services in the Internet
Componentizing Big Services in the InternetComponentizing Big Services in the Internet
Componentizing Big Services in the Internet
 
SD-CPS: Taming the Challenges of Cyber-Physical Systems with a Software-Defin...
SD-CPS: Taming the Challenges of Cyber-Physical Systems with a Software-Defin...SD-CPS: Taming the Challenges of Cyber-Physical Systems with a Software-Defin...
SD-CPS: Taming the Challenges of Cyber-Physical Systems with a Software-Defin...
 
ViTeNA: An SDN-Based Virtual Network Embedding Algorithm for Multi-Tenant Dat...
ViTeNA: An SDN-Based Virtual Network Embedding Algorithm for Multi-Tenant Dat...ViTeNA: An SDN-Based Virtual Network Embedding Algorithm for Multi-Tenant Dat...
ViTeNA: An SDN-Based Virtual Network Embedding Algorithm for Multi-Tenant Dat...
 
Software-Defined Simulations for Continuous Development of Cloud and Data Cen...
Software-Defined Simulations for Continuous Development of Cloud and Data Cen...Software-Defined Simulations for Continuous Development of Cloud and Data Cen...
Software-Defined Simulations for Continuous Development of Cloud and Data Cen...
 
Selective Redundancy in Network-as-a-Service: Differentiated QoS in Multi-Ten...
Selective Redundancy in Network-as-a-Service: Differentiated QoS in Multi-Ten...Selective Redundancy in Network-as-a-Service: Differentiated QoS in Multi-Ten...
Selective Redundancy in Network-as-a-Service: Differentiated QoS in Multi-Ten...
 
Building Blocks of Mayan: Componentizing the eScience Workflows Through Softw...
Building Blocks of Mayan: Componentizing the eScience Workflows Through Softw...Building Blocks of Mayan: Componentizing the eScience Workflows Through Softw...
Building Blocks of Mayan: Componentizing the eScience Workflows Through Softw...
 

Recently uploaded

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Recently uploaded (20)

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Google summer of code (GSoC) 2021

  • 1. Summer of Code Summer of Code 2021 2021 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 I CAN HAZ CHEEZBURGER? 18+ 18+ Students only!
  • 4. 4 Why should I bother?  Code for your preferred preferredopen source project projectfor 3 months.  And get paid!
  • 5. 5 Stipends Stipends ➢ Stipends Stipends based on the location of your based on the location of your university/college/post-secondary university/college/post-secondary academic program. academic program. ➢ From 1500 – 3300 $ in total. From 1500 – 3300 $ in total. ➢ Half of previous years Half of previous years ➢ 18 hrs/week. 18 hrs/week. Background Image: http://blog.echoenduring.com/2010/11/23/learning-about-design-from-angry-birds/
  • 6. 6 Google Summer of Code (GSoC)  Code for an open source organization for 3 months.  Not accepted twice or more in previous GSoCs as a student.  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!
  • 7. 7 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.
  • 8. 8 Success Rate.. is pretty high!  Passed the final evaluations – Success rate – 88.87%
  • 10. 10 What do you need? ♥
  • 11. 11 Timeline (2021)  Jan 29th – Feb 19th : Organizations apply.  March 9th : Accepted organizations announced.  March 29th – April 13th : Student application period.  May 3rd : Slot requests due from organizations.  May 13th : Student selections made by organizations.
  • 12. 12 Timeline.. After getting accepted  May 17th : Accepted Students announced. – Community Bonding Period Begins.  June 7th – Aug 16th : Coding Period.  July 12th – July 16th : First Evaluation.  Aug 16th – Aug 23rd : Student Final submission.  Students submit the final code and documentation.  Aug 23rd – Aug 30th : Final Evaluation.  Aug 31st : Final Results Announced.
  • 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.
  • 21. 21 Find a mentoring organization..  Have a look at the list of past GSoC.  201 Last year!  New Organizations.  40 – 50 expected for 2020.  Google as the mentoring organization.  Introduce GSoC to an organization (Sounds Smart!).
  • 22. 22 Find THE right project..  Go through the organizations' projects list. – Check for the 2021 GSoC ideas from the potential organizations. – Refer to the organizations lists of 2020 and 2019 until the GSoC 2021 organizations are announced.
  • 23. 23 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)
  • 24. 24 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?
  • 25. 25 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 students!
  • 26. 26 Experience  Language – Java, Python, Javascript, Go, C++, C, .. – Not much time to learn a new language (?)  Prove It! – Patches. – Assist other students!!! – Project expertise • Bug reports and fixes. • Go through the archives, wikis, and web sites.
  • 27. 27 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 student.  Preferences!
  • 28. 28 Shout!  Communicate early – but meaningfully.  Not necessary to send an email just to say ‘hi’.  Communicate often.  Ask questions.  Most importantly, Answer others' questions!  Mentor is your friend! (respect)
  • 29. 29 Be Known..  Be heard!  Be visible!  Be responsive!  Be quick!
  • 30. 30 Apply  Register as a student 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.
  • 31. 31 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.
  • 32. 32 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.
  • 33. 33 Propose..  Timeline – Finer details. – Break up to periods of 3 - 4 days. – Testing takes time. – Don't be over-optimistic. – Require 18 hours of work per week.  Links – References and additional details.
  • 34. 34 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.
  • 35. 35 • 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.
  • 36. 36  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:
  • 37. 37 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.
  • 38. 38 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.
  • 39. 39 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.
  • 40. 40 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.
  • 41. 41 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 students need to submit evaluations.  All 3 of the evaluations!  Focus on becoming a committer in the organization – if not already given committership.  Keep contributing.
  • 43. 43 More Open Source programs/contests..  OpenDaylight Internship  Season of KDE (SoK)  Outreachy  Rails Girls Summer of Code
  • 44. 44 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
  • 45. 45 Are you ready?  Have a look at the successful projects. – Proposals available online - Wikis, blogs, .. – Project ideas 2021 • Emory BMI • caMicroscope  Apache Software Foundation – More slots and more choices. • Tomcat, Derby, Axis2, and more ..  Join the projects' mailing lists and channels.  For Example, Apache CXF
  • 46. 46 For more Information ..  Join the GSoC mailing lists.  Join your local GSoC Google Group – For e.g., Group for Sri Lankan students: http://groups.google.com/group/gsoc-srilanka  Drop me a line. :) – kk.pradeeban@gmail.com | kkpradeeban.blogspot.com 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.
  • 48. 48 Wish you all the best.. Wish you all the best..