Last modified by Eduard Moraru on 2020/03/24 12:54

Show last authors
1 {{box cssClass="floatinginfobox" title="**Contents**"}}
2 {{toc/}}
3 {{/box}}
4
5 {{info}}
6 **XWiki has been accepted as a mentoring organization for [[Google Summer of Code 2011>>http://www.google-melange.com/]]**.
7 {{/info}}
8
9 This page hosts information and project ideas for the Google Summer of Code 2011. Students can come up with their own ideas, and propose them on the [[mailing list>>Community.MailingLists]] or the [[IRC channel>>Community.IRC]].
10
11 {{velocity output="false"}}
12 #set ($gsocYear = "2011")
13 #set ($sql = ", BaseObject obj, StringProperty year where obj.name=doc.fullName and obj.className='GoogleSummerOfCode.ProjectClass' and doc.name<>'ProjectClassTemplate' and year.id.id = obj.id and year.id.name = 'year' and year.value = '${gsocYear}' order by doc.creationDate")
14 #set ($projects = $xwiki.searchDocuments($sql))
15
16 #macro (displayProject $project $item $student)
17 (% style="border: 1px dotted #CCC; margin: 0 auto 10px; padding: 0 8px 4px;" %)(((
18 #if ($student != "")
19 (% style="margin-top: 0; padding-top: 22px" %)
20 == [[$project.displayTitle>>$item]] by $student ==
21 #else
22 (% style="margin-top: 0; padding-top: 22px" %)
23 == [[$project.displayTitle>>$item]] ==
24 #end
25 (% class="projectdesc" %)(((
26 $project.details
27 (% class="clearfloats" %)((()))
28 )))
29 (% style="font-size: 80%; color: #888;" %)(((
30 #if("$!project.leader" != '')//Coordinated by// **$project.leader**.#end #if("$!project.workload" != "")//Estimated workload//: **$project.workload**.#end [[Read more...>>$item]]
31 )))
32 )))
33 #end
34 {{/velocity}}
35
36 = Suggested way of working for GSoC students =
37
38 {{error}}
39 Important Dates (timeline): http://www.google-melange.com/document/show/gsoc_program/google/gsoc2011/timeline
40 {{/error}}
41
42 First and foremost, working on XWiki needs to be fun and a good learning process! However the XWiki project is already following some development rules that we're asking GSoC students to follow too. This is for the good of the XWiki project but more importantly it's a good way to learn how an open source community works and if these practices are followed then it'll be much easier to integrate the resulting work into XWiki's official releases.
43
44 So here are some practices we'd like GSoC students to follow (please comment on the list if you'd like to change some of them or propose other things):
45
46 * GSoC students should be considered like any XWiki contributor which means they should respect the same rules and which means they are not committers on XWiki core. Note that a GSoC student can become a Committer in the [[same manner a contributor can become one>>Community.Committership]].
47 * GSoC students will be given commit access to the sandbox only where they'll create their project (one top level directory for each project). For projects which need to modify some existing code, JIRA issues will need to be created and patches attached. It's important that patches be of good quality and small in order to be applied quickly. Once sandbox projects reach a good level of maturity (meaning they work and the code is of code quality, documented, etc) then we'd like to migrate them to the main release tree.
48 * GSoC students should obey all [[Community rules>>Community.WebHome]]. For example this means:
49 ** using the XWiki coding conventions
50 ** using the defined communication channels: IRC and mailing list
51 ** etc
52 * **GSoC students have time allocated to familiarize with XWiki development process. As such we'd like each GSoC student to pick one or several existing issues in JIRA and send a patch that fixes it/them before that period ends (from April 25th to May 23rd)** This is a critical integration step to ensure all GSoC students understand how XWiki works and it's a chance to start asking questions and get to know each other.
53 * GSoC student should post a quick introduction on the xwiki dev mailing list to explain who they are and what they're going to work on.
54 * GSoC student should always go to the list when communicating about their project. They should not talk directly to their mentors. They should use the XWiki IRC channel if they need to talk to them. The goal is that everyone in the XWiki community help them, answer their questions but also know what they are doing. This will make patch applications and integration of their work back into XWiki trunk easier later on. This is very important and a criteria of success for the student. This is about learning how open source works... Note that student can also CC their mentor's email address if they want but the mails have to go to the XWiki dev list.
55 * GSoC students should not block on anything for a long period of time. They should ask plenty of questions on the list (but they should also be autonomous!)
56 * GSoC students should be as much as possible in contact with the community, following the mailing lists (and answering mails, when they know what to say), stay on the IRC channel, give regular status updates on their project. This does not mean that a GSoC student is not allowed to take a break, of course, but that while working a student should be integrated as much as possible with the community.
57 * When taking a vacation/break, notify the mentor; a mysterious disappearance could lead to a negative feedback afterwards.
58
59 Remember that this is not a summer job, or a Rent-a-coder like project, but a rewarded successful integration in an free software/open source community. If all you are interested in is the money, then better look for a real job, as Free Software requires passionate people; an ideal candidate is more interested in the t-shirt.
60
61 Good generic advises:
62
63 * http://www.slideshare.net/felipecerda/i-want-2-do-project-tell-me-wat-2-do
64 * http://www.youtube.com/watch?v=vBRRR0BQyz0
65
66 = Conditions for success =
67
68 Students will need to meet these criteria for success:
69
70 1. Must have something that works and is in some finished state.
71 1. Must be integrated or close to be integrated in XWiki without too much effort
72 1. Must have interacted correctly and continuously with the community
73 1. The work must have been enough (it's supposed to be a 2 men/month effort)
74
75 Note that the real important part is 3) since this is a criteria for success for 1), 2) and 4).
76
77 = Student Application template =
78
79 Please use [[this template>>GoogleSummerOfCode.student application form]] as the basis for your student application which must be submitted to google.
80
81 The projects below, out of all the proposed projects, have been selected to participate in GSoC 2011.
82
83 {{velocity}}
84 = Selected Projects for GSoC 2011 =
85
86 #foreach ($item in $projects)
87 #set($project = $xwiki.getDocument($item))
88 #set ($discard = $project.use("GoogleSummerOfCode.ProjectClass"))
89 #if ("$!project.getValue('status')" != '' && "$project.getValue('status')" != 'proposed')
90 #displayProject($project $item "")
91 #end
92 #end
93 {{/velocity}}
94
95 = Proposed Projects ({{velocity}}$projects.size(){{/velocity}}) =
96
97 {{velocity}}
98 #*
99 {{error}}
100 As of now, we're still in a brainstorming phase and the projects proposed below are just wild ideas at this stage. We encourage everyone to propose ideas. Then we'll have a community vote later on to decide which ones we are interested in for GSoC 2011. Students will then be able to pick from these selected projects, discuss them with us or even propose other subjects. We also recommend students interested in joining XWiki for GSoC 2011 to manifest themselves as early as possible so that we can start working with them on this project list.
101 {{/error}}
102 *#
103 {{/velocity}}
104
105 {{velocity}}
106 #foreach ($item in $projects)
107 #set($project = $xwiki.getDocument($item))
108 $project.use("GoogleSummerOfCode.ProjectClass")##
109 * {{html}}<a href="#H$util.encodeURI("${project.displayTitle.replaceAll('[^a-zA-Z0-9]', '')}").replaceAll('[^a-zA-Z0-9]', '')">$project.displayTitle</a>{{/html}}
110 #end
111 #if($hasEdit)
112
113 {{html}}
114 <form action="$xwiki.getDocument("${doc.space}.CreateProject").getURL()" id="newproject">
115 <div>
116 <input type="hidden" name="parent" value="$doc.fullName" />
117 <input type="hidden" name="classname" value="GoogleSummerOfCode.ProjectClass" />
118 <input type="hidden" name="template" value="GoogleSummerOfCode.ProjectClassTemplate" />
119 <input type="hidden" name="space" value="$doc.space"/>
120 <input type="hidden" name="xaction" value="create"/>
121 <input type="text" name="page" value="" size="30"/>
122 <input type="hidden" name="year" value="2011" size="30"/>
123 <span class="buttonwrapper"><input class="button" type="submit" value="Add this Project"/></span>
124 </div>
125 </form>
126 {{/html}}
127
128 #end
129
130 #foreach ($item in $projects)
131 #set($project = $xwiki.getDocument($item))
132 $project.use("GoogleSummerOfCode.ProjectClass")
133 #displayProject($project $item "")
134 #end
135 {{/velocity}}
136
137 = Previous GSoC editions =
138
139 * [[The page XWiki prepared for GSoC 2010>>GoogleSummerOfCode2010]] (XWiki did not take part in GSoC 2010)
140 * [[The XWiki GSoC 2009 page>>GoogleSummerOfCode2009]]
141 * [[The XWiki GSoC 2008 page>>GoogleSummerOfCode2008]]
142 * [[The XWiki GSoC 2007 page>>GoogleSummerOfCode2007]]

Get Connected