42
Summer of Code Summer of Code 2012 2012 Kathiravelu Pradeeban Kathiravelu Pradeeban AbiWord AbiWord

Google summer of code 2012

Embed Size (px)

DESCRIPTION

Google Summer of Code Introductory Presentation Slides created by Kathiravelu Pradeeban. Pradeeban is currently a mentor for AbiWord. He was also a student mentored by AbiWord and OMII-UK, in 2009 and 2010, respectively..

Citation preview

Page 1: Google summer of code 2012

Summer of Code Summer of Code 20122012

Kathiravelu PradeebanKathiravelu Pradeeban

AbiWordAbiWord

Page 2: Google summer of code 2012

2

Contents

Why GSoC? Before you begin.. Organization? Right Project? Shout! Apply. Code. Conclude/Continue. What Else?

Page 3: Google summer of code 2012

3

Google Summer of Code (GSoC)

Code for a chosen open source project for 3 months.

Google pays you!– 3 milestones.

• Getting Accepted.

• Mid-Evaluations.

• Final Evaluations.– A certificate.– An awesome tshirt and gifts!– {500, 2250, 2250} USD.

Page 4: Google summer of code 2012

4

Some statistics of 2011

175 Organizations– 2096 mentors and co-mentors.

Submitted– 3,731 students, from 97 countries.

– 5,651 proposals. Accepted

– 1115 students/projects• 68 countries.

• 595 universities.

Page 5: Google summer of code 2012

5

Success Rate..is pretty high!

Passed Midterm-Evaluations– Success rate upto mid - 90%+.

Passed Final Evaluations. Success rate – 88%

Google Open Source Blog on GSoCGoogle Open Source Blog on GSoC GSoC Student GuideGSoC Student Guide

Page 6: Google summer of code 2012

6

Why Google Summer of Code?

Page 7: Google summer of code 2012

7

What do you need?

Page 8: Google summer of code 2012

8

Time Line (2011)

January 24th : Program Announced. February 28th – March11th :

Organizations apply. March 18th : List of Accepted

Organizations. March 18th - 27th : Students

discussing project ideas. March 28th – April 8th : Students

application period.

Page 9: Google summer of code 2012

9

Time Line After getting accepted..

April 25th : Accepted Students announced.

: Community Bonding Period Begins. May 23rd : Coding Begins. July 11th – July 15th : Mid Evaluations. Aug 15th – Suggested Pencils Down.

Tests, Documentation improvements, etc.

Page 10: Google summer of code 2012

10

Time Line Concluding

Aug 22nd – Firm Pencils Down. Stop Work!

Aug 26th – Final Evaluation Deadline. Aug 29th – Final Results. Aug 30th – Begin Code Submission

to Google.

Page 11: Google summer of code 2012

11

Before you begin..

Google Summer of Code is all about being Open Source.

Get your basics right. Netiquettes. Sign up to the lists. Join the relevant channel.

Page 12: Google summer of code 2012

12

Technologies ..

Version Control Systems - SVN, CVS, GIT, Mercurial, ..

Build Tools - Ant, Maven, ..

IDE - IntelliJ IDEA, Eclipse, .. Microsoft Visual Studio, Anjuta, ..

Page 13: Google summer of code 2012

13

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

Page 14: Google summer of code 2012

14

Mailing lists

Post only to the relevant list– User, Dev, ..

Check the mail archives first. Avoid HTML mails. No [URGENT]/[IMPORTANT] tags. No unnecessary attachments. No Cross Posting. Don't hijack threads.

Page 15: Google summer of code 2012

15

IRC Etiquettes

Be an observer first. Refer to others using their irc nick. Don't expect immediate replies; wait. Don't post bulk of text into irc.

Post error logs to http://pastebin.com/http://pastebin.com/ or http://paste.ubuntu.com/http://paste.ubuntu.com/ and share the url instead.

Page 16: Google summer of code 2012

16

Find a mentoring organization..

Have a look at the listlist of GSoC2011. 175 Last year! New Organizations. Google as the mentoring

organization. Introduce GSoC to an organization

(Sounds Smart!).

Page 17: Google summer of code 2012

17

Find THE right project..

Go through the projects list. Some organizations publish pretty

soon. Have a look at the 2011's.

Dev mailing lists. Talk to the mentors.

IRC, mail, ... New features/enhancements

Bug/Issue tracker – JIRA, Bugzilla, ...

Page 18: Google summer of code 2012

18

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?

Page 19: Google summer of code 2012

19

Experience

Language– Java/C++/C/ ..

– Not much time to learn a new language (?) Prove It!

– Patches.

– Assist other students!!!

– Project expertise• Bug reports and fixes.• Check the list archives and the project

wikis and web sites.

Page 20: Google summer of code 2012

20

Opportunities..

Project that matches your previous work.

Choose the right project. Timezone Difference

– Use it effectively

– For Sri Lanka,GMT + 0530. Multiple Applications (20!) Preferences!

Page 21: Google summer of code 2012

21

Shout!

Communicate early. Communicate often. Ask questions. Most importantly, Answer others'

questions!

Mentor is your friend

(respect)

Page 22: Google summer of code 2012

22

Be Known..

NO Sir, Madam, aiya, akki, machan .. First Name or Preferred calling name. No Mr. Dr. either.

Be heard! Be visible! Be responsive! Be quick!

Page 23: Google summer of code 2012

23

Apply

Register as a student for GSoC. Use the project's wiki or site for draft

proposal, if applicable. Get mentor's opinion and improve. Apply on Google's melangemelange.

– Can edit later, till the last minute!

