After successfully completing Outreachy Internship round 9(Dec’14 to Mar’15) I applied to GSOC’15 for two organizations, and was accepted by both of them. Finally decided to work with Systers because I liked that project, tech stack, work and most importantly their motive - “To encourage women in Computer Science and Technology”. This blog has my suggestions to students/people who want to get into any these programs(GSoC Outreachy, RGSoC, Day Light), want to learn a lot of interesting things, contribute to open source, have fun and also earn good stipend. :)
Read what is already there and Ask what is not
The rule of thumb is to look for what is there on the web and ask what is not. Google efficiently for such advice, there are plenty of posts that you can find on different blogs, Quora etc. Just query “How to get into GSoC” or “Tips to get into GSoC” and you will get enormous advice. They all provide loads of motivation, encouragement and suggestions, that will surely help you.
I am not a good programmer/coder can I try?
In simple words, Yes.
You are not expected to do hardcore programming on each and every day of your coding period of internship. Rather such programs allow you to learn new things, that could be new software or tools or programming methodologies or real world software development strategies. You will have your mentor(s) with you who will help you and guide you to become better coder/programmer/to solve unexpected issues and complete the project. They will help you in understanding different concepts and will allow you to grow at your own pace.
It’s total fun, believe me. :)
Choosing project/organization
It is a peculiarly interesting as well as one of the immensely important tasks.
Just go through the list of all orgs’ project ideas and find the one that is exciting for you. All that you need to do is - look at different project ideas, start a process in mind, understand a problem and think for their solutions. Isn’t it interesting?
Now why is it important? Because you need to find a project in which you have keen interest. Yes, it is immensely important! You should choose a project for which you have deep passion. Else after sometime that project will become a burden on you and you will no more enjoy working on it. So it is very important to find a project that looks interesting, exciting and amusing to you.
Don’t ask to ask, Just ask
Okay, it’s a good practice to search by your own first and gather higher level knowledge, but you should not hesitate if you are not able to find anything which can help you to move forward.
There is nothing like a stupid question. Don’t be timid or feel shy or scary in asking questions. “If you ask a question it makes you look stupid for 5 minutes – but if you don’t ask – you stay stupid for fifty years”, so always ask questions in your life.
Community matters a lot
“This is true for me”. In my first internship I got a super cool community where along with technical knowledge and guidance I got loads of emotional support as well as a fun-filled environment where we talk with each other on IRC and chill out with technical discussions.
While in few of the other communities, I have seen few interns struggling to get their patch reviewed and get suggestions for obstacles they are suffering with. Mentor is a single person or two or few more people, they do guide you well but its better to have a good community. I have always preferred to increase the width of source from where I am getting knowledge and talk to the members of community other than the mentor.
Keep remember ‘The More Eyes, The Better!’.
Writing Proposal
Writing proposal for summer of code programs and describing the solution for your proposed project in it is a great experience in itself. It deserves a separate post, I will write one soon and update the link here.
One Secret :)
The only thing that you need to know is if you think getting into any of such program is difficult, than it will become difficult for you, even if it is not. And actually it is not. Yes, no doubt it is challenging, it is a bit tough but not so difficult that you cannot make it. If you yourself believe that it is difficult and you will not able to make it, than you will even not able to put enough efforts to get into it.
While on the other hand if you believe that yes I know it is challenging, but I’m gonna have all the fun, than no matter what, you will put efforts beyond your own limitations and beyond your own expectations and you will get it.
So First thing, Forget the Fear of Failure!
Second, If you deadly want it, you will put huge efforts in it and will make it possible!
Good Luck!
Special Thanks to Tapasweni Pathak for suggesting modifications in this post.