Development/GSoC/2020
TDF LibreOffice Document Liberation Project Community Blogs Weblate Nextcloud Redmine Ask LibreOffice Donate
Welcome to LibreOffice Google Summer of Code 2020!
Introduction
Want to apply for the LibreOffice project in 2020? 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 2020. 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 Easy Hacks 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 #Important dates and #How to apply sections below.
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 14 | February 5 | GSoC | LibreOffice application as an organization for GSoC 2020 |
February 20 | March 16 | GSoC | Potential student participants discuss application ideas with mentoring organizations |
March 16 | March 31 18:00 UTC | GSoC | Student application period |
March 26 | March 31 | LibreOffice | Evaluating submitted mandatory EasyHack |
March 31 | May 4 | GSoC | Application Review Period |
May 4 | GSoC | Accepted projects/students are announced | |
May 4 | June 1 | GSoC | Community bonding period |
June 1 | August 24 | GSoC | Coding period |
June 29 | July 3 18:00 UTC | GSoC | Phase 1 evaluations |
July 27 18:00 UTC | July 31 18:00 UTC | GSoC | Phase 2 evaluations |
August 24 | August 31 18:00 UTC | GSoC | Students submit their final work product and their final mentor |
August 31 | September 7 18:00 UTC | GSoC | Mentors submit final student evaluations |
September 8 | GSoC | Final results of Google Summer of Code 2020 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 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.
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 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).
Handy Tips
There's some useful information for Students and for Mentors here:
2020 GSoC application
Organization Profile
Public Profile
Website URL https://www.libreoffice.org
Tagline
LibreOffice is a free and open source office suite.
Upload Logo
Primary Open Source License
Mozilla Public License 2.0 (MPLv2)
Organization Category
End User Applications
Technology Tags
C++ Python Java JavaScript
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). Although the dead-line for the patch submission isn't hard, the "Easy Hack" needs to be finished somewhat 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, select a bug and submit a patch to Gerrit, which is reviewed and merged.
Explain what you want to achieve. Provide detailed information 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 thought about it properly before submitting. Since LibreOffice is a large project and it's hard to come up with suitable ideas for the GSoC time frame, we already provide a list of ideas that come with mentors included to help you. It's no problem to present your own project ideas, but make sure to look early for mentors, who are able and willing to support you and know 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 online 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. A 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 on their CVs, something we take very seriously. GSoC is the major opportunity for students around the world to be an active part of OpenSource, and we want to help making it a combined success.
GSoC is an important program, because it provides a possibility to mentor students intensively over a relative long period of time. The student gets more experience, while the project gets tasks done, that would be harder to do by pure volunteers. GSoC provides a platform, that connects students with OpenSource projects, LibreOffice interact with the students after GSoC, to e.g. provide developer days in universities.
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 some Jitsi calls when needed. In order to monitor the overall process, we have a weekly steering meeting, where GSoC projects are discussed in order for detecting problems early. Each student will have at least two mentors assigned to avoid problems of disappearing mentors (even if only during the holidays time). 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 available via email on a daily basis and have therefore sufficient capacity to adhere to the students schedules. 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, and with that it is easy to monitor the progress of patch development.
In order to be selected, a student needs to accomplish an easy programming task or fix any easy bug from the LibreOffice Bugzilla. This requires the build the application, an initial view at the code, hopefully gives more confidence in the task ahead and provides our mentors with a chance to take look how the student works. All students are required to submit a report of their progress every week to the LibreOffice development mailing-list and submit/update a patch on Gerrit. This helps to spot problems early, before the student might actually fail. The report doesn't need to be long if the patch clearly show work is being done.
How will you get your students involved in your community during GSoC?
The students are being welcomed as part of our mentoring program, even before applying to GSoC. 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 it. In our opinion students need to do more than just write code, they need to interact with the community by proposing solutions and adapt them until we have 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?
Has your org been accepted as a mentoring org in Google Summer of Code before?
Yes
Which years did your org participate in GSoC?
2010 2011 2012 2013 2014 2015 2016 2017 2018 2019
What is your success/fail rate per year?
2011 7/7 2012 ?/? 2013 ?/? 2014 ?/? 2015 12/1 2016 11/1 2017 9/1 2018 11/2 2019 6/0
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)
Are you part of a foundation/umbrella organization?
No
What year was your project started?
2010
Where does your source code live?
https://www.libreoffice.org/about-us/source-code/
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