2006 Google Summer of Code Wrap Up
This summer, the Gallery project participated in the second Google Summer of Code. The Summer of Code is a program, funded by Google, to essentially give students a paid internship with Open Source projects. At the beginning of September, the second Summer of Code completed successfuly, not only for Gallery, but each of the 101 other mentoring organizations. For eight days, students from across the globe submitted proposals from our suggested projects and ideas of their own. Gallery received 71 applications after Google filtered out the ones that wouldn't be acceptable anyway. Our Summer of Code mentors and administrators carefully reviewed the applications during the two week triage process. We considered many factors, including the timeframe, necessity, usability, and feasibility, which eventually led us to our top selections.
Based on experience from last year's Summer of Code, we recruited four mentors and set a limit of one student per mentor to avoid overwhelming our mentors like we did last year. We requested and were allocated four students for this year's Summer of Code. Although one of our students disappeared shortly after we began, the remaining three students did a terrific job.
Below are the students and their respective projects with further information (by project, alphabetically):
Student: Jack Bates
Mentor: Bharat Mediratta
Description: Research and development into using AJAX techniques to improve the usability of common administrative operations in Gallery. This project has been completed successfully with the end result that certain types of administrative operations (rotating images, editing captions, etc) are much easier to accomplish. This is targetted for integration in the 2.3 release.
Project: Convert Gallery2 to use Modified Preorder Tree Traversal (MPTT)
Student: József Rekedt-Nagy
Mentor: Andy Staudacher
Description: Research, evaluation and implementation of MPTT as an alternative data structure for Gallery's album tree to improve performance and scalability. In the course of the project, MPTT has been extended to perform better for multi-user access and concurrent changes. The resulting enhanced MPTT structure could replace Gallery's "parent sequence", an extension over the normal adjacency list. Final benchmark results are pending.
Project: Module for Global Notification System
Student: Russell (Zimzat)
Mentor: Alan Harder
Description: Module to manage user notifications of certain events, such as new items or comments added in the Gallery. Other modules are able to register their own notification events or delivery methods (email being the default). Site administrators select which events and methods are available and then users can subscribe to receive notifications.
During the three months for Summer of Code, we used various techniques to help ensure the students were on a path to success. Along with weekly meetings, students were required to complete assigned tasks and provide weekly status updates. Our meetings were used to have open discussions between the mentors and their students to make sure we all had a good vision of where the SoC projects were headed. Students were also required to meet deadlines at which time their code was reviewed. All code was required to meet our standards for formatting, unit test completion, and to accomplish the assigned task in a reasonable and efficient manner.
We are excited to announce that each of our remaining students has successfully participated in this year's Summer of Code.
The Gallery team has learned a lot from the Summer of Code experience and enjoyed working with Google and the students on these excellent projects. We look forward to future Summers of Code and can only imagine the types of exciting projects students will accomplish next time.