Since 2006, Moodle has participated in the Google Summer of Code program – a global program focussed on bringing more student developers into open source software development.
Students apply to work with an open source organisation on a three-month programming project during their break from school. Since its inception in 2005, over 10, 000 students in over 103 countries have developed 50, 000, 000+ lines of code.
It’s a great program that not only advance the open source project worldwide but importantly, also contributes to enhancing the professional and personal experience of young people who would like to work as software developers.
Moodle is excited to have, once again, been selected to be part of the program in 2017 – marking our 11th year of involvement.
Last year, Moodle HQ developers mentored four students from Romania, India, Canada and Sri Lanka on some great open source projects.
We talk to David Mudrak, a developer at Moodle HQ and coordinator of Moodle’s involvement in Google Summer of Code 2017, for all the details.
Moodle HQ: Thanks David for taking the time to talk to us about Google Summer of Code. So let’s maybe start with, why has Moodle got involved in the program for 11 years now?
David: Moodle has applied and continues to participate in GSoC because we value the opportunity to encourage students to become involved in the development of Moodle.
By working together with our students, not only will we have an opportunity to give back to the software development sector but we will also benefit from the code for new Moodle features as well as improvements to the current code. This in turn benefits our global community and advance our commitment to empower educators with powerful, flexible learning tools.
The other positive from this program also include some former GSoC students becoming members of the Moodle core developer group
Moodle HQ: You have been coordinating Moodle’s involvement with Google Summer of Codes for a while now. What have been some of the best highlights over the years that you want to share?
David: Firstly, the interaction between the students and our community has provided so many positive benefits for both parties.
Moodle has always placed a strong emphasis on the student’s involvement with our overall users and the developer community.
Moodle’s global community is very supportive and during the project have always provided good feedback on the students’ work in progress.
More importantly, we have learned that interactions with the community help to build a natural commitment to deliver a great final product, on time and beneficial to making Moodle more powerful for educators and learners.
Secondly, the engagement with our end users helps our students to get a real life and valuable experience, preparing them for the “real” world. The positive feedback from end users gives the most valuable satisfaction for open source software developers. And that is exactly what we want the students to experience and what they have experienced in our past program participations.
Students can learn a lot about the technical side of coding at schools. But there are other aspects beyond the coding that we offer.
The ability to communicate with other developers, to describe and explain the technical solutions clearly or to accept constructive feedback in a multi-cultural environment are just examples of what students can gain from working on a global project like Moodle.
Moodle HQ: So, Moodle is involved with the program once again in 2017 and are looking for mentors and students. Who should be applying to be a student or a mentor?
David: There are many opportunities – and challenges – for GSoC students and mentors who decide to participate in the program with Moodle.
We have well established professional processes and workflows in place that allow both students and mentors to be challenged and engaged with real-life scenarios in the development world.
In Moodle, these scenarios include preparing technical specifications of future products, peer-reviews of the code developed, producing documentation and testing instructions, implementing test-driven development methodology, transparent source code management and much more.
So, Moodle warmly welcomes students and mentors to participate. And, as mentioned, both will have the support of our generous global community.
However, whoever applies to be a student or mentor needs to be committed to also following the processes and scenarios mentioned, and realise we have pretty high expectations.
We need to have them because we want to make sure that everyone who participates benefits positively from the experience and also to make sure that we enhance our mission of empowering educators.
From Moodle’s end, we will carefully go through every student project proposal and assess them based on outputs that would be in line with Moodle’s core development roadmap.
Moodle HQ: Lastly, what are some of the projects that students can be working on with Moodle for Google Summer of Code 2017?
David: As always, students can propose their own projects as long as they can demonstrate that their proposal is in line with Moodle’s goals and long-term development roadmap. We also need to make sure that our mentors can work together with the students on those proposed projects.
To guide them in their proposals, we have prepared some project topics that cover a wide range of technologies, to choose from, including:
- from server side PHP Moodle core code
- AngularJS code for the Moodle Mobile app.
Some of these project topics are also highly voted or requested for by our community. They are wanted features identified from our Moodle tracker and some deal with the latest web development stack.
The suggested project topics can be viewed on our community site.
Thanks David for taking the time to chat to us more about Moodle’s involvement with Google Summer of Code 2017.
We look forward to providing updates during and after the program to see how it is all going.
Please follow the links below for more information:
- Moodle HQ has created a list of suggested GSoC projects for consideration.
- If you are interested and would like to apply please follow the application process: docs.moodle.org/dev/Applying_to_work_with_Moodle_for_GSOC
- If you are a core Moodle developer and are interested in mentoring a project please contact us.