2012 Google Summer of Code Students and Projects announced

Posted by Sigurd Magnusson on 24 April 2012

Sigurd Magnusson is one of SilverStripe’s three co-founders. Sig is based in Wellington, New Zealand and works full-time at the SilverStripe headquarters. His efforts are focused on sales, marketing and fostering the open source community.

Google is funding seven talented university students to work on projects to improve SilverStripe CMS. This gives students a highly educative programming experience, and helps further our software immensely. We're very excited, although I'm sure the students are even more so: they only learnt hours ago they've been accepted!

This is all part of the annual Google Summer of Code, whereby over 1200 university students all over the planet are given several months experience working on and contributing to 180 open source projects. It's a highly competitive programme; Google assigned us seven projects to fill and we had four times that number in applications.

The development of all projects will be performed in the open, with the resulting code released under an open source license. Over the coming weeks the project ideas will be refined, with code being written from late May to mid August. Keep an eye out on the github wiki and silverstripe-dev to keep an eye on what's happening and to contribute your own input. We'll post updates periodically to this blog. The seven projects (in alphabetical order of title) are:

1. Content Personalization and Targeting Module

Create a new module to personalise website content for different users. Users might be differentiated by such things as geographic location, in-bound keywords, in-site browsing activity, OS, browser, device, etc. The CMS will support multiple forms of content being written and match content with given users to create a personalised experience.

Student: Yuki Awano (Japan)

Mentored by: Philipp Krenn (Austria)

2. Form and Model Validation

Forms are one of the most important parts of every framework/CMS. The validation layer of SilverStripe isn't very flexible and doesn't handle complex scenarios well. The goal of the project is to allow easy and powerful validation tools on both server and browser side.

Student: Wojtek Szkutnik (Poland)

Mentored by: Matuesz Uzdowski and Sean Harvey (SilverStripe Ltd, New Zealand)

3. Improve Behaviour Testing Framework and Test Suite

SilverStripe has a decent coverage of unit tests, but these typically focus on the technical aspects of the software and don't examine the CMS/framework from the user perspective. The goal of the project is to introduce acceptance tests that simulate user behaviour in the system and check common actions.

Student: Michal Ochman (Poland)

Mentored by: Ingo Schommer (SilverStripe Ltd, Germany)

4. Improve Developer Ergonomics

SilverStripe has a set of features to support developers. However, these features depend on manually adding GET parameters to the URL. The goal of this proposal is to make the tools available at a central, easy to find location in form of a developer toolbar, and to improve a logging mechanism useful for debugging.

Student: Jakob Kristoferitsch (Austria)

Mentored by: Mark Stephens (SilverStripe Ltd, New Zealand)

5. Improve Payment module

Improve API, structure and testing for the existing payment module, and support more payment gateways. The scope is to be further collaborated on by various community members involved in SilverStripe's ecommerce capabilities.

Student: Ryan Dao (Singapore)

Mentored by: Frank Mullenger (New Zealand)

6. Improve silverstripe.org Module and Widgets pages

The functionality of modules and widgets download pages at silverstripe.org is minimal and can be significantly improved. Searching, browsing, and how modules are linked to code repositories will be enhanced.

Student: Vikas Srivastava (India)

Mentored by: Aaron Carlino aka UncleCheese (USA)

7. Module System Refactoring

Currently there's no way to define dependencies of modules, organise them into subfolders or easily submit them to a central repository. Using the newly popular composer/packagist pair, allow module authors to define dependency metadata for a module inside a JSON file and enable versioning to be inferred from source control. This will simplify the installation and management of modules.

Student: Andrew Short (Australia)

Mentored by: Marcus Nyeholt (SilverStripe Pty, Australia)

Post your comment

Note: Comments are moderated and won't show until they are approved


  • I am very happy that there is an Indian participating in google summer code 2012. All the best for all.

    Posted by US Joomla force, 2 years ago @usjoomlaforce

  • This is great news. I am very interested in the outcome of the Content Personalisation, Form Validation, Developer Ergonomics and Payment module projects. In particular I have a couple of projects in the pipeline that will greatly benefit from the Content Personalisation and the Payment module projects. Kia Kaha to all of the students!

    Posted by James Pluck, 2 years ago @CourageWeb

  • Awesome, they're all valuable projects, looking forward to seeing the results!

    Posted by Jono, 2 years ago

  • Thumbs up all around! Looking forward to reading up on results :)


    Posted by BLU42 Media, 2 years ago @blu42media

  • I dont know which functions are already included in the payment module. But please do not olny think of a online shop which has a checkout form.

    In our current project we needed to pay our members every month.
    On the other hand we didnt like the idea that the payout is completely automatic. Because if we have a bug in our code, the member might get paid twice or 3 times. And thats something our client wouldnt like very much, i guess.

    So we decided to use the mass payment function from paypal and let SS just generate a csv file every month. This gives the admin the chance to take a second look at the file who gets paid this month before he loggs in to paypal to upload the .csv file.

    I have to say that the payout function isnt finished so far.
    But the point is, that i think a csv-export for paypal mass payments might be usefull. And also an IPN (Instant Payment Notification) is needed in the payment module.


    Posted by Alexander Klein, 2 years ago

  • Congratulations to all! (A zwlaszcza dla Wojtka i Michala) :-)

    Posted by Alex, 2 years ago @mozebyc

  • Really looking forward to this, thanks Sig, Ingo and everyone for organising.

    Posted by Frank, 2 years ago

  • A warm welcome from Germany, we're glad to have you all on board! There's some important projects on that list, stuff that will make a real difference to the SilverStripe ecosystem. And looking through the proposals and mentor credentials I'm sure they're all going to kick ass!

    Posted by Ingo, 2 years ago @chillu

  • Looking forward to messing with the ORM =)))

    Posted by Wojtek Szkutnik, 2 years ago @wojtekszkutnik

RSS feed for comments on this page | RSS feed for all comments

Want to know more about the company that brought you SilverStripe? Then check out SilverStripe.com

Comments on this website? Please give feedback.