Joomla was not accepted as one of the 2010 Google Summer of Code participants, and while it was a bit of a surprise it is certainly an interesting opportunity that seems to be developing from it. JoeJoomla has already blogged about the possible 'blessings in desguise', and the mailing list for the topic has a topic with some messages with the fine folks at Dioscouri have offered to take interns this summer as well as the CloudAccess team has offered to mentor. Certainly there is some silver lining to be found in this, and it actually have given me some ideas about what I would consider to be an important program that could really help to shape the Joomla landscape.
I call it: the Incubator
I grew up on a farm, so I like to draw from that when I name things. Besides a pretty cool name, what is it? Well here is a base concept that I hope the community might draw on, build upon, and ultimately put into place a something that accomplishes these goals:
- Connect students (of any age) with mentors and other students
- Creation of new products for Joomla for the benefit of the general public
- Assists with the active development, testing, marketing, or community building of the Joomla core product
Now these goals are pretty lofty, but let me give you a basic idea of how the Google SoC program works first. Programs apply to be selected to recieve a certain number of student scholarships from Google, then once accepted students can apply to those positions (selecting a specific program to work with), and somehow a set of students are selected and paired with mentors to complete their Joomla related project. Students recieve a stipend, and the project recieves a contribution as well. However, Google largely handles the financial aspect of the program, leaving the student selection process mostly up to the participating organizations.
This means, that for the past few years, there have been Joomla volunteers helping to mentor and organize the students over the summer. This is good news, because Google can't deny us that spirit or those volunteers.
How the Incubator could work
If Google isn't going to fund students to do work for Joomla, thats ok. All that really means is any students that still want to work with Joomla are seriously interested in Joomla. I don't want to make judgements, but some students apply to multiple organizations just so they can get a position, not because they really have a connection with one organization. So the first thing is the Incubator is for students who are seriously interested in Joomla. I don't even want to limit it to students who are in school, but anyone who is a student in the sense of aspiring to learn more.
The second aspect is that the Incubator needs qualified mentors. Mentors can be individuals who spend a little time each week on email or Skype with students, or businesses that agree to take on an intern for several months. A mentor should be someone who wants to give back to the project, has some significant experience with Joomla (likely specializes in a certain aspect), and can have a commercial or non-commercial interest at heart.
The third aspect is that students should be paired with mentors by some central organizational method. This means, that there needs to be a center point where students and mentors sign up, and then behind the scenes a method is in place to help place students with mentors. Assuming the method is logical, students and mentors should be screened, and, if they are determined to be qualified, matched based on key details (such as area of focus, etc).
Lastly, the program should have the full support the leadership teams and OSM, but I don't believe they should run it. Why? Because they already have enough going on, and the students will be making/doing things that could be very helpful to the Joomla project but aren't likely to be production ready to be placed in the core. Sorry, I don't think I trust a student to code something that will just get dropped into the core, but on the other hand, its important for the teams to be apprised of the projects being done so they can be integrated either on JoomlaCode, or submitted to the team for further development/integration.
Alternative ideas
While the above proposal is fairly consistent with what Google SoC does, there are other ways the program could be implemented. For example, students could be paired up with local Joomla User Groups in order to help organize events, training, and other things. Perhaps more Joomla development shops could offer to host interns, paid or unpaid, that can help create new programs and ideas. What if students were allowed to do work that could benefit the public (unpaid work), or paired to help with emerging Joomla shops that could use extra help (paid work)?
Essentially, the program should focus on the goals to connect students with mentors, assist with creation of new products, and working to improve the Joomla core. I think it could be an exciting program that would improve community relations, train upcoming Joomla gurus, and improve the overall program.
What kinds of ideas do you have, or what would you like to see happen?
