Development/GSoC/2021

From The Document Foundation Wiki
Jump to navigation Jump to search

Welcome to LibreOffice Google Summer of Code 2021!

Introduction

Want to apply for the LibreOffice project in 2021? Read the #Important dates and #How to apply sections below! The list with proposed GSoC projects including potential mentors can be found here.

Preamble

LibreOffice has been approved as an organization for Google Summer of Code 2021. 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.

  • 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.

Important dates

See the How it works GSoC page and the detailed GSoC time line. In short (bold items are LibreOffice project deadlines):

Start Finish Origin Description
January 29 February 19 GSoC LibreOffice application as an organization for GSoC 2021
March 9 March 29 GSoC Potential student participants discuss application ideas with mentoring organizations
March 29 April 13 18:00 UTC GSoC Student application period
April 6 April 13 LibreOffice Evaluating submitted mandatory difficultyInteresting EasyHack
April 13 May 17 GSoC Application Review Period
May 17 GSoC Accepted projects/students are announced
May 17 June 7 GSoC Community bonding period
June 7 August 16 GSoC Coding period
July 12 July 16 GSoC Phase 1 evaluations
August 16 August 23 GSoC Students submit their code, project summaries, and final evaluations of their mentors
August 23 August 30 GSoC Mentors submit final student evaluations
August 31 GSoC Final results of Google Summer of Code 2021 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:

Remember to refer to the Gerrit patches you have submitted.

  • Prove that you want to get involved into LibreOffice. In order to check this we will require students to complete one of the difficultyInteresting 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 GetInvolved for help on getting started.

Please remark, remember to compile and test your patch locally before submitting. Submitting a patch that does not compile or fail the automated tests, is seen as lack of interest in getting seriously involved.

  • Explain what you want to achieve. Provide detailed informations on the project you want to work on and the use cases. The more precise your description is, the more it will show us that you investigated the area and though about it properly before submitting. The best is to base your project on one of our Ideas that come complete with friendly mentors to help you. You may have some nice project ideas, but make sure that someone will be able to mentor your project and knows that part of the code well enough.
  • 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.

If you're looking for further inspirations on how to write a successful application, please again be refer to the excellent GSoC student guide (here is an actual example).

2021 GSoC application

Organization Profile

Public Profile

Website URL https://www.libreoffice.org


Tagline

LibreOffice is a free and open source office suite.


Upload Logo

Logo


Primary Open Source License Mozilla Public License 2.0 (MPLv2)


Organization Category End User Applications


Technology Tags

C++ Python Java


Topic Tags

office suite android end user application desktop application


Ideas List

https://wiki.documentfoundation.org/Development/GSoC/Ideas

Descriptions

Short Description

LibreOffice is a lively and diverse community, delivering a full-featured cross-platform office suite. We value new contributors, just as we prize Open Source and Open Standards.

Long Description

LibreOffice is a modern Free & Open Source Office suite, one of the largest open source projects, and used by millions of users worldwide. LibreOffice is compatible with many file formats like Microsoft® Word, Excel, PowerPoint and Publisher. At its heart though, LibreOffice is built around an open standard, the OpenDocument Format, as its native file format.

LibreOffice is developed by users who, just like you, believe in the principles of Free Software and in sharing their work with the world in non-restrictive ways. The development of LibreOffice is supported by The Document Foundation which provides the infrastructure for the project.

We believe that users should have the freedom to run, copy, distribute, study, change and improve the software that we distribute. While we do offer no-cost downloads of the LibreOffice suite of programs, Free Software is first and foremost a matter of liberty, not price. We campaign for these freedoms because we believe that everyone deserves them.

Though the members of our community hail from many different backgrounds, we all value personal choice and transparency, which translates practically into wider compatibility, more utility, and no end-user lock-in to a single product. We believe that Free Software can provide better-quality, higher-reliability, increased-security, and greater-flexibility than proprietary alternatives. LibreOffice is a large project (approx. 6MLOC), which makes it interestingly complex, but at the same time, provides a place for all sorts of contribution & skills.

The community behind LibreOffice is the heart of the project, without which we would not have the resources to continue developing our software. The passion and drive that every individual brings to the community results in collaborative development that often exceeds our own expectations. With tons of different roles in the project, we invite everyone to join us in our work and help us to make LibreOffice known, prosper, and accessible to all.

Proposals

Application Instructions

First, please present yourself. Since we don't know you we want to know some bits like your name, education, email address and nickname on the #libreoffice-dev IRC channel at freenode.net. Please subscribe to the LibreOffice developer list and write an email to the list.

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.

Explain what you want to achieve. Provide detailed informations on the project you want to work on and the use cases. The more precise your description is, the more it will show us that you investigated the area and though about it properly before submitting. The best is to base your project on one of our Ideas that come complete with friendly mentors to help you. You may have some nice project ideas, but make sure that someone will be able to mentor your project and knows that part of the code well enough.

