Google Summer of Code
In 2013, CERN PH/SFT will apply to participate for a third year in Google Summer of Code, a global program that offers student developers stipends to write code for open source projects. The program was launched in 2005 and since then it has brought together over 6000 students with over 3000 mentors and contributed to more than 390 open source projects.
Google Summer of Code is a program designed to introduce students to the world of open source software development and the SFT group at CERN is an ideal environment to inspire students to participate in open source development. A CERN project participated for the first time in 2011 and managed to get four students that proved to be skilled developers. They were involved in the developments of CERNVM that provides a virtual appliance used to develop and run LHC data processing applications on the distributed and heterogeneous computing infrastructure spread across institutes and research labs around the world. Artem Harutyunyan, a Google Summer of Code Mentor back in 2011 and the initial organization administrator of the program at CERN recalls: “The students quickly familiarized themselves with our code base and managed to make valuable contributions within the three month time frame of Google Summer of Code”. Motivated by CernVM's very positive experience in 2011, members of the SFT working on Geant4 and ROOT joined as mentors in 2012 and the number of student allocated to CERN was almost doubled to seven during last summer.
Students participating in the program taste some of the real challenges of storing and handling large amounts of data which are created during collisions at the LHC. Over a three month period, students are involved in core parts of the open-source software that makes LHC data processing possible. Each student is paired with a mentor, who guides and communicates constantly with the student and who also evaluates his or her progress at the halfway point and the end of the project. The remote character of the program is one of its biggest advantages since it opens to everyone in the world.
John Apostolakis and Jakob Blomer, both members of the PH/SFT group, are coordinating this effort in 2013 and acting as CERN administrators for GSoC. The deadline for registering as an organization for this year's GSoC is March 29th and Apostolakis notes “We have already prepared a list of seven projects, including two proposed by other groups”. He adds that “Most projects have a strong computing focus, and a minimal required knowledge of particle physics” although students might get inspired to find out more about the physics as they will be working in one of the projects.
Projects proposed to the students span several domains, ranging from software for consistent replication of terabytes of data across several remote sites. to automated testing of virtual machine releases. Each organization provides a pool of project ideas for students and is responsible for mentoring of each accepted student and monitoring her or his progress through to the final phase of the project. The distant nature of the programme means that mentors have to make a serious commitment since everything is remote. Mentors and students need to develop an efficient communication and overcome many obstacles for the successful completion of a project. Jakob Blomer says: “Perhaps one of the greatest rewards for mentors is to see so much interest and enthusiasm from the student programmers in LHC software tools”.
In 2012, two of the students worked on Geant4, the toolkit for simulating the interactions of high-energy particles. In 2012, Stathis Kamperis improved the speed of Geant4 by re-ordering the simulation of particles according to their different types while Dhruva Tirumala Bukkapatnam from India developed an algorithm for particle navigation optimized for GPU architectures. Geant4 in itself is a gigantic software and development in the code means that one can run more simulations with data from the LHC experiments and get new physics results.
Students also contributed to the ROOT framework that is used by the LHC experiments to store, analyse and visualize experimental data. Omar Zapara Mesa worked on an MPI interface for ROOT that enables ROOT to toss around its C++ objects from node to node while also integrating with ROOT's C++ interpreter. Eamon Ford project laid the foundation for a future implementation of the Co-pilot idea of an agent that will allow home computers and mobile phones to devote spare CPU resources to CERN experiments. Ford ‘s project also lead to the development of a CERN iOS App that brings CERN news and information on iPad or Iphone. Finally, three students worked with mentors from the CernVM team following the collaboration that had already started in 2011 when CERN was accepted for the first time as a mentoring institute in GSoC contest. Josic Lisec came back at CERN for his second Google Summer of Code and worked on improving the Co-Pilot monitor, the job distribution system that powers the LHC@home. Francesco Ruvolo worked on a testing framework for the CernVM File System while Rachee Singh worked on the geographical location services for the content distribution service behind the CernVM File System.
The SFT group welcomes proposals about coding projects from other groups. As Jakob Blomer mentions: “I think that this would improve our application”. He firmly believes that “it would be to our benefit to coordinate our efforts”.
Proposals from open source mentoring organizations are accepted until the 29th of March while the student proposal period lasts from the 22nd of April until the 3rd of May. The accepted student proposals will be announced on the google Summer of Code 2013 site on May 27. For more information, see the program timeline, join a mailing lists or subscribe to the Google Open Source Blog for regular program updates.
Read more:
http://www.symmetrymagazine.org/article/october-2012/a-summer-of-physics-code
http://www.google-melange.com/gsoc/homepage/google/gsoc2013
http://google-opensource.blogspot.fr/