The Google Summer of Code 2012 has ended. It has been an excellent experience for me, and hopefully for the mentors and other students as well.
When the mentoring organizations were first announced at the beginning of GSoC 2012, I had very little experience with Joomla. However, during the student application period and the community bonding period I had a wonderful opportunity to learn the details of Joomla, and connect with numerous Joomla developers – especially my main mentor, Elin Waring.
Throughout the GSoC coding period, I worked on my JGoogle package for the Joomla Platform. By Google’s official pencils down date on August 20, I had created a package complete with five Google API’s, 90% unit test coverage, and a docbook entry. In addition, I wrote a JOauth package for OAuth 2.0 that compliments fellow GSoCer Diana Prajescu’s OAuth 1.0a library.
Picasa Web Albums
The Picasa API allows developers to retrieve lists of albums, lists of photos, and other meta-data from Picasa. It also supports editing album and photo meta-data such as title, location, and date taken. Perhaps most importantly, the API makes it painless for developers to upload photos and images to Picasa.
The Google Calendar API is designed to allow easy interaction with Google Calendar data. It supports the listing of calendars available to a user account in addition to retrieving event information from each calendar. This should make it easy for developers to create a calendar component that imports data from Google Calendar. More interestingly, the API also supports write access to add events or even whole calendars which opens the door to a host of interesting applications.
With this API, developers can retrieve data on their AdSense earnings and generate reports.
Google Analytics embed codes allow developers and site-owners to collect an incredible number of metrics on each user visiting the site. With this class, developers can not only easily inject the tracking codes into their page, but they can also easily use advanced features such as event tracking and custom variables.
Throughout the summer, I’ve been able to closely connect with the Joomla community. By now, I’ve submitted close to 15 bug fixes to the Joomla Platform of which almost 10 have already been merged. Recently, I was able to attend Joomla Day Chicago and meet numerous Joomla developers including the majority of the GSoC mentors and coordinators (thanks to my mentor Elin Waring for making it all happen and to my sponsor StackIdeas which provided my ticket). I look forward to continuing to work with the Joomla community, and who knows – maybe I’ll be a mentor next year.
The code for my project can be found on Github. Comments, questions, suggestions, pull requests, bug reports and complaints are welcome. There are dozens of additional Google APIs that would be useful and interesting to developers. Since I will be finishing up my senior year at the University of Minnesota over the next few months, it’s unlikely that I will have time to significantly expand the package in the short term, so any contributions would be greatly appreciated.