2007 Google Summer of Code Wrap Up
This summer, the Gallery project participated in the third 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 end of August, the third Summer of Code completed successfuly, not only for Gallery, but each of the 130 other mentoring organizations. For twelve days, students from across the globe submitted proposals from our suggested projects and ideas of their own. Gallery received 62 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 previous Summers of Code, we recruited four mentors and set a limit of one student per mentor to avoid overwhelming our mentors like we did our first year. We requested and were allocated four students for this year's Summer of Code. Our four students did a terrific job.
Below are the students and their respective projects with further information (by project, alphabetically):
Project: Full Text Indexes for Gallery2 Search
Student: Adam Pflug
Mentor: Felix Rabinovich
Description: The current implementation of Gallery2's search functionality suffers from poor performance, a problem particularly pronounced for large datasets because indexes cannot be used to improve efficiency. The solution to this performance and scalability problem is to use DBMS agnostic full text indexing for searches. Furthermore, the current search implementation does not support complex queries (such as queries containing boolean operators) or effectively support even basic relevance-based ranking algorithms. The use of a full text index and an enhanced query parser could offer improvements in both these areas.
Project: Gallery 2 SQLite backend
Student: Brian Kirchoff
Mentor: Tim Almdal
Description: Add a SQLite backend for Gallery 2. SQLite is a new flatfile database system that is fast, simple and easy to use and is now included by default in new PHP installations. By adding support for SQLite to Gallery 2 as a storage backend it increases the number of people who will be able to easily install and use Gallery.
Project: Media Metadata Extraction and Manipulation
Student: Camilo José Díaz Repka
Mentor: Russell (Zimzat)
Description: Improve the Current Exif Extraction G2 Plugin, adding database storage support(and searching) along with property editing for a subset of suitable items.
Project: Web Based Image Manipulation
Student: Udayakiran Ghattamaneni
Mentor: Jack Bates
Description:Develop a Web based Image Manipulation module for Gallery. Expand set of image operations built into Gallery so that even users without any image editing software on their computers can manipulate their images before they make prints.
This year, the Summer of Code was expanded to over five months and an introductory period was added before the start of coding. During the five months for Summer of Code, we used various techniques to help ensure the students were on a path to success. Before the actual coding started, we tried to integrate our students into our development community in a variety of ways. We had the students participate in our IRC channel and development mailing list. We also had each student prepare a bug fix for Gallery to introduce them to the Gallery code base and our development procedures. 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 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.