Google has announced the list of projects that were accepted into the Google Summer of Code (GSoC) 2014 program.
I'm extremely excited and proud to announce that Rails has been granted eight project slots this year.
Here's what our students will be working on this summer and the mentors that they are working with:
Unifying controller and integration tests
Alan Guo Xiang Tan will be working on unifying controller and integration tests.
This would help to improve the performance of integration tests and encourage more full-sprecturm testing.
Joining him on this effort will be Rails committers Matthew Draper
and Yves Senn.
Long-running Ruby and Rails benchmark
Bert Chang will be creating a set of long-running benchmarks for Ruby and Rails.
This will help both projects continuously monitor how their commits are impacting real-world performance, which
will help discover and respond to regressions much earlier in the development cycle.
He will be mentored by Damien Mathieu, a longtime Rails contributor.
Petros Markou will be exploring different API designs to help reduce coupling
between the view and model layer.
Carlos Antonio da Silva, a member of the Rails core team, will be
assisting him along this journey.
Improving compatibility with other Ruby implementations
Robin Dupret will be getting the Rails test suite passing on alternative Ruby
implementations, such as JRuby and Rubinius. This work will help improve the compatibility of Rails on
Ben Browning (JRuby and Rails contributor),
Vipul A M (Ruby and Rails contributor) and
Federico Builes (Rubinius and Rubyspec contributor) will be joining forces to
help Robin with his project.
A web-console in your error page
Last year, Genadi Samokovarov developed a web-based console in his GSoC project.
This year, Ryan Dao will continue that effort and integrate the web-console project
into the error page you see in development mode.
Fittingly, Genadi himself will be mentoring the project along with core team
member Guillermo Iguaran.
Refactor URL generation and recognition code
Ujjwal Thaakar will be improving Rails' internals by refactoring parts of the routing
code that are no longer necessary thanks to
He will be mentored by Andrew White, another member of the Rails core team.
Xuchu Zhang will be picking up the task of improving Rails' security defaults and other
related features. This effort would help ensure that Rails remains secure out-of-the-box. Plans include implementing
support for the latest security features in modern browsers and auto-expiring cookie jars.
Godfrey Chan, a Rails committer,
and Rafael Mendonça França, a core team member, will be mentoring Xuchu for this
Randomizing the Rails test suite
Last but not least, Zuhao Wan will be eliminating any leakage of global states in our test
suite so that it can be run in randomized order without errors.
Rails committer Yves Senn will be assisting him on this project.
Towards a bright future
I don't know about you, but after seeing this list of amazing projects, I am genuinely getting very excited about the
bright future for Rails. By the end of this summer, not only would we gain a few great new features, but we are also
helping to nurture some new contributors in Rails and the wider OSS community, how great is that!
Finally, we'd like to thank every single student and mentor who participated in the Google Summer of Code selection
process. There were many great proposals and we're really excited to be able to work on so many of them this year.
<3 <3 <3 <3 <3
P.S. If you enjoyed this post, you should also check out GSoC's sister project – the Rails Girls Summer of Code
initiative, where another
seven (Update: 15!) awesome teams will be working on some equally impressive projects in our
ecosystem. Did I mention how incredibly excited I am about this summer?