Tips for GSoC
GSoC’15-Python Software Foundation
IRC: yask on irc.freenode.net
• Creator of InstantMusic.
• InstantMusic trended at #1 spot on HackerNews and received over 900 stars
• Google Summer Of Code'15 , Python Software Foundation.
• Season of KDE' 15
• Open source advocate, contributed to various organisations such as Mozilla,
KDE, Moin Moin Wiki Engine.
• Co-Founder of JEEQuery, a QnA web app that helps students prepare for IIT-
• Worked @Routofy, @Grofers, @Zomato. Will be interning @Flipkart this summer.
I often compare open source to science. To where
science took this whole notion of developing ideas in the
open and improving on other peoples' ideas and making
it into what science is today and the incredible advances
that we have had. And I compare that to witchcraft and
alchemy, where openness was something you didn't do.
What is Open Source ?
Open source software is software whose source code is available for modification or enhancement by anyone.
"Source code" is the part of software that most computer users don't ever see; it's the code computer programmers
can manipulate to change how a piece of software—a "program" or "application"—works.
But, what in the world is open-source? It’s a question most of us foster for quite a few of our initial months here.
If you haven’t heard of Open Source software …, wait that can’t be, you must have heard and probably used Software with
it’s roots in open source. Firefox, Android, Chrome, LibreOfﬁce, VLC all these giants are open source or derivative of wildly
popular open source software.
Free and Open source software is software, for which the source
code or “recipe” is freely available. This means that anyone can
download it, modify it and share it!
But fret not! The saga has just begun!
The world of open-source brings with it not only free, accessible, modiﬁable code, but a community of developers, a whole
host of coding styles, and people from around the globe who work together to improve software and code as a community.
And if you ﬁnd bug, report it in it’s issue tracker.
Just contribute for
Doesn’t matter which organisation
Where do I ﬁnd
https://github.com/explore http://sourceforge.net/p/forge/helpwanted/ http://teachingopensource.org/ https:/
This is not the last time I am going to say this.
#1 Seek/Find/Reach out
ﬁnd code (eyeball community)
Do your thing
poke around code (grep, code, etc) commit, push (to your version)
Send back your work
Well known projects have:
people working on them.
• Your proposal should show that you've done your research. For example,
this is my proposal for PSF: (Show the website)
• Here's another proposal by a friend: https://github.com/sympy/sympy/wiki/
• All of these have a clear cut proposal with links to
existing code and an understanding of what steps
should be taken.
• Idea of a "proposed timeline" or "schedule of
deliverables" section (PSF proposals have to use a
template, and this is one of the sections). This lets
you understand the project in depth, and also gives
you a chance to show off what you know about it. If
your org doesn't have a template for you to use, I
highly suggest you include such a section, and
spend time on it.
Communication is the
95% human problems are caused by ...
... and are solved by.
Developers love it when
you talk about the stuff
they have written
They are not annoyed by your questions.
Contribute as much as
To the particular organisation you are interested in, which
is going to take part in GSoC
How FOSS is different
(Stable/Working) > (your ego)
Expect to get Rejection
but playful, friendly, caring rejection.
Aspiring to Concensus-Based Perfection (rather than minimum viable
Learn to take "feedback"
Accepting criticism is actually a skill. YOU ARE NOT YOUR CODE.
Development is a continuum.