This page provides a workspace where we can prepare our application. Previous years' applications are at Google Summer of Code 2012 Application Questions and Mentoring Organization Application 2013.
Clojure, as a GSoC mentoring organization, includes projects from all parts of the Clojure ecosystem, from IDE tooling to logic programming libraries.
Tags: Clojure, Lisp, Functional Programming
Main License: Eclipse Public License
Logo URL: http://www.deepbluelambda.org/images/Clojure-logo.png
Ideas list: http://dev.clojure.org/display/community/Project+Ideas
Mailing list: http://groups.google.com/group/clojure
Organization website: http://dev.clojure.org/display/community/Google+Summer+of+Code+2014
IRC Channel: #clojure on freenode
Veteran organization? Yes
The Clojure community has been growing at a healthy rate since the initial language announcement in 2007. The Clojure mailing list now has nearly 9000 subscribers, the Freenode IRC channel sees greater than 400 participants, and there were three conferences scheduled last year dedicated to Clojure. At these conferences, the question is no longer ‘Do you get to use Clojure at work?’ or ‘Are you using Clojure in production?’, but 'How are you using Clojure in production?'. All of this activity means many open source projects within the community need help, including porting Clojure to new platforms and improving mobile and web development. Given the interest from students and mentors on the mailing list has encouraged us to apply again for GSoC.
We select mentors based on their prior participation in the Clojure community. A mentor for a given student project will usually be a lead developer for an existing open source project related to the student's project. This will help ensure the mentor has both an interest in success of the GSoC project as well as the necessary expertise to be an effective mentor.
Our mentors are generally leaders within Clojure community who have been involved in the development of the programming language more than three years. These community leaders have shown a dedication and level of involvement that is simple to verify.
It is most critical to prevent such a scenario entirely. We attempt to accomplish this through careful selection of the proposal, mentor, and student. A proposal of proper scope, a dedicated mentor, and a student with a visible history of seeing projects to their end is critical to success. Also critical is observing their involvement in the community prior to the student's selection. We prefer students who have already started developing a working relationship with their mentor and interacting with the community. Finally, a proper interview is probably required in order to find out whether the mentor/student pairing is ideal and whether the student will be free of time conflicts during the GSoC time period to see their project to completion.
Ideally, all projects will have at least one backup mentor. Even so, mentors are selected from the community precisely for their history of involvement in the community and the issues surrounding proposal.
We will be clear that community involvement prior to selection will be a strong factor for being considered for a proposal. Our experience in previous years has taught us that those students with the strongest community/mentor involvement before the program performed the best. We believe that open source contribution is not solely a summer time affair. Students should be talking with mentors from the start in order to develop the adequate understanding and material required to tackle the proposal. This may include, but is not limited to, showing familiarity with an API, submitting patches, and reading papers and discussing them with mentors. We believe that a well considered proposal/mentor/student combination reinforces student engagement during the GSoC period.
We will strongly encourage students to provide updates to the community at large about the work they are doing on a biweekly basis. To increase the effectiveness of this, we will make it easy for the community to be able to follow our students' progress. In previous years, a number of students were interviewed in community electronic publications, and we would like to encourage that once more.
Most of the proposal are significant enough that students should feel a sense of ownership about their accomplishment. At the same time, the proposals are important enough to the Clojure community that members can provide support once the intensive GSoC period is done and the student must focus more time on academic responsibilities. We will encourage students to submit talks about their work to community conferences, and we will take the opportunity to use GSoC's travel stipend to get our students to conferences.
We have participated the past two years as a GSoC mentoring organisation. In 2012 all four of our students passed, and in 2013 6 of 7 students passed.
We are most proud of the several students who have continued their GSoC work and have taken up leadership roles within the community. For example, Ambrose Bonnaire-Sergeant (2012, 2013) successfully raised over $35,000 to continue his work on Typed Clojure, part of which went to help Nicola Mometto (2013) continue his Clojure in Clojure work. Nicola's work has also been sponsored by Cognitect. Alexander Yakushev (2012, 2013) has taken the lead in the Clojure/Android community and has significantly helped increase the adoption of Clojure on Android.
Despite our successes from the past two years, there is still plenty of room for improvement. We did a better job last year on keeping the community updated on students' progress, and we will need to continue improving on that. We will also need to figure out ways to improve communication between administrators and mentors. We set up a mailing list last year, and that helped. We will also be trying to get more people involved in the program both as mentors and as administrators. We think that by delegating duties and improving communication, it will be easier avoid the situation where a single person that gets too busy with duties outside of GSoC causes a lot of problems for others.