LilyPond at the Google Summer of Code 2017

LilyPond has been mentoring students’ projects several times in the “Google Summer of Code” program in previous years, and this year we intend to take that to a new level: both the LilyPond and Frescobaldi projects will be able to accept students. (Frescobaldi is one of the two major LilyPond editing environments, the other being Denemo.) Students can now consider suitable projects to apply for, from March 20 to April 03 2017.

Google Summer of Code

Google Summer of Code (GSoC) is a grant program funded by Google to support and drive forward (Free) Open Source Software development. Of course it is not a charity and serves an economic purpose for Google on the long run, but as a project itself there is no substantial catch to it, and many respected FLOSS projects such as for example Mozilla, LibreOffice and The GNU Project are happy to participate regularly.

From the program website:

Google Summer of Code is a global program focused on bringing more student developers into open source software development. Students work with an open source organization on a 3 month programming project during their break from school.”

The idea is to create additional value by funding students (who have to be enrolled as full-time students in an official university) to work with an Open Source project. It is obviously a nice thing for a student to be able earning money by programming instead of doing arbitrary temporary work over the summer break. And it is also a nice thing for Open Source projects to have someone get paid to do work that might otherwise not get done. But there’s more to it: the student does not only get paid for some work but is also getting familiar with Open Source development in general and may (hopefully) become a respected member of the community he/she is working with. And the project doesn’t only get some “things done” but hopefully a new contributor beyond GSoC.

LilyPond @ GSoC 2017

GNU LilyPond has been part of GSoC under the umbrella of The GNU Project, and we accepted students in 2012, 2015 and 2016. For 2017 GNU has been accepted again, so LilyPond is open for students’ applications as well. But in addition the Frescobaldi LilyPond editor has also applied as a mentoring organization for 2017 – and has been accepted too! So this year there is even more room and a wider range of options for students to join GSoC and get involved with improving LilyPond and its ecosystem.

If you think this is an interesting thing but don’t want to apply for it yourself please do us a favor and still share this information (e.g. the link to this post) as widely as possible. If you are not completely sure if you are eligible for participating you may start reading the program’s FAQ page. Otherwise you may directly start looking at the Project Ideas pages where we have put together a number of project suggestions with varying difficulties and required skills (programming languages) that we consider both very important for our development and suitable for a student’s summer project. Please note that students may as well come up with their own project suggestions (which would be welcome because it implies a deep personal interest in the idea). The following bullet list gives an overview of the range of possibilities while the project pages give much more detail.

LilyPond GSoC page

  • Internal representation of chord structure
  • Adopt the SMuFL font encoding standard
  • Adding variants of font glyphs
  • Create (the foundation for) a Contemporary Notation library
  • (Re-)create a LilyPond extension for LibreOffice
  • Testing/documentation infrastructure for openLilyLib
  • Work on MusicXML import/export

Frescobaldi GSoC page

  • Enhancing the Manuscript Viewer
  • Improve MIDI/sound support
  • Add support for version control (Git)
  • Implement system-by-system handling of scores (partial compilation)
  • Add a user interface for openLilyLib packages
  • Improving the internal document tree representation
  • Improve Frescobaldi’s MusicXML export (possibly in conjunction with the LilyPond project)

See you on the mailing lists!

One thought on “LilyPond at the Google Summer of Code 2017

  1. David Kastrup

    Small correction: Denemo is not a LilyPond editing environment since it does not work _on_ LilyPond files. Not sure how good it is at importing them, but of course it exports them for its own typesetting. But that’s a one-way street, just like LilyPond exporting PostScript is a one-way street.


Leave a Reply

Your email address will not be published. Required fields are marked *