Google Summer of Code 2014 - Application Wiki

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
You are viewing a wiki page. You are welcome to join the group and then edit it. Be bold!

Utilize this wiki to organize our application for Google's Summer of Code 2014 contest. Our plan is to have an initial application draft ready Wednesday February 12th. Please edit this wiki and add your feedback. Application URL @ http://www.google-melange.com/gsoc/org/profile/create/google/gsoc2014

=================================

Organization ID: drupal
Organization ID is used as part of various URL links throughout the site. You may reuse the same id for different years of the program. ASCII alphanumeric characters, digits, and underscores only.

=================================

Organization name: Drupal
Complete, formal name of the organization.

=================================

Description:

Drupal is an open source content management platform powering millions of websites and applications. It’s built, used, and supported by an active and diverse community of people around the world.

=================================

Tags: PHP, CMS, Database, Drupal 8, Symfony, Web Development, Web Programming, Web Application, Web Framework, SQL, Object Oriented Programming, NEEDMORETAGS
Comma separated list of organization tags. Each tag must be shorter than 30 characters.

=================================

Main license: GNU General Public License verison 2.0 (GPLv2)
The main license which is used by this organization.

=================================

Logo URL: https://drupal.org/sites/all/modules/drupalorg/drupalorg/images/d8.svg
URL to the logo of the organization. Please ensure that the provided image is smaller than 65px65px.

=================================

Ideas list: https://groups.drupal.org/node/407793
The URL to a page with list of ideas for projects for this organization.This is the most important part of your application. You can read about ideas lists on the FAQs

=================================

Mailing list: Main listing of lists @ https://drupal.org/mailing-lists and http://lists.drupal.org/listinfo/development but more GSoC specifically https://groups.drupal.org/google-summer-code
Mailing list email address, URL to sign-up page, etc.

=================================

Organization website: https://drupal.org
Main website of the organization.

=================================

IRC Channel:
Public IRC channel which may be used to get in touch with developers.

=================================

Feed URL: https://drupal.org/planet/rss.xml
The URL should be a valid ATOM or RSS feed. Feed entries are shown on the organization home page in Melange.

=================================

Google+ URL: https://plus.google.com/113325464728592995596
URL to the Google+ page of the organization.

=================================

Twitter URL: https://twitter.com/drupal
URL of the Twitter page of the organization.

=================================

Blog page: https://drupal.org/planet
URL to the blog page of the organization.

=================================

Facebook URL: https://www.facebook.com/pages/Drupal/8427738891
URL to the Facebook page of the organization.

=================================

Veteran organization: Yes
Check this field if the organization has participated in a previous instance of the program.

=================================

Backup administrator: slashrsm
Username of the user who will also serve as administrator for this organization. Please note that the user must have created a profile for the current program in order to be eligible. The organization will be allowed to assign more administrators upon acceptance into the program.

=================================

PART 2

=================================

Why is your organization applying to participate in Google Summer of Code 2014? What do you hope to gain by participating?

One of Drupal's strongest assets is our community, and one of our community’s strongest assets is Google Summer of Code(GSoC). Over the past several years we have grown from a basic content management system(CMS) that barely anyone knew about, to one of the largest open source CMS projects in the world. During this time, Drupal has gained many of its greatest contributors from Summer of Code. We believe it is essential to participate in GSoC/GCI in 2014 and every year to continue this healthy cycle of community growth.

The newest version of Drupal(Drupal 8) is almost ready so it is the perfect time for GSoC students to start contributing. Many GSoC project ideas are a chance to provide contributions to the most popular aspects of Drupal. As an organization, we hope students become engaged in their contributions and see how important many of these features are to millions of people around the world. We also hope students can learn to create significant value from their own custom code by learning new skills and collaborating with others in our community. As past experiences with GSoC have demonstrated, this has the potential to foster important lifelong relationships.

Two quick examples of Drupal GSoC success stories include Angela Byron and Janez Urev. Angela was first introduced to Drupal through GSoC 2005 and is currently the #2 contributor in our entire community second only to the project founder, Dries Buytaert. We are thankful to have GSoC students continue on to become some of our biggest contributors. For example, we’re excited to see students such as Janez evolve from student to mentor, and now into filling the role of backup administrator for GSoC 2014.

=================================

How many potential mentors do you have for this year's program? What criteria did you use to select them?

