Development/GSoC/2012

Welcome to LibreOffice Google Summer of Code 2012!

= Editor's Note = This page was originally created after GSoC 2012 finished, but we're filling-in whatever information we can dig up from the wiki history, mailing lists, etc..

= Preamble =

LibreOffice has been approved as an organization for Google Summer of Code 2012. This program helps students to dive into the open source world and we hope to work on great projects with great students this summer. Please refer to the GSoC Ideas page for projects ideas.


 * Want to be a mentor? You can start reading Federico's Google Summer if Code Mentoring HOWTO. After that, feel free to add yourself as the mentor for a task in the EasyHacks page.


 * Have some interesting project idea? You can add some exciting project idea to the GSoC Ideas, but don't forget that student only have a full-time summer to work on it and that they may need some time to get up to speed.


 * Want to apply for a project? Read the and  sections below.

= Important dates =

See the timeline on GSOC FAQ. In short:
 * March 9th - last day to submit LibreOffice application for GSoc 2012
 * April 6th - student application deadline
 * April 20nd - all students must be coupled with a mentor
 * April 23rd - list of accepted students is published
 * May 21st - the coding start
 * July 13th - the mid term evaluation date
 * August 20th - pencils down
 * August 27th - final results are announced

= How to apply = First you should have a look at the Google Summer of Code FAQ and GSoc Student Guide. We will require the following points in any application:


 * Present yourself. Since we don't know you we want to know some bits like your name, education, email, nickname on the LibreOffice IRC channel.


 * Prove that you want to get involved into LibreOffice. In order to check this we will require students to complete one of the Easy programming tasks on the Easy Hacks page (or part of one if that EasyHack is a selection of separate tasks), though the dead-line for this isn't hard but needs to be somewhere before the end of the selection process. This means that each student who wants to have chances to be picked for a LibreOffice project will need to build the whole application, fix a bug and submit the patch to the development mailing list. See the Development page for more infos on this.


 * Explain what you want to achieve. Provide detailed informations on the project you want to work on and the use cases. The better you described it the better it is for us. It is best to base your project on one of our Ideas that come complete with friendly mentors to help you.


 * How do you plan to achieve it?. Provide us the following:
 * An estimated schedule for the summer (including any potential conflicts you could have like courses, exams...)
 * Technical details on how you want to implement it. The more sensible details you provide the easier it will be for us to check that you understood the problem and difficulty


 * Why should we choose you?. Give us all the reasons for choosing you. Any past open source hacking is interesting us as well as your hacking and socializing skills.

= Accepted Students =

(Students whose application is accepted to GSoC 2012)

= 2012 Organization Application =

[Editor's Note: The application below mentions out-of-date sentences like "applying to participate in GSoC 2011", however it does appear to be the 2012 application]

Organization Name: LibreOffice

Description: LibreOffice is the free power-packed Open Source personal productivity suite for Windows, Macintosh and Linux, that gives you six feature-rich applications for all your document production and data processing needs: Writer, Calc, Impress, Draw, Math and Base.

Home page: https://www.libreoffice.org

Main Organization License: GNU Lesser General Public License v3 (LGPLv3)

'''Why is your organization applying to participate in GSoC 2011? What do you hope to gain by participating?''' LibreOffice development has been made easy and we would like to get students involved in this interesting new road. Introducing students to the open source world and make LibreOffice progress at the same time is a nice goal.

'''Did your organization participate in past GSoCs? If so, please summarize your involvement and the successes and challenges of your participation.''' LibreOffice is a fork of OpenOffice.org and the Go-oo project migrated to LibreOffice. LibreOffice in itself only participated in 2011 GSoC, but: Each participation allowed us to improve the mentoring and students selection. 2010 provided good results in term of contributed code and in term of students involvement after the term. Involving students in the community for more than the summer still remains a challenge as they all go back to the real life of school and often disappear after the term. We managed to have amazingly good results last year, and still hope to enhance our mentoring skills for this year.
 * OpenOffice.org did in 2005, 2006 and 2007
 * and Go-Oo did in 2009 and 2010

If your organization participated in past GSoCs, please let us know the ratio of students passing to students allocated, e.g. 2006: 3/6 for 3 out of 6 students passed in 2006. 2009: 4/5 2010: 6/6 2011: 7/7

Add a Comment (optional): Missing the data for the OpenOffice.org participations.

'''If your organization has not previously participated in GSoC, have you applied in the past? If so, for what year(s)?'''

What is the URL for your ideas page? Our Ideas can be found here

'''What is the main development mailing list for your organization? This question will be shown to students who would like to get more information about applying to your organization for GSoC 2011. If your organization uses more than one list, please make sure to include a description of the list so students know which to use.''' The list for all GSoC communication is the LibreOffice development list libreoffice@lists.freedesktop.org

What is the main IRC channel for your organization? #libreoffice-dev

Add a Comment (optional): On irc.freenode.net

'''Does your organization have an application template you would like to see students use? If so, please provide it now. Please note that it is a very good idea to ask students to provide you with their contact information as part of your template. Their contact details will not be shared with you automatically via the GSoC site.''' the template can be found here

'''What criteria did you use to select the individuals who will act as mentors for your organization? Please be as specific as possible:''' Previous GSoC experience or new hackers mentoring is an important factor. Otherwise, the mentors are selected according to their involvement in the community and technical skills. As we did last years in Go-oo participation, each student will be assigned two mentors. This ensures the student to always have someone to guide him even when a mentor is on holidays.

What is your plan for dealing with disappearing students? In order to be selected, the students need to accomplish an easy programming task or fix any easy bug from LibreOffice bugzilla. This requires them to build and start looking at the code. In 2010 and 2011 we had a nice panel of students thanks to this requirement.

All students will be required to submit report their progress every day on the libreoffice development mailing-list and submit a patch every week. This will help to spot the difficulties before the student is actually lost. The daily report doesn't need to be long, but will help to keep the student on the project. As an improvement over 2011, we are planning to somehow require from the students to merge their code into the master branch more regularly. Merging code before mid-term and pencil-down isn't enough to make sure they are working on a regular basis.

What is your plan for dealing with disappearing mentors? Each student will have two mentors to avoid problems of disappearing mentors (even if only during the holidays time).

What steps will you take to encourage students to interact with your project's community before, during and after the program? All students will need to get involved in the development mailing list and IRC channel. This will allow them to discover the activity of the community. It also brings the possibility to the other developers that aren't mentoring them to provide help, advices or ask them questions about their work.

Two (or more) times in the summer the work of all the pending GSoc projects will be merged into the main development branch. This work will then be integrated into the automatic development builds for the rest of the community to test and see what they are doing. The merges will happen one week before before the mid-term and the pencil down date for the students to help fixing the merges. The students will then have to answer the questions of the other developers and community members. These checkpoints will help them to get feedback on their work from others than their mentors and hopefully they will need to review some patches on their work.

In order to keep the accepted students, we will integrate their feature work as soon as possible in the LibreOffice builds. The unfinished work will be activated only when enabling the experimental features at runtime. This will allow users to see their work and report bugs. The students will be required to help the other developers who want to help fixing their code. This way they will be able to keep with the project even if they have only little time when school starts again.

Is there anything else you would like to tell the Google Summer of Code program administration team? You people rock with this project. We attended the Mentor Summit in 2009 and 2011 and it was amazing to have so many smart people in such a small place. We love you!