Ready, steady… Code!

This summer, CERN took part in the Google Summer of Code programme for the third year in succession. Open to students from all over the world, this programme leads to very successful collaborations for open source software projects.

 

Image: GSoC 2013.

Google Summer of Code (GSoC) is a global programme that offers student developers grants to write code for open-source software projects. Since its creation in 2005, the programme has brought together some 6,000 students from over 100 countries worldwide. The students selected by Google are paired with a mentor from one of the participating projects, which can be led by institutes, organisations, companies, etc.

This year, CERN PH Department’s SFT (Software Development for Experiments) Group took part in the GSoC programme for the third time, submitting 15 open-source projects. “Once published on the Google Summer for Code website (in April), the projects are open to applications,” says Jakob Blomer, one of the organisers for CERN. “This year, more than 80 students contacted us from all over the world expressing their interest in our projects.”

After discussing with potential mentors, the students make a proposal. Next, Google determines the number of student slots for each organisation. SFT organisers and mentors select the best proposals, and Google formally enrols the students. The grant offered by the GSoC programme is worth 5,000 US dollars to each student for 3 months’ work.

“The student developers work full time for the project over the summer, from the beginning of July to the end of September,” adds Jakob. “They don’t need to come to CERN physically as they can easily interact with their mentor via e-mail or Skype.” This year, eight students were selected for CERN’s projects.

“This programme allows students who already have experience to take part in CERN projects without formally entering the CERN Summer Student Programme,” explains John Apostolakis, another organiser on CERN’s side. “Many students are brilliant, with experience that they apply immediately to make an impact in a project within a very short time.”

A range of topics were tackled by the GSoC students in 2013, from improving Cling (the interpreter for the upcoming version 6 of ROOT) and refining perf (the performance monitor tool of Linux) to creating a prototype CERN app on Android and developing an improved text editor for Indico capable of handling mathematical formulae.

One student, Violeta Ilieva (see box) created a prototype auto-differentiator for Cling. With this new capability, it will be possible to differentiate many functions automatically from their source code.  The result is a new function in code that provides an exact answer. This can be evaluated by fewer computations, replacing the numerical approximations that are used in most current analyses.

A student’s perspective

Violeta Ilieva (22) is Bulgarian and currently majoring in Computer Science at Princeton University, and is pursuing certificate programmes in Finance and in Robotics and Intelligent Systems.

In 2012, she took part in the Google Summer of Code programme. “I was given a wonderful opportunity to extend the functionality of the MIT App Inventor – a platform that provides non-programmers with an intuitive interface to develop their own Android mobile applications,” says Violeta.

This year, she took part in the GSoC programme by creating a Cling prototype auto-differentiator for CERN. She describes her CERN mentor, Vassil Vassilev, as giving “guidance, advice and encouragement that proved invaluable for finishing the project. I am very grateful for the chance I was given. I learnt a lot this summer and can’t wait to apply the new knowledge and practical skills in my studies and, hopefully, in my career.”

In August, Violeta visited CERN. “I was excited to find out more about the place itself, projects in progress and plans for the future,” she explains. “Furthermore, I was able to visit some of the experiments, like ATLAS, which has been a dream of mine since high school.”


For more information about the Google Summer of Code 2013 programme, click here.

For more information about the SFT/ Google Summer of Code 2013 projects, read the article published in August in the PH Newsletter.

To learn more about the SFT projects, click here.

by Anaïs Schaeffer