Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
GS0C - "How to Start" Guide
1. GSoC - “How to Start”
Guide
By : Chamila Wijayarathna
2. About Me :
From CSE ‘10 Batch.
Software Engineer at WSO2
GSoC Participant in 2013, 2014 and 2015
2013 - JRuby
2014 - Apache Software Foundation (Apache Thrift)
2015 - Ruby
4. Introduction
Hardest part of GSoC is getting your proposal Accepted.
Selecting Organization and Project is important.
Select organization and project so you can create a proposal without having to
learn lot of new things.
Before starting proposal, you’ll have to at least learn
How to use the product you are contributing
How to contribute to the product
What’s expected from the project
5. Selecting an Organization
● 137 organizations have been selected this year.
● List of Organizations - https://summerofcode.withgoogle.com/organizations
● Select an organization in a way, you have to learn minimum new things before
creating proposal.
● Consider following :
○ Is there any organizations in the list you have already contributed to?
○ Is there organizations you haven't contributed to, but you have used their
products/softwares?
6.
7. If there are organizations you have already contributed to, give priority to them.
Because
You may already know how to use that product
You may know which code segment affects which functionality
8. If there are no products you have contributed to, then try to select products which
you have already used.
Because you may at least know how it is working.
Eg : Drupal, Eclipse, Fedora, git, GitHub, GNU, Joomla, JQuery, Libreoffice,
Moodle, Mozilla, python
9. If you don’t have organizations yet, select organizations which uses technologies
you are familiar with.
10. If you have selected more than one organization, consider following when selecting
the organization to work.
Which organization requires technologies that you are strongest
Which organization has more accepted projects last year
Give preference to organizations in the bottom of the accepted organizations
page than organizations in the top.
12. From ideas page select a project you understand the most (You don’t need to
understand everything, you can learn if there are any gaps).
Give preference to projects in the bottom of the page than projects in the top.
Don’t try for project if someone has already shown their interest on it, always try
to avoid competition
Competition is high for easy projects.
13. How to Communicate
Subscribe to developer mailing list of product you are going to work with
Inform organization that you are willing to work on specific project
Use IRC, twitter, gtalk, etc. and talk with possible mentors about the project.
14. How to Start With Project
Get product source and build it.
If necessary learn required technologies such as git, maven, etc.
If there is anything unclear, ask questions at mailing lists and IRC, don’t let them
to forget you, always let them know that you are working.
If you found anything not working or broken, report them. If possible fix them
also.
Discuss with possible mentors and get a clear idea about what is expected to done
in the project.
15. Writing Proposal
Some organizations give template for proposal. If it is given you have to follow it.
If no template given, include following details in the proposal.
Personal Details (Contact details, blog, git account)
Education and previous related work
Introduction / background
Planned approach (optional)
Estimated Schedule
Deliverables
17. For more details, http://cdwijayarathna.blogspot.com/2016/02/how-to-get-
proposal-ready-for-gsoc.html
If you have any questions, contact me,
○ Email -: cdwijayarathna@gmail.com
○ Twitter -: @cdwijayarathna