Season of KDE provides students with experienced mentors and a well defined project, just like Google Summer of Code. SoK does not provide payment to students, but as 2009 participant Nikhil Marathe puts it, "Open source happens because of passion and T-shirts, not money :)." Even so, even students have to eat and so SoK participants often have other jobs and can only work on their projects part time. As a result, SoK projects may have smaller scope than Google Summer of Code projects or happen over a longer period. KDE benefits from new additions to our software and our community, and students get a SoK t-shirt, a certificate, some Google goodies and a great experience. SoK can also be a springboard to future Google Summer of Code success, with several past SoK participants going on to secure Google Summer of Code acceptance. Equally, SoK has provided opportunities for students to continue a Google Summer of Code project from previous years.
In 2009 we had a lot of interest in Season of KDE and four students have successfully completed their projects. We asked them and their mentors about their experiences.
Nikhil Marathe was mentored by Google Summer of Code 2008 KDE student Martin Grässlin to bring window tiling features to the KDE window manager, KWin. An ICT student in India, Nikhil first became familiar with KDE software back in 2004. Having a dedicated mentor made becoming a contributor "a bit easier." Academic commitments slowed progress a little, but the project was a success and Nikhil believes that "If everything goes well tiling should be available by KDE Software Compilation 4.5" (due in July 2010). For Martin, flexibility is a nice feature of SoK as it allows the student to "take all the time needed to implement a great feature." He would like to see SoK style mentoring made available all year round, po barrier of entry for new contributors. Martin sees SoK as "a good chance to win a permanent developer."
Screencast of KWin window tiling
Nikhil is still contributing to KDE software and finds the community "very vibrant" and the KWin team "very friendly." He feels he gained personally from taking part: "My code reading skills improved tremendously - I understand new code much much faster due to the experience." Working as part of a team was also helpful: "The social skills experience was very valuable - I would say that the second most important reward from working on FOSS is the friends you make worldwide." Nikhil's proposal for Google Summer of Code 2010 was accepted so he will continue to work on KDE this summer.
Vera Lukman was mentored by Boudewijn Rempt on a project to develop a new pop-up palette for KDE's painting application, Krita. Having a quick selection widget for colors and brushes that pops up at the mouse position should make it easier for artists to quickly access commonly-used tools and colours. A student in Canada, Vera found out about KDE "by accident while browsing the list of organizations" for Google Summer of Code. Her first contributions to KDE came as part of SoK and working on Krita met her desire to "learn C++ and be a part of the development team of a painting application."
Vera's project objectives were completely realised during SoK and, from Boudewijn's point of view, Krita "gained a great contributor and a very useful feature." For Boudewijn, the flexibility provided by SoK is very useful: "We could have a break in development when school/mentor's job demanded that." It worked well for Vera who joined the other developers for a recent hacking sprint and has found that "working with great people encourages me to learn and contribute more to the project." Beyond KDE, SoK "opened a lot of opportunities," and she attributes her current internship position to taking part in the scheme.
Shaun Reich worked with Aaron Seigo and David Faure on displaying job progress in icons. As his high school never had a computer science or programming class, he explains that "everything that I know thus far is what I have learned on my own." First trying Linux around a year ago, Shaun didn't initially use KDE software but heard about it, gave it a go and was hooked. His project aimed to provide contextual information on running jobs within a file manager by modifying icons for items that are being moved, copied or deleted. This makes it less likely that the user will accidentally modify or delete a file that is in an active state.
Shaun continues to contribute: "I love coding for KDE - I dream of a day where I can have a career in it." Season of KDE gave him the chance to have a "closer relationship with developers, a lot more experience with the development process and some very useful intimacy with a lot of KDE code." Shaun's Google Summer of Code 2010 proposal was accepted so he doesn't have to worry about taking a summer job which will take time away from KDE development.
Our final participant, Gopala Krishna, is an Information Science Engineering student in India. He has been familiar with KDE software since the days of KDE 3 and has now experienced both Google Summer of Code and SoK. He made his first KDE contributions for Google Summer of Code in 2008 working on a project to draw Unified Modeling Language diagrams in KDE's Umbrello application using Qt 4's Graphics View framework. The size of the project meant he didn't complete everything, but Season of KDE 2009 gave him the perfect opportunity to finish off most of the outstanding features, mentored by KDE's Jonathan Riddell. For Gopala, taking part in SoK was "almost the same as doing the project as a part of Google Summer of Code" and he benefited from "extra attention, encouragement and motivation." While his studies have kept him busy for the last few months, he hopes to continue contributing to KDE when he has some free time.
In summary, Season of KDE has proved a successful complement to our participation in Google Summer of Code. It allows us to help a greater number of new contributors take their first steps in hacking on KDE software and becoming integral parts of our team. While we cannot provide the financial support of a Google Summer of Code project, we can provide high quality mentoring and a friendly community and both students and mentors are able to arrange the projects to fit into their busy schedules.
KDE is participating in Google Summer of Code again in 2010 and we will also be launching Season of KDE 2010 to maximize the opportunities for new contributors to get closer to our community, improve our software, make friends and have a lot of fun. If you are interested in this opportunity please send an email to kde-soc-mentor@kde.org.