Check often for the comments– from the mentors / co-mentors

– attend to them.

Page 24: Google summer of code 2012

24

Propose .. ♡

How to impress the mentor/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.

Page 25: Google summer of code 2012

25

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 time line.

Page 26: Google summer of code 2012

26

Propose ..

Time line– Finer details.

– Break upto periods of 3 - 4 days.

– Testing takes time.

– Don't be over-optimistic.

– Some organizations require considerable work hrs/week (40 ?).

Links– References and additional details.

Page 27: Google summer of code 2012

27

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.

Page 28: Google summer of code 2012

28

e.g: “At the end of my project, AbiWord’s piece table will be 50 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.

Page 29: Google summer of code 2012

29

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:

Page 30: Google summer of code 2012

30

After the submission..

Don't go invisible!– Evaluation is still going on.. ;)

You may be asked to provide– additional information.

• Patches.

• Screenshots.

Start coding on your project.– only if you didn't apply for multiple projects.

Be motivated.

Page 31: Google summer of code 2012

31

Got Selected? \yay/

Don't Panic. You have one more month

– just to mingle with the developers and the code base.

Mentor(s) are there to help you! Keep touch with the developers. Users.

Page 32: Google summer of code 2012

32

Community Bonding Period

Go through the code base and documentation.

Coding styles and coding guide lines. Start with simple hacks. Understand the project idea more. Come up with a design. Communicate often

irc/lists/forums/wiki

Page 33: Google summer of code 2012

33

Coding.. Easiest task of all.. ;)

Commit often, if given committership. Send daily patches otherwise. Meaningful Commit messages.

Keep others updated (Daily ?). IRC, dev lists, personal mails, wiki,

conference calls, skype, blog posts Get feedback from the mentor(s). Plan for the mid and final evaluations

early, with the mentor.

Page 34: Google summer of code 2012

34

Conclude/Continue..

Pencils Down Date Firm Pencils Down Date

– GSoC Coding ends here. Get a tarball of all the diff files to

submit to Google. Focus on becoming a committer

– if not already given committership. Keep contributing (if possible).

Page 35: Google summer of code 2012

35

What else?

More FOSS?More FOSS? Annual? Stipend? Student? Country/Location?

Page 36: Google summer of code 2012

36

More Open Source programs/contests..

OpenOffice.org Internship OpenOffice.org Internship

Ubiquiti RouterStation UI/FirmwareUbiquiti RouterStation UI/Firmware

Wesnoth Summer Art ScholarshipWesnoth Summer Art Scholarship

Umit Summer of Code (USoC)Umit Summer of Code (USoC)

Season of KDE (SoK)Season of KDE (SoK)

The OpenMRS Internship Program (OIP) The OpenMRS Internship Program (OIP)

Joomla! Student Outreach ProgramJoomla! Student Outreach Program

Ruby Summer of CodeRuby Summer of Code

Fedora Summer CodingFedora Summer Codinghttp://fedoraproject.org/wiki/Summer_Coding_2010http://fedoraproject.org/wiki/Summer_Coding_2010

https://fedoraproject.org/wiki/Summer_coding_ideas_for_2011https://fedoraproject.org/wiki/Summer_coding_ideas_for_2011

Page 37: Google summer of code 2012

37

Project Lists for 2011..

AbiWordAbiWord PhpMyAdminPhpMyAdmin KubuntuKubuntu DocBook WikiDocBook Wiki [Refer to the projects list of 2011 of

the organizations till the GSoC 2012 is announced.]

Page 38: Google summer of code 2012

38

Some links.. ;)

GSoC-2011 FAQGSoC-2011 FAQ GSoC-2011 Accepted OrganizationsGSoC-2011 Accepted Organizations GSoC Student GuideGSoC Student Guide Proposal [Pradeeban] - Proposal [Pradeeban] -

GSoC 2009 AbiWordGSoC 2009 AbiWord Proposal [Pradeeban] - Proposal [Pradeeban] -

GSoC 2010 OMII-UK/OGSA-DAIGSoC 2010 OMII-UK/OGSA-DAI Proposal [Konstantin] - Proposal [Konstantin] -

GSoC 2006 DrupalGSoC 2006 Drupal

Page 39: Google summer of code 2012

39

Are you ready?

Have a look at the past projects.

Proposals available online.

– Wikis, blogs, ..

Apache Software FoundationApache Software Foundation

– Tomcat, Derby, Axis2, and more ..

– More slots and more choices.

Find the projects' mailing lists and IRC.Find the projects' mailing lists and IRC.

– AbiWordAbiWord

[email protected]@abisource.com

[email protected]@abisource.com

• #abiword at irc.gnome.org#abiword at irc.gnome.org

Page 40: Google summer of code 2012

40

For more Information ..

Join Local GSoC Google Groups Join Local GSoC Google Groups – Group for Sri Lankan students:Group for Sri Lankan students:

http://groups.google.com/group/gsoc-srilankahttp://groups.google.com/group/gsoc-srilanka

Local GSoC IRC channelLocal GSoC IRC channel– Sri Lanka - #gsoc-lk at irc.freenode.net.Sri Lanka - #gsoc-lk at irc.freenode.net.

Drop me a line. ;)Drop me a line. ;)

[email protected]@gmail.com

kkpradeeban.blogspot.comkkpradeeban.blogspot.com

Logos/images used in the presentation are owned by the respective open source organizations or the individual, and used for the particular non - commercial informative purpose only.

Page 41: Google summer of code 2012

41

Questions?..Questions?..

Page 42: Google summer of code 2012

42

Wish you all the best..Wish you all the best..