There are currently 30+ confirmed mentors in the ideas list. Our ideas page lists many potential mentor profiles including their areas of expertise, GSoC/GCI experience, timezone, and languages spoken. In addition, not all mentors wanted to add profile information at this time. Plus we have several module maintainers of the proposed project ideas have agreed to be co-mentors once a related project is actually accepted.

Mentorship selection criteria:
*Quality of Project Idea
*Feasibility of Project Idea
*Years on Drupal.org Profile
*Contributions to Drupal
*GSoC/GCI Experience
*References and recommendations from GSoC/GCI alumni
*Level of Interest and Availability to Help
*Project/time management Skills
*Score at Certifiedtorock.com (not official criteria, but sometimes helps in choosing mentors)

This year, for the first time in GSoC, Drupal ended up with more mentors looking to participate than ideas. During our "call for help” to the community, we contacted hundreds of Drupal related companies requesting participation. Luckily, many of the companies responded positively by providing multiple employees to spend company time being a mentor. It is worth noting that several potential mentors are great Drupal developers with plenty of experience that meet our criteria, but don't yet have a specific project in mind.

Being the 10 year anniversary of GSoC and looking to resolve the problem of too many new mentors getting in over their heads, we decided to track down and contact every single alumni student/mentor of Drupal’s GSoC. Based on the response, it was a good time to check in with alumni, ask for feedback, and see if anyone has any project ideas. As it turns out, the recruitment strategy worked beautifully and many alumni returned to mentor in 2014. We received thoughtful notes from alumni students who say that GSoC jump started their career several years ago and how excited they are to be a mentor in 2014.

A major goal is encouraging anyone with the availability and who is interested, to participate in Drupal GSoC in 2014. It is not easy finding volunteers willing to dedicate the required amount of time. Because of this, we didn’t want to turn anyone away unless necessary. We still ended up not selecting a few potential mentors based on the criteria outlined above, but we also decided to help educate potential mentors that did not yet meet our criteria. Ultimately, we teamed up experienced mentors with co-mentors that are new to GSoC in hopes of not only educating a student, but also a new mentor looking to develop stronger participation of GSoC in future years.

=================================

What is your plan for dealing with disappearing students?

A new effort in 2014 allows Drupal mentors and students to utilize drupalladder.org as a resource with documentation about GSoC workflow/processes. It should be noted that GCI students created the ladders for GCI/GSoC students and mentors: http://drupalladder.org/ladder/47217ef7-9bf5-4c7f-926f-aeee247aac78 . Vital information such as how to manage students, methods of student communication, how often to communicate with students, and how to track student meetings/updates is provided.

Example, it is requested that mentors initiate "virtual SCRUM" meetings lasting fifteen minutes twice each week on Google+. During SCRUM meetings three questions are answered: #1 What have you accomplished since last SCRUM? #2 What will you accomplish before next SCRUM? #3 What is preventing you from finishing question #2? This is great because students learn about Agile methodologies and time management utilizing fifteen minute calls saving everyone time. In addition, students are required to post project updates in Drupal’s GSoC group every two weeks during the project summarizing progress with any interesting notes at https://groups.drupal.org/google-summer-code. Mentors are required to document each of the completed update posts and SCRUM/meetings their student attends at http://goo.gl/zyOLM4.

The student’s check-in sheet is a public Google Drive/Doc spreadsheet shared with all mentors allowing only mentors to edit. Maintaining updates with meetings is essential to the success of any project and will be considered in student evaluations. Example, if a student is disappearing around midterms and mentors have thoughts of failing the student, the number of missed SCRUMs and update posts will be utilized to build evidence. At the opposite end, a student that attends every single meeting on time with quality update posts, but continues to struggle with the project may lead one to wonder if the project was too difficult.

Finally, it will be clearly communicated that mentors should not be scared to discuss students who are not making progress. If a student is truly struggling, mentor admins will step in to reanalyze the scope of the project attempting to save it. If mentor and/or student wait too long to bring up lack of progress, as a last resort, organisation administrators will fail a student only after providing multiple chances for the student to redeem themselves.

What is your plan for dealing with disappearing mentors?

Dealing with disappearing mentors will be dealt with on many levels. Prior to projects being officially accepted with a student, mentors are required to provide personal contact information such as full name, home/mobile phone, and Google+/Skype. Plus provide any known dates with timeline for holidays/vacations/trips. SCRUM meetings twice each week are requested of mentor/student requiring mentors to document attendance of all meetings and verify project update posts every two weeks in spreadsheet: http://goo.gl/zyOLM4. It will be clear to see which mentor is not updating check-in sheet and Drupal’s mentor admins will discuss issues internally if/when it arises. In the event a mentor actually disappears, we have a couple of backup alumni mentors willing to help if needed.

