Show last authors
1 {{velocity output="false"}}
2 #set ($gsocYear = "${datetool.year}")
3 #set ($sql = ", BaseObject obj, StringProperty year where obj.name=doc.fullName and obj.className='GoogleSeasonofDocs.Code.ProjectClass' and doc.name<>'ProjectClassTemplate' and year.id.id = obj.id and year.id.name = 'year' and year.value = '${gsocYear}' order by doc.creationDate")
4 #set ($projects= $xwiki.searchDocuments($sql))
5
6 #set ($selectedProjectDocuments = [])
7 #set ($selectedStudents = [])
8 #set ($availableMentorsMap = {})
9 #foreach ($item in $projects)
10 #set ($projectDocument = $xwiki.getDocument($item))
11 #set ($projectObject = $projectDocument.getObject('GoogleSeasonofDocs.Code.ProjectClass'))
12 #set ($projectStatusValue = $projectObject.getProperty('status').value)
13 #if ("$!projectStatusValue" != '' && $projectStatusValue != 'proposed')
14 #set ($projectStudent = $projectObject.getProperty('assignee').value)
15 #set ($discard = $selectedProjectDocuments.add($projectDocument))
16 #set ($discard = $selectedStudents.add($projectStudent))
17 #end
18 #set ($projectMentors = $projectObject.getValue('leader').split(','))
19 #foreach ($projectMentor in $projectMentors)
20 ## Store it like this so that we can sort by the reference lowercase (poor man's ignore case sorting).
21 #set ($discard = $availableMentorsMap.put($projectMentor.trim().toLowerCase(), $projectMentor.trim()))
22 #end
23 #end
24
25 #macro (displayProject $project $item $student)
26 #set ($discard = $project.use('GoogleSeasonofDocs.Code.ProjectClass'))
27 (% style="border: 1px dotted #CCC; margin: 0 auto 10px; padding: 0 8px 4px;" %)(((
28 (% style="margin-top: 0; padding-top: 22px" %)
29 == [[$project.displayTitle>>$item]] #if ("$!student" != '')by ${xwiki.getUserName($student, false)}#end ==
30 (% class="projectdesc" %)(((
31 $project.details
32 (% class="clearfloats" %)((()))
33 )))
34 (% style="font-size: 80%; color: #888;" %)(((
35 #if ("$!project.getValue('leader')" != '')
36 //Coordinated by// $project.display('leader', 'view')
37 #end
38 #if ("$!project.getValue('assignee')" != '')
39 //Student// $project.display('assignee', 'view')
40 #end
41 #if ("$!project.getValue('workload')" != "")
42 //Estimated workload//: **$project.display('workload', 'view')**.
43 #end
44 [[Read more...>>$item]]
45 )))
46 )))
47 #end
48 {{/velocity}}
49
50 {{box cssClass="floatinginfobox" title="**Contents**"}}
51 {{toc/}}
52 {{/box}}
53
54 This page hosts information and project ideas for the open source project [[XWiki>>http://www.xwiki.org]] related to the {{velocity}}[[Google Season of Docs ${gsocYear}>>https://developers.google.com/season-of-docs//]]{{/velocity}} mentorship program.
55
56 XWiki has also been participating to [[Google Summer of Code>>dev:GoogleSummerOfCode.WebHome]] since 2007 and [[Google Code-In>>dev:GoogleCodeIn.WebHome]] since 2017.
57
58 = About GSoD =
59
60 You can learn a lot about the program by reading the {{velocity}}[[GSoD Documentation>>https://developers.google.com/season-of-docs/docs/]]{{/velocity}}. The timeline of this year's edition is given {{velocity}}[[here>>https://developers.google.com/season-of-docs/docs/timeline]]{{/velocity}}.
61
62 = Getting Started =
63
64 Being part of the XWiki community means knowing [[our rules and practices>>GoogleSeasonofDocs.Guidelines]]. As a GSOC student you need to make sure you read and apply our guidelines.
65
66 {{velocity}}
67 = Selected Projects for GSoD ${gsocYear} ($selectedProjectDocuments.size()) =
68
69 The projects below, out of all the proposed projects, have been selected to participate in GSoD ${gsocYear}.
70
71 #foreach ($selectedProjectDocument in $selectedProjectDocuments)
72 #set ($studentIndex = $mathtool.sub($foreach.count, 1))
73 #displayProject($selectedProjectDocument $selectedProjectDocument.fullName "$!selectedStudents.get($studentIndex)")
74 #end
75 {{/velocity}}
76
77 = Proposed Projects ({{velocity}}$projects.size(){{/velocity}}) =
78
79 Writers can come up with their own ideas, but the ideas need to be proposed and discussed on the [[mailing list>>Community.MailingLists]].
80
81 {{info}}
82 You can contribute to this list! We encourage would-be mentors to propose ideas or even to revive old ideas from the previous years, but, if you do, make sure to **assign yourselves as mentors** for the proposed project. Proposals without mentors will be discarded, as we have learned from previous years/programs that they are counter-productive.
83
84 Writers are also encouraged to propose projects, but make sure you first run your idea through the community (see the [[Contact Us>>||anchor="HContactus"]] section below) and that you **find a mentor** interested in the idea that you can assign to the project proposal.
85
86 We also recommend writers interested in joining XWiki for GSoD {{velocity}}${gsocYear}{{/velocity}} to **manifest themselves as early as possible** so that we can start working with them on this project list.
87 {{/info}}
88
89 {{velocity}}
90 #foreach ($item in $projects)
91 #set($project = $xwiki.getDocument($item))
92 * {{html}}<a href="#H$util.encodeURI("${project.displayTitle.replaceAll('[^a-zA-Z0-9\.]', '')}")">$project.displayTitle</a>{{/html}}
93 #end
94 #if($hasEdit)
95
96 {{html}}
97 <form action="$xwiki.getDocument("${doc.space}.CreateProject").getURL()" id="newproject">
98 <div>
99 <input type='hidden' name='parent' value="$doc.fullName" />
100 <input type='hidden' name='classname' value='GoogleSeasonofDocs.Code.ProjectClass' />
101 <input type='hidden' name='template' value='GoogleSeasonofDocs.Code.ProjectClassTemplate' />
102 <input type='hidden' name='space' value="$doc.space"/>
103 <input type='hidden' name='xaction' value='create'/>
104 <input type='text' name='page' value='' size='30'/>
105 <input type='hidden' name='year' value="${gsocYear}" size='30'/>
106 <span class='buttonwrapper'><input class='button' type='submit' value='Add this Project'/></span>
107 </div>
108 </form>
109 {{/html}}
110
111 #end
112
113 #foreach ($item in $projects)
114 #set($project = $xwiki.getDocument($item))
115 #displayProject($project $item '')
116 #end
117 {{/velocity}}
118
119 = Mentors ({{velocity}}$availableMentorsMap.size(){{/velocity}}) =
120
121 The following community members are assigned to mentor the proposed projects:
122
123 {{velocity}}
124 {{html clean="false"}}
125 #foreach ($mentor in $sorttool.sort($availableMentorsMap.keySet()))
126 #displayUser($availableMentorsMap.get($mentor))
127 #end
128 {{/html}}
129 {{/velocity}}
130
131 = Contact us =
132
133 You can ask for more information about each project proposal and interact with the community and mentors through the usual communication channels: [[mailing list>>Community.MailingLists]] ([[devs AT xwiki.org>>http://lists.xwiki.org/mailman/listinfo/devs]]) or the [[Matrix/IRC channel>>Community.Chat]].
134
135 = What's next after GSoD? =
136
137 First and foremost: Thank you for having participated to XWiki!
138
139 We want to keep you in the community for as long as possible. We understand that you may have projects to carry on and won't have the time to continue participating much immediately after GSoD. However, we're really keen to see you coming back to this community when things settle a bit more and you get some time again.
140
141 Here's some visibility and ideas of what's next after you've completed a GSoD project and opportunities you may have:
142
143 * You could be voted as [[Committer>>doc:Community.Committership]]
144 * You could get hired by one of the [[companies doing some business on top of the XWiki project>>doc:xwiki:Main.Supporters.SponsoringCompanies.WebHome]]
145 * Become a [[Google Code-In mentor>>doc:GoogleCodeIn.WebHome]]
146 * You'll be able to add a nice line to your CV about having participated to an open source project :)
147 * You can ask for recommendations on LinkedIn, Facebook, etc about your work as a GSoD student
148 * (Future, doesn't exist ATM) Your name on the [[Hall of Fame>>doc:Community.HallOfFame]]
149 * (Future, doesn't exist ATM) Receive an XWiki GSoD t-shirt
150 * (Future, doesn't exist ATM) Be sponsored to take about XWiki at conferences
151 * (Future, doesn't exist ATM) Be able to implement some bounties for XWiki and get paid for it
152 * (Future, doesn't exist ATM) Be invited to physically participate to an XWiki conference
153
154 = Org Admin Resources =
155
156 If you are one of this year's XWiki Organization Administrators, make sure to check out the [[Organization Admin Guide>>GoogleSeasonofDocs.OrganizationAdministratorGuide]].
157
158 = Previous GSoD editions =
159
160 No such thing yet :)

Get Connected