Google Summer of Code 2013 Summary
Season’s Greetings, Joomla Friends! This year has been very busy for everyone involved in Joomla development, so I’m really excited to be able to publish the results of the program. Before we get started, if you want to read about the students and the projects in detail, check out the profiles on the Developer Site.
Without further delay, here is a summary of the program this year. We started the summer with nine students around the globe. Two of our students hail from the University of Moratuwa in Sri Lanka, and the others from India, Italy, Singapore, and Romania.
In addition to the students, we had mentors spread throughout the United States, United Kingdom, Brazil, France, Spain, and Italy. The lead administrators this year were Chad Windnagle and Elin Waring, with Javier Gomez and Michael Babker being our PLT connection for the summer.
Unlike last year, most of our projects this year were focused on improvements to the Joomla CMS. Last year was much more focused on the Joomla Framework. The students worked throughout the summer on some top-notch Joomla features and improvements. In no particular order the projects were:
- Improve Form Fields
- Student: Achal Aggarwal
- Mentor: Rob Clayburn
- MooTools to jQuery Conversion
- Student: Ashan Fernando
- Mentor: Roberto Segura, Jensen Tonne
- Cloud Storage APIs
- Student: Alex Marin
- Mentor: Diana Neculai
- Module Modernization
- Student: Lasindu Charith
- Mentors: Janich Rasmussen
- System Tests for CMS
- Student: Puneet Kala
- Mentors: Mark Dexter, George Wilson
- Semantics and Accessibility
- Student: Pruteanu Alexandru
- Mentor: Emerson Rocha Luiz
- Front End Website Administration (com_services)
- Student: Buddhima Wijeweera
- Mentor: Elin Waring
- Template Manager Improvements
- Student: Ram Tripathi
- Mentor: Ken Crowder
- Media Manager
- Student: Nguyen Tran Quan
- Mentor: Mitch Pirtle
I’ll start with the bad news first. We unfortunately were unable to complete one of our nine projects. Due to some family conflicts and unavailability from the student, the media manager project was unable to be completed. The necessary paperwork was filed with Google directly after the GSoC program midterm.
With the sad news out of the way, all of the rest of the projects were reasonably successful, and for the most part earning merges into various Joomla releases.
Improve Form Fields
The form field project developed by Achal was intended to bring new HTML5 form types to Joomla’s JForm libraries. The majority of this code was merged back in October and was released in Joomla 3.2.0.
MooTools to JQuery Conversion
The module modernization project consisted of several sub-projects with an overall goal of spicing-up the functionality of some of Joomla’s core modules. The final result of this project was the development of three different modules that interface with the contact component and with the Joomla tags component. You can check out the code here:
This code is not yet merged into Joomla’s master repository but it would be great to see these modules get some use in the Joomla community. There are a few options that the PLT is considering including merging these modules into Joomla 3.3 or adopting them as “community supported extensions” similar to how the Install from Web plugin is managed.
Semantics and Accessibility (Microdata)
Data and SEO nerds will absolutely love this project. A Joomla microdata library for the CMS. This allows developers to build components that output semantic microdata information which is used by search engines and is useful for users consuming content. The library was merged in Joomla’s master branch for the 3.2.0 release. There is also a plan to migrate this library over to the Joomla Framework in the future.
An important aspect of Joomla development that can often be overlooked is the importance of testing. Puneet devoted the entire summer to develop improved system tests for much of the CMS. Several commits and pull requests were involved in bringing all the code into Joomla’s official repository, but all the tests are accessible in the “tests” directory.
Although all projects are equal in our eyes, the template manager project made some big headlines and got some special press as a highly marketed feature for users in Joomla 3.2. The template manager is filled with browser-based file editing, template override, and LESS compilation awesomeness. Many thanks to Ram Tripathi for his excellent work on this Joomla feature. The largest code push came in time for Joomla 3.2.0.
Front End Website Administration (com_services)
In com_services the idea of allowing front end users with sufficient access to administer a Joomla site was made a reality. This involved creating links from the front end to be able to perform backend tasks. Read more about this project in the JCM article. This project was done in several parts but it was all merged in time for Joomla 3.2.0.
Cloud Storage APIs
The cloud storage APIs created by Alex Marin are currently awaiting some decisions from the Joomla Framework team. These APIs make it possible for extension developers to link into services like Google Cloud Storage, Dropbox, Rackspace, and AmazonS3. Much of the work is available for testing and review with the CMS maintainers intending to review and decide on merging this code into the forthcoming 3.3 release.
Believe it or not, GSoC 2014 is right around the corner, and Google has promised that this year, the 10th Anniversary of Google Summer of Code, will be bigger and better than all the previous years. Google will be accepting more projects and more students. This is great news for the entire Free Open Source Software (FOSS) community! The knowledge and experience gained by the GSoC team this year will prove invaluable for running next year’s program. It’s my personal hope to continue to get support from the Joomla community to continue Joomla’s participation in GSoC, keep our standards high, and to make improvements and contributions to Joomla’s code and community through the GSoC program.
A Big Thank You
This program wouldn’t be possible without the amazing help from all the volunteers in the Joomla community. So I would like to extend a personal thanks to all the amazing contributors involved. In no special order, Elin Waring, Javier Gomez, Michael Babker, Donald Gilbert, David Hurley, Aaron Schmitz, Janich Rasmussen, Jenson Tonne, Kenneth Crowder, Mitch Pirtle, Rob Clayburn, Roberto Segura, Stefan Neculai, Diana Neculai, George Wilson, Emerson Rocha Luiz, Jean Marie Simonet, Mark Dexter, Paul Orwig, Dianne Henning, Alice Grevet, all the testers who tested code, those who helped with merges and reviews, the team at the Joomla! Community Magazine, our Joomla leaders at the Production Leadership Team, the great folks at Google, and the many people who gave their time to make this year a true success.