From another point of view, selecting qualified candidates with required experience from the start always helps minimize gaps of unscheduled availability. One method to finding mentors that stick around the entire summer was contacting all of the Drupal GSoC student/mentor alumni. These contacts resulted in more than ten alumni returning to mentor! Moving forward we anticipate alumni mentors to act as role models and provide support to new mentors. In related news it was helpful to recruit fresh GCI mentors based on recent collaboration involvement.

Another method of selecting qualified candidates from the start was working with Drupal service related companies willing to provide employees on company time to be mentors. We received more support than expected from Drupal shops allowing contributions from businesses without requiring financial assistance.

=================================

What steps will you take to encourage students to interact with your project's community before and during the program?

Step #1 is always for students to register an account on drupal.org. Drupal.org is our community hub complete with resources. It is crucial for students to learn "d.o formalities" before starting work on any project. Step #2 is requiring students to complete the “GSoC Student Ladder” at http://drupalladder.org/ladder/47217ef7-9bf5-4c7f-926f-aeee247aac78. The ladder includes various lessons helping a student get up to speed with basic coding requirements to start a GSoC project. Students will be encouraged to utilize lessons learned to help fix bugs in issue queues while planning project allowing real open source contribution prior to GSoC code timeframe.

Drupal is a big fan of communicating in web posts with comments on drupal.org and in realtime on IRC. A nice feature of Drupal.org is that each user has a "contact page" that can be enabled/disabled. Every mentor listed on ideas page is available for questions at their drupal.org contact page and students are encouraged to reach out. Plus mentors hangout in #drupal-google on a regular basis answering questions from potential students. Drupal is known for our open community and welcoming new members.

Communication during GSoC is key to student success in the program. Allowing students to openly ask questions and providing experience based resources from mentors will enable contributions back to our community with minimal confusion. Students are encouraged to keep IRC open throughout GSoC and add mentor(s) to Google+ prior to starting to code. During the coding timeframe, mentors and students are encouraged to "meet virtually" twice per week. IRC is great for everything except hearing someone's voice. We feel it is crucial for mentors to have an actual voice conversation with students at least twice per week (video is decision of student/mentor). Plus students are required to post project updates every two weeks at groups.drupal.org/google-summer-code informing our community of progress. As an added bonus this year, mentors have the option to utilize donated BaseCamp accounts for project management.

=================================

What will you do to encourage your accepted students to stick with the project after Google Summer of Code concludes?

Students are encouraged to continue supporting Drupal well past the conclusion of GSoC in any way possible and luckily Drupal has plenty of ways to have fun. Throughout GSoC students will learn about various initiatives, specific types of functionality, Drupal related events, and more. Students are advised to find and attend Drupal related events/meetups in their local area at early stages of GSoC. Attending events and talking about Drupal in real life is a great way to help students jump into the deep end of Drupal.

Encouragement comes as results of rockstar contributor success stories who started in GSoC/GCI and hearing about how awesome it is to work with Drupal full time. By end of GSoC project, student will understand working with Drupal is not a job, but a lifestyle. Not to mention having Drupal on a CV/resume is one of the top skills requested by many tech recruiters and job providers. During the mentoring process, it is clear to see the student is starting to understand how open source contributions work and that many companies support these efforts by hiring developers with credentials such as GSoC experience.

Plus we encourage students to see the rewards of contributing to open source and that it can actually be fun. Why waste spare time browsing Facebook when you can review the drupal.org issue queue for issues to fix while learning how to code?

=================================

Are you a new organization who has a Googler or other organization to vouch for you? If so, please list their name(s) here.

No

=================================

Are you an established or larger organization who would like to vouch for a new organization applying this year? If so, please list their name(s) here.

Yes, we're an established organization vouching for CiviCRM who is applying for the first time on their own in 2014. I have personally worked with Kreynen (CiviCRM org admin) in the Drupal community as a mentor during my time as Drupal org admin in GCI. Plus Kreynen has mentored for both Drupal and Creative Commons in GSoC. Kreynen has a great idea of pushing CiviCRM as its own GSoC organization for many reasons. Drupal+CiviCRM work great together, but each provides it’s own distinct solution. It is only fair that CiviCRM have their own students working on projects pushing their open source efforts to the next level. The efforts of both organizations in GSoC will collectively benefit our greater communities.

=================================

