Google Summer of Code 2009 - Wrapup

Google&rsquo;s Summer of Code 2009 at LimeSurvey

LimeSurvey was chosen in 2009 to participate in the Google Summer of Code program. It was our first experience at the program and so we approached it with a huge deal of excitement, trepidation and hopeful anticipation. The timing was particularly good as it allowed us to put some additional impetus into the development of our second generation version of LimeSurvey, which is being built from the ground up and represents a large jump from the initial version.

We received around 50 applications from students with development proposals for LimeSurvey 2. Ultimately Google offered to fund 3 placements, which we duly filled with our 3 best student applications. While one of our students did not complete the placement, we rate the years involvement in GSoC as an outstanding success and we&rsquo;re very pleased with the outcomes both in terms of code development and the introduction of new developers to the project team.

Our two successfully completed projects were:

Mac Duy Hai&rsquo;s Dashboard Project

This project aimed to create a widget-based customisable dashboard for LimeSurvey2 administrators, allowing them to get an overview of any information inside LimeSurvey2. The widgets, from which the dashboard is constructed from, would be customizable, interactive, reusable and have a consistent design.

Here is a screenshot of Hai&rsquo;s finished work



One of the main criticisms of LimeSurvey version 1 has been the administrative interface. Hai's great work on the administrative dashboard will serve LimeSurvey 2 development well for years to come.

(Daniel) Dao Quanh Minh&rsquo;s Statistics Project

This project aimed to make the statistics module as functional as (or richer in terms of functionalities and usabiltities than) LimeSurvey 1.x. The new statistic module would also support question type developers and enable them to customize what attributes should be used for statistical report.

Daniel&rsquo;s project ran into some hurdles from the beginning, as Daniel discovered various limitations in the existing question modules. Showing great initiative, he was able to recognise the importance of the question module/structure to the rest of the project and worked on this area for the first term. Daniel was able to bring his project back on track in the second semester, and although the full scope of the original proposal wasn&rsquo;t met, he was able to meet the revised targets with aplomb. Daniel has provided LimeSurvey 2 with the fundamental statistics structure that was originally envisaged and this will be of great advantage to our future development.

Lessons Learned

As a first timer in GSoC, we faced a very steep learning curve this year – and it&rsquo;s probable that we weren&rsquo;t able to perform as well as possible as a result. There is not a lot in the way of guidelines for new organisations, and so we managed the best we could.

What worked very well for us was requiring our students to report regularly to our weekly developer meetings. Emails to the developer group were not as frequent as I would have liked, and this is something I will emphasise in future years. The smaller number of the development team who have been actively involved in coding our new version also meant that there probably wasn't as much of a sounding board for the students as they would have liked. This problem will resolve itself over the next year or so as development and developers move into version 2.

Our students were very active in our IRC channel and our online forums, and I think this really helped them get a good grounding in the wider LimeSurvey community.

LimeSurvey is hugely grateful to both Google for sponsoring this wonderful event, and to our students.

Our students have remained active with the project since completion, and Hai is taking an ongoing development role in LimeSurvey 2.