Google Summer of Code 2008: Application
Responsibilities
The application will be handed in by David on Wednesday. Everyone is encouraged to give feedback on the application itself, which is shown below:
Contents
What should a mentoring organization application look like? says:
In addition to anything else your organization would like to submit as an application, Google will be asking (at least) the following questions as part of the application process:
Our Application
1. Describe your organization
Agavi is an open-source software project working to develop an extensible, scalable model-view-controller framework for PHP. Founded in 2005 as a fork of the now long discontinued Mojavi 3 by Sean Kerr, it contrasts against other PHP frameworks in its strict separation of the model, view, and controller, and its emphasis on agnostic behavior in relation to non-framework components. Agavi is also context-agnostic, and Agavi applications can theoretically operate as Web applications, console applications, or GUI applications.
Today, Agavi is used by individuals and companies all over the world, with users and contributors from many different countries ranging from Australia over China, India, Iran, Brazil and Canada to the U.S., Finland, Japan, Germany and many, many others. It's architecture makes it especially useful in applications that are not just simple web sites, such as multi-tiered service-oriented architectures, middlewares and complex web applications.
2. Why is your organization applying to participate in GSoC 2008? What do you hope to gain by participating?
Agavi is already powering several high-profile, award-winning sites. With a funded documentation effort currently underway and a 1.0 release scheduled for a September release together with the launch of a proper website, the project, which for years was deliberately "flown below radar" mostly due to it's lack of documentation, is rapidly gaining momentum. Fresh developers and ideas for future versions would provide substantial help in the efforts to reach a broad audience, and participating students looking for Open Source projects to join would find a comfortable home in an organization with clear policies and structures.
3. Did your organization participate in past GSoCs? If so, please summarize your involvement and the successes and challenges of your participation
The Agavi project has not previously participated in the Google Summer of Code
4. If your organization has not previously participated in GSoC, have you applied in the past? If so, for what year(s)?
The Agavi project has not previously submitted an application to the Google Summer of Code
5. Who will your organization administrator be? Please include Google Account information
David Zülke, dzuelke@…
6. What license(s) does your project use?
GNU Lesser General Public License (LGPL) v2.1
7. What is the URL for your ideas page?
http://trac.agavi.org/wiki/GoogleSummerOfCode2008/Ideas
8. What is the main development mailing list or forum for your organization?
dev@lists.agavi.org ( archives), but development-related discussions are mostly done on IRC
9. What is the main IRC channel for your organization?
#agavi on irc.freenode.net (logs at http://agavi.org/irclogs)
10. Does your organization have an application template you would like to see students use? If so, please provide it now
GoogleSummerOfCode2008/StudentApplicationTemplate
11. Who will be your backup organization administrator? Please include Google Account information
Dominik del Bondio, ddelbondio@…
12. Who will your mentors be? Please include Google Account information
- David Zülke, dzuelke@…
- Ross Lawley, ross.lawley@…
- Mike, mikeseth@…
- Felix Gilcher, barfusslaeufer@…
- Dominik del Bondio, ddelbondio@…
13. What criteria did you use to select these individuals as mentors? Please be as specific as possible
The selected mentors have been long-time, dedicated contributors to the Agavi project. They all use Agavi daily in their jobs and have demonstrated very strong understandings of computer science in general (including theory) as well as the structure of the Agavi framework, and made code contributions to the Agavi source. Mentors have also been active in the #agavi IRC channel and have demonstrated more than adequate skills in helping other Agavi users and in communicating with other developers. Many of the mentors have met each other in person before, and the administrators have known them for a long time (and also met them in person) and truly trust these individuals.
14. What is your plan for dealing with disappearing students?
Students will be asked to send weekly progress and status reports to their mentors. Mentors and students may negotiate additional regulations at their own discretion (e.g. IM chat sessions). A student who does not respond to inquiries sent by a mentor, or does not respond to a request for his weekly report, for a period of three consecutive days without prior notice will be contacted by phone. If they do not respond to these notices within a week of being sent, they will be reported to the organization administrators, which in turn may try to reach the student and eventually inform Google suspend their projects. We will make it clear to students that we need to know of travel plans and such in advance, and work with them to build a list of realistic goals and a roadmap with milestones for their projects, so students and mentors can adequately track progress.
15. What is your plan for dealing with disappearing mentors?
Although this should not be a problem given our selection of mentors, a student who is unable to contact his or her mentor for a period of three consecutive days must report to the project administrator. The administrator will then attempt to contact the mentor; if the mentor does not respond in an appropriate amount of time (to be determined by the administrator), the mentor's participation in the project will be revoked and the student will be reassigned to another mentor. The administrators have met all of the mentors in person before, and are in possession of their contact details including phone numbers, so unless a mentor is literally hit by a bus, they can eventually be contacted. We will assign backup mentors to each project, too, as a measure to eliminate such risks alotgether.
16. What steps will you take to encourage students to interact with your project's community before, during and after the program?
All the mentors and core developers hang out on #agavi on irc.freenode.net, giving all students the chance to dive into their projects with a minimum amount of friction loss. The channel and, to a lesser extent, the developers mailing list, have always been the primary instrument of conducting development-related discussions, so students can go back and look at previous discussions and rationales for decisions. Similarly, our ideas page, application etc were built by members of the community, publicly on the wiki.
The Agavi community has always been known for giving newcomers a warm welcome. Also, many Agavi users have noted that they have learned an incredible amount of new stuff related to CS and software engineering, aside of Agavi internals, after joining the community, and we sincerely hope that our students will not just benefit from these same things, but also be able to give back knowledge and become respected members of the community that others can rely on for informed answers on questions of whatever nature.
17. What will you do to ensure that your accepted students stick with the project after GSoC concludes?
Most of the projects on our ideas page are vital features or enhancements to the framework that will need continuous development and maintenance even after the Google Summer of Code is over. We consider the participating students full members of the development team, and hope that we can establish long-term relationships with them and encourage them to remain contributors to our Open Source efforts.
Also, with an increasing number of companies that use Agavi looking for experienced developers, it's an excellent opportunity for the students to enhance their visibility and prospects on the job market.