If you chose "veteran" in the organization profile dropdown, please summarize your involvement and the successes and challenges of your participation. Please also list your pass/fail rate for each year.

Drupal GSoC Pass/Fail Rates
*2012 Accepted: 13 Passed: 12 Failed: 1
*2011 Accepted: 15 Passed: 11 Failed: 4
*2010 Accepted: 18 Passed: 18 Failed: 0
*2009 Accepted: 18 Passed: 19 Failed: 0 (bonus student from another org)
*2008 Accepted: 21 Passed: 19 Failed: 2 (dropped @midterm)
*2007 Accepted: 20 Passed: 18 Failed: 2
*2006 Accepted: 14 Passed: 14 Failed: 0
*2005 Accepted: 11 Passed: 11 Failed: 0
TOTAL Accepted: 130 Passed: 122 Failed: 9

Drupal has participated in GSoC eight for years and currently has about a 7% student failure rate. During the first two years there was zero student failures and reasons may vary. A popular theory is that mentors during earlier years were some of the most talented members of our community making it easy for them to spend time explaining how everything worked to anyone. Over time original mentors of top expert level became heavily involved in the growth of Drupal leaving less and less time for volunteer efforts. Not to mention becoming burnt out dedicating time to volunteer efforts throughout an entire summer.

Naturally over time new community members started participating as mentors in GSoC. During this time, Drupal experienced a massive growth of new contributors revolutionizing Drupal into the system it is today. However, inevitable issues arise with growth, especially in a largely volunteer based community. Throughout time Drupal's GSoC processes became less of a standard and more of a learning experience for the new year's org/mentors getting up to speed. Maybe one issue was "passing the torch" which can be difficult in any open source community.

Passing the torch can be a challenge to any organization. Previous org admins might have made the mistake of stopping working when GSoC ended, but truly needed to spend time documenting steps for next incoming org admin. This became clear in 2013 when Drupal was not accepted into GSoC because our application was far too basic with only four ideas. To solve this issue, we gathered in person in May at Drupalcon Portland and in September at Drupalcon Prague with GSoC alumni. Meetings resulted in an idea of building a team of dedicated Drupal community members working on both GSoC/GCI throughout the year for multiple years.

Matthew Lechleider stepped up at the first in person meeting and volunteered to lead the effort. As an alumni mentor, Matthew remembers the challenges how to get started and realizing the success of student project was due to personal project management resources/experience. Plenty of information is available on being a mentor/student, but minimal resources are documented about student/mentor collaboration techniques. A bit of time is wasted on any project getting everyone up to speed on collaboration and optimal collaboration is usually not achieved until halfway into many projects.

Throughout 2013, Matthew spent time attending Drupal events around the world personally trying to spark interest in GCI/GSoC and researching previous involvement in GSoC from not only a Drupal point of view, but all of the other successful organizations who participated in GSoC. Clearly all projects applying to and participating in GSoC are experiencing the similar problems annually. Matthew biggest concern is lack of standard resources and documentation GSoC organizations utilize for students/mentors. Melange is not to blame as it serves it's own purpose because each organization requires their own specific workflow with processes to mentor students while contributing code in org specific requirements. However, common issues all organizations face include how/when to communicate with students, how often to communicate, and which communication mediums to utilize.

=================================

If you are a new organization, have you applied in the past? If so, for what year(s)?

Drupal participated 2005-2012, but was not accepted in 2013 even though we applied.

=================================

Is there anything else we should know or you'd like to tell us that doesn't fit anywhere else on the application?

Drupal was not able to participate in all 10 years of GSoC, but it is our mission to participate in the next 10 years (hopefully more). Submitting a subpar GSoC 2013 application and not being accepted was truly a “red flag” within our community. We want you to know that we spent the majority of the past year working together as a community with the desired result of being invited back to participate in the legendary GSoC. Our first achievement after launching our Drupal/GSoC initiative was being accepted back into GCI which we recently accomplished in 2013 with better contributions than we could have ever anticipated. Please note the months of countless hours spent by multiple volunteers in this proposal. If we’re not accepted in 2014, we will apply again in 2015.

Might be interesting to know project idea submissions spiked at the last minute. No matter the amount of calls for help in community, we ended up with majority of our submissions at last minute. Mentors and tasks continued to be added literally hours before actual submission deadline.

Comments

95% complete

Slurpee's picture

Every field is filled out on the GSoC2014 application. Please review and provide feedback. Maybe we can find a better image logo url? The only issue I can find is that we need additional tags. Anyone have any ideas? The most important piece is now the task list linked in application.