Problems that can not be resolved on our public developer mailing list or problems containing privacy relevant topics can also be sent to our mentoring@documentfoundation.org address.

Proposal Tags

C++ Python Java new idea writer calc impress UX

Contact Methods

IRC Channel https://wiki.documentfoundation.org/Website/IRC


Mailing List https://wiki.documentfoundation.org/Development/Mailing_List


General Email libreoffice@lists.freedesktop.org

Links

Mastodon URL (optional)

https://fosstodon.org/@libreoffice


Twitter URL (optional)

https://twitter.com/libreoffice


Blog URL (optional)

https://blog.documentfoundation.org/

Application

Why does your org want to participate in Google Summer of Code?

GSoC attracts a lot of students of whom some can be motivated to be long term committers. An mature project like LibreOffice needs a mixture of old and new developers, hence GSoC is very important for our future. For the student, being part of a large well known project like LibreOffice is a big plus in their CVs, something we take very seriously. GSoC is the major opportunity for students around the world to be an active part of open source and we want to help make it a combined success.

GSoC is an important program, because it provides a possibility to mentor students intensively over a relatively long period of time. The student gets more experience, while the project completes tasks that would be harder to do by pure volunteers. GSoC provides a platform that connects students with open source projects, LibreOffice interacts with the students after GSoC to e.g. provide developer days in universities.

What would your org consider to be a successful summer?

All projects are completed successfully, students are happy to have worked on LibreOffice and spread the word, the user community is excited about the results and at least one newcomer entering via GSoC continues as a volunteer developer or is hired into the commercial ecosystem.

How many potential mentors have agreed to mentor this year?

16-20

How will you keep mentors engaged with their students?

We use mail and IRC as the primary communication channels with an exceptional audio call when needed. In order to monitor the overall process, we have a weekly steering meeting, where GSoC is discussed in order to detect problems before they become real problems. Each student will have at least two mentors to avoid problems of disappearing mentors (even if only during the holiday times). Furthermore the GSoC admins (3) keeps an oversight throughout the project period.

Many of the mentors are employed by companies for their work on LibreOffice and therefore are expected to be available at least during the week.

How will you help your students stay on schedule to complete their projects?

Our mentors are typically people, who are present on our IRC channels and mail on a daily basis and have therefore sufficient capacity to adhere to the schedules of the students. Our GSoC administrators (some are also mentors) will follow the progress of each sub-project at a high level. We use Gerrit for patch management, which allows for easy monitoring of the progress.

In order to be selected, the students need to complete a non-trivial mentored task from LibreOffice Bugzilla. This requires them to build and start looking at the code, which gives the student more confidence in the task ahead and our mentors a chance to look at how the student works.

All students will be required to submit a report of their progress every week on the LibreOffice development mailing list and submit/update a patch on Gerrit every week. This will help spot the difficulties before the student is actually lost. The report does not need to be long, if the patch clearly shows work is being done.

How will you get your students involved in your community during GSoC?

Before the students apply to GSoC, they are welcomed as part of our mentoring program. In the mentoring program, we encourage the students to participate in discussions on IRC and mail. Our mentors will often ask the students to present their ideas to the community and thus get involved. In our opinion students need to do more than just write code. They need to interact with the community by proposing solutions and iterating them until reaching a community consensus. The interaction will ensure that students become part of the "team".

How will you keep students involved with your community after GSoC?

We have a mentoring program in place with the purpose of guiding new contributors into becomming full committers. The GSoC students will be a part of this program. We not only help new contributors become a part of the community, but also monitor progress and actively try to keep the motivation high. We believe an open and active community is one of the best assets in retaining contributors. We will before, during and after GSoC keep a personal contact with the students making them be a part of the community.

Has your org been accepted as a mentoring org in Google Summer of Code before?

Yes

Which years did your org participate in GSoC?

2021

2019

2018

2017

2016

2015

2014

2013

2012

2011

For each year your organization has participated, provide the counts of successful and total students.

2011: 7/7

2012: ?/?

2013: ?/?

2014: ?/?

2015: 12/13

2016: 11/12

2017: 9/10

2018: 11/13

2019: 6/6

2021: 6/6

If your org has applied for GSoC before but not been accepted, select the years:


If you are a new organization to GSoC, is there a Google employee or previously participating organization who will vouch for you? If so, please enter their name, contact email, and relationship to your organization. (optional)


What year was your project started?

2010

Where does your source code live?

https://www.libreoffice.org/about-us/source-code/

Is your organization part of any government?

No

Anything else we should know (optional)?

LibreOffice is a fork of OpenOffice.org and the Go-oo project migrated to LibreOffice. LibreOffice in itself only participated from 2011 GSoC, but:

  • OpenOffice.org did in 2005, 2006 and 2007
  • and Go-Oo did in 2009 and 2010