-
Notifications
You must be signed in to change notification settings - Fork 120
/
index.html
513 lines (506 loc) · 32.7 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="Python's Google Summer of Code Page">
<meta name="google-site-verification" content="EVShtJLdVKN58OupOAYPkH6QRA3i-J8q4ZEklgFiZhE" />
<title>Python GSoC – Home</title>
<link rel="stylesheet" href="https://unpkg.com/[email protected]/build/pure-min.css" integrity="sha384-nn4HPE8lTHyVtfCBi5yW9d20FjT8BJwUXyWZT9InLYax14RDjBj46LmSztkmNP9w" crossorigin="anonymous" >
<!--[if lte IE 8]>
<link rel="stylesheet" href="https://unpkg.com/[email protected]/build/grids-responsive-old-ie-min.css">
<![endif]-->
<!--[if gt IE 8]><!-->
<link rel="stylesheet" href="https://unpkg.com/[email protected]/build/grids-responsive-min.css">
<!--<![endif]-->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.8.1/css/all.min.css" integrity="sha384-50oBUHEmvpQ+1lW4y57PTFmhCaXp0ML5d60M1M7uH2+nqUivzIebhndOJK28anvf"
crossorigin="anonymous" >
<!--[if lte IE 8]>
<link rel="stylesheet" href="css/side-menu-old-ie.css">
<![endif]-->
<!--[if gt IE 8]><!-->
<link rel="stylesheet" href="css/side-menu.css">
<!--<![endif]-->
<link rel="stylesheet" href="css/python-gsoc.css">
</head>
<body>
<!-- Menu toggle -->
<a href="#menu" id="menuLink" class="menu-link">
<!-- Hamburger icon -->
<span></span>
</a>
<div id="layout">
<div id="menu">
<div class="pure-menu">
<a class="pure-menu-heading" href="index.html">Python GSoC</a>
<ul class="pure-menu-list">
<li class="pure-menu-item"><a href="index.html#gettingstarted" class="pure-menu-link">Getting
Started</a>
</li>
<li class="pure-menu-item"><a href="contributors.html" class="pure-menu-link">Contributors</a></li>
<li class="pure-menu-item"><a href="mentors.html" class="pure-menu-link">Mentors</a></li>
<li class="pure-menu-item"><a href="ideas.html" class="pure-menu-link">Project Ideas</a></li>
<li class="pure-menu-item"><a href="deadlines.html" class="pure-menu-link">Deadlines</a></li>
<li class="pure-menu-item"><a href="contributors.html#faq" class="pure-menu-link">FAQ</a></li>
<li class="pure-menu-item"><a href="mentors.html#sub-orgs" class="pure-menu-link">Info for Sub-orgs</a></li>
<li class="pure-menu-item"><a href="blogs.html" class="pure-menu-link">Blogs</a></li>
<li class="pure-menu-item"><a href="index.html#contact" class="pure-menu-link">Contact</a></li>
</ul>
</div>
</div>
<!-- menu -->
<div class="main">
<div class="header">
<h1>Python Summer of Code</h1>
<p>
Contributors: get paid to work on open source projects!
</p>
<p>
Projects: find new contributors and mentor the next generation!
</p>
</div>
</div>
<!-- splash container -->
<div class="ribbon l-box-lrg pure-g">
<div class="content">
<div class="pure-u-1 pure-u-md-1-1 pure-u-lg-1-1">
<h2 class="content-head content-head-ribbon is-center">What is it?</h2>
</div>
<div class="pure-u-1 pure-u-md-1-2 pure-u-lg-1-2">
<div class="padded-cell">
<h3 class="content-subhead content-head-ribbon">
<i class="fab fa-python"></i>
Python
</h3>
<p>
Python is a popular high-level programming language. It is a general-purpose language used
by
scientists, developers, and many others who want to work more quickly and integrate systems
more effectively.
</p>
</div>
</div>
<div class="pure-u-1 pure-u-md-1-2 pure-u-lg-1-2">
<h3 class="content-subhead content-head-ribbon">
<i class="fas fa-cogs"></i>
Google Summer of Code
</h3>
<p>
Google Summer of Code (GSoC) is a global program that offers new contributors over 18 an
opportunity to be paid for contributing to an open source project over a three month period.
</p>
</div>
<div class="pure-u-1 pure-u-md-1-1 pure-u-lg-1-1">
<p>
The Python Software Foundation (PSF) is an organization devoted to advancing open source
technology related to the Python programming language.
Since 2005, the Python Software Foundation has participated in Google Summer of Code, serving
as an "umbrella organization" to a variety of Python-related projects, as well as sponsoring
projects related to the development of the Python language. Python provides mentors, Google
provides the program (and the money!), and GSoC contributors write code!
</p>
</div>
<div class="warning">
<div class="pure-u-1 pure-u-md-1-1 pure-u-lg-1-1">
<p>Python is intending to apply to GSoC 2024.</p>
<p>Contributors: Please start with the <a href="https://python-gsoc.org/#gettingstarted">Python GSoC getting started guide</a>. We won't have mentors signed up and ready to help you or well-defined project ideas ready until February 2024 or so, but you can go ahead and get some practice on any open source project while you wait.
</p>
<p>Mentors and sub-orgs: please <a href="#contact">contact the org admins</a> if you want to be part of GSoC 2024.</p>
</div>
</div>
</div>
</div>
<!-- ribbon What Is it? -->
<a id="gettingstarted"></a>
<div class="content">
<h2 class="content-head is-center">How do I get started?</h2>
<div class="pure-g">
<div class="l-box pure-u-1 pure-u-md-1-1 pure-u-lg-1-1">
<h3 class="content-subhead">
<i class="fa fa-rocket"></i>
Choose an organization.
</h3>
<p>
There's hundreds of thousands of projects that use Python, and you
need to narrow
down the list before you can get help or do much that's useful.
See <a href="contributors.html#choosing">How
do I choose a project or sub-org?</a> for ideas
on how to do that.
<p><em>Any</em> open source experience will help you prepare for GSoC,
so don't worry too much about what project you try first and don't be afraid
to change your mind! When we know which sub-orgs will be participating,
they'll be listed <a href="ideas.html">with the project ideas</a>.
</p>
</div>
<div class="l-box pure-u-1 pure-u-md-1-2 pure-u-lg-1-3">
<div class="padded-cell">
<h3 class="content-subhead">
<i class="fa fa-laptop"></i>
Set up your own development environment.
</h3>
<p>
Document what you do so you can remember it later, and so you can
help others if they get stuck! And if you get stuck, don't be afraid to ask
for help.
</p>
</div>
</div>
<div class="l-box pure-u-1 pure-u-md-1-2 pure-u-lg-1-3">
<div class="padded-cell">
<h3 class="content-subhead">
<i class="fa fa-comments"></i>
Start communicating with the developers.
</h3>
<p>
Join the mailing list, IRC channel, or any other communication
channels the developers use. Listen, get to know the people involved, and ask
questions.</p>
<ul>
<li>Read first to see if your question has already been answered.
We get a lot of repeat questions!
</li>
<li>Communicate in public (not in private). Most open source work is done in the open,
so
demonstrate that you can do that!
</li>
</ul>
</div>
</div>
<div class="l-box pure-u-1 pure-u-md-1-2 pure-u-lg-1-3">
<h3 class="content-subhead">
<i class="fa fa-bug"></i>
Try to fix a bug.
</h3>
<p>
Many projects have these tagged as "good first issue" "easy" "bite-size" or
"beginner-friendly" -- do a search to see what comes up. Competition for the easiest
ones can be fierce, so don't be afraid to try something harder if you think
you might know what to do.
</p>
<p>
Can't find a bug? Other ideas: find typos and fix them. Improve test coverage by
writing new tests. Improve documentation. Use a tool like Pylint or Bandit to see
if you can find new issues.
</p>
</div>
<div class="l-box pure-u-1 pure-u-md-1-2 pure-u-lg-1-3">
<div class="padded-cell">
<h3 class="content-subhead">
<i class="fa fa-flag"></i>
Find bugs and report them.
</h3>
<p>
Hopefully you won't encounter too many, but it's always a good idea to get familiar with
your
project's bug reporting process.
</p>
</div>
</div>
<div class="l-box pure-u-1 pure-u-md-1-2 pure-u-lg-1-3">
<div class="padded-cell">
<h3 class="content-subhead">
<i class="fa fa-file"></i>
Help with documentation.
</h3>
<p>
As a beginner in your project, you're going to see things that are confusing that more
experienced developers may not notice. Take advantage of your beginner mindset and make
sure to
document anything you think is missing!
</p>
</div>
</div>
<div class="l-box pure-u-1 pure-u-md-1-2 pure-u-lg-1-3">
<h3 class="content-subhead">
<i class="fa fa-heart"></i>
Help others.
</h3>
<p>
Most projects are looking for not just coders, but good community members who people like to
work with. Show your community skills by helping others and make a great impression come
selection time!
</p>
</div>
</div>
</div>
<!-- getting started -->
<a id="apply"></a>
<div class="ribbon l-box-lrg pure-g">
<div class="content">
<div class="pure-u-1 pure-u-md-1-1 pure-u-lg-1-1">
<h2 class="content-head content-head-ribbon">How to apply</h2>
<p>Short application checklist:</p>
<ol>
<li><strong>Read the links and instructions</strong> given on this site -- All of it! we've
tried
to give you all
the information you need to be an awesome GSoC applicant.
<li><strong>Choose a sub-org</strong> (<a href="/ideas.html">check the list here</a>). Applications
not
associated with a sub-org typically get rejected.
<li><strong>Talk with your prospective mentors</strong> about what they expect of GSoC
applicants and get help from them to refine your project ideas. Listening to
your mentors' recommendations is very important at this stage!
</li>
<li><strong>Prepare a patch for that sub-org</strong>. Usually we expect GSoC contributors to fix a bug
and
have made a pull
request (or equivalent). Your code doesn't have to be
accepted and merged, but it does have to be visible to the public and it does have to be
your
own work
(mentor help is ok, code you didn't write is not).
</li>
<li>
<strong>Write your application (with help from your mentors!)</strong>
We have an <a href="https://github.com/python-gsoc/python-gsoc.github.io/blob/master/ApplicationTemplate.md">application template</a> to help you make sure you include all the information we expect.
All applications <em>must</em> go through <a href="https://summerofcode.withgoogle.com/">Google's application system</a>; we can't
accept
any application
unless it is submitted there.
<ul>
<li>Use a descriptive title and include your sub-org name in Google's system. Good
example:
"Mailman:
Improve
archive search" Bad example: "My gsoc project"
<li>Make it easy for your mentors to give you feedback. If you're using Google docs, you can
enable comments and submit a "draft" to your mentors.
If you're using a format that doesn't accept comments, make sure your email is on
the
document and don't forget to check for
feedback!
</li>
</ul>
</li>
<li><strong>Submit your application to Google before the deadline.</strong> We actually
recommend you submit a few days early in case you have internet problems or
the system is down. Google does not extend this deadline, so it's best to be
prepared early! You can edit your application up until the system
closes.
</li>
</ol>
<div class="pure-u-1 pure-u-md-1-1 pure-u-lg-1-1">
<h3 class="content-subhead content-head-ribbon">
<i class="fas fa-smile-wink"></i>
Tip
</h3>
<p><strong>Communication</strong> is probably the most
important part of the application process. Talk to the mentors and other
developers, <em>listen</em> when they give you advice,
and demonstrate that you've understood by incorporating their feedback into
what you're proposing. We reject a lot of applicants who haven't listened to mentor
feedback. If your mentors tell you that a project idea won't work for them, you're
probably not going to get accepted unless you change it.
</p>
<p>More tips are available in our <a href="contributors.html">contributor's guide and FAQ</a>.
</div>
<div class="pure-u-1 pure-u-md-1-1 pure-u-lg-1-1">
<h3 class="content-subhead content-head-ribbon">
<i class="fas fa-file-invoice"></i>
What goes in an application?
</h3>
An ideal application will contain 5 things:
<ol>
<li>A <strong>descriptive title</strong> including the name of the <strong>sub-org</strong>
you
want to work with
(if this is missing, your application may be rejected!)
</li>
<li><strong>Information about you</strong>, including contact information.</li>
<li>Link to a <strong>code contribution</strong> you have made to your organization.
(Usually this is a link to a pull request.)
</li>
<li>Information about your <strong>proposed project</strong>. This should be fairly
detailed
and include
a timeline.
</li>
<li><strong>Information about other commitments</strong> that might affect your ability to
work
during the GSoC period.
(exams, classes, holidays, other jobs, weddings, etc.) We can work around a lot of
things,
but
it helps
to know in advance.
</li>
</ol>
<p>We also provide an <a href="https://github.com/python-gsoc/python-gsoc.github.io/blob/master/ApplicationTemplate.md">application template</a> to help you get started.
<!-- <p>Want to see previous successful applications? <a href="https://blogs.python-gsoc.org/en/">Many previous Python GSoC contributors have proposals available with their blogs</a> -->
</div>
<div class="pure-u-1 pure-u-md-1-1 pure-u-lg-1-1">
<h3 class="content-subhead content-head-ribbon">
<a id="bad"></a>
<i class="fa fa-times"></i>
What do bad applications look like?
</h3>
<p>Python regularly discards about half of our the GSoC applications because they aren't valid. Here's what most rejected applications look like:</p>
<ol>
<li><strong>Cover letter and/or resume only.</strong> This isn't enough information to match you with a mentor and project, so it will land you in our "ignore" pile.</li>
<li><strong>A blank file.</strong></li>
<li><strong>A random ebook or other file on your hard drive.</strong> Not only is this not a valid GSoC application, it's often copyright infringement.</li>
<li><strong>Submitted your grand idea for improving Python the language.</strong> You can read more about how to propose enhancements to python in <a href="https://peps.python.org/pep-0001/">PEP-1</a>, but GSoC is not the place for that.</li>
<li><strong>Project ideas not associated with a sub-org.</strong> Often these are related to current popular topics. For example, in 2020 we got a lot of covid-tracking application proposals. If you want to work on generative AI, LLMs, crypto, machine learning, big data, etc please apply to a do a project suggested by a mentor or work directly with a sub-org to make sure your project idea is something they actually want. Most "hot topic" ideas we get are very poorly researched, infeasible, or otherwise not viable GSoC projects.</strong>
<li><strong>Really simple python application ideas that are not 175 or 350 hours worth of work</strong> (For example, a python "hello world" script. Seriously. We get several of these most years.)</li>
<li><strong>Random python code converted to a pdf.</strong></li>
<li><strong>A small business or personal open source project idea.</strong> GSoC is not a startup incubator, sorry. You need to apply to work with an open source project that already exists and has mentors available.</li>
</ul>
</div>
</div>
</div>
</div>
<!-- Contact -->
<a id="contact"></a>
<div class="ribbon l-box-lrg pure-g">
<div class="content">
<div class="pure-u-1 pure-u-md-1-1 pure-u-lg-1-1">
<h2 class="content-head content-head-ribbon">Getting in Touch</h2>
<p>
Please note that Python has a <a href="https://www.python.org/psf/codeofconduct/">Community
Code of Conduct</a> and mentors and
contributors working with the PSF are asked to abide by it as members of the
Python community.
</p>
</div>
<div class="pure-g">
<div class="pure-u-1 pure-u-md-1-2 pure-u-lg-1-3">
<div class="padded-cell">
<h3 class="content-subhead content-head-ribbon">
<i class="fa fa-envelope"></i>
Mailing Lists.
</h3>
<p>Sign up to the <a
href="https://mail.python.org/mailman/listinfo/gsoc-general">gsoc-general(at)python.org</a>
mailing list to get updates, reminders, and to discuss questions. Please join the
list
<em>before</em> you send a message!
</p>
<p>The most common questions are answered here:</p>
<ul>
<li><a href="#gettingstarted">How do I get started?</a></li>
<li><a href="contributors.html#choosing">What project should I choose?</a></li>
</ul>
</div>
</div>
<div class="pure-u-1 pure-u-md-1-2 pure-u-lg-2-3">
<h3 class="content-subhead content-head-ribbon">
<i class="fa fa-comments"></i>
Live chat
</h3>
<ul>
<li>
Please wait for an answer! Many mentors are busy and can't chat right away.
</li>
<li>
Matrix room at <a
href="https://matrix.to/#/#python-gsoc:matrix.python-gsoc.org">
#python-gsoc:matrix.python-gsoc.org</a> (Includes Android client!)
</li>
</ul>
</div>
<div class="pure-u-1 pure-u-md-1-1 pure-u-lg-1-1">
<h3 class="content-subhead content-head-ribbon">
<i class="fa fa-users"></i>
Specific sub-orgs
</h3>
<p>To talk with people from a specific sub-org, <a href="/ideas.html">check their ideas
page listing</a> for their mailing lists, IRC, and other contact information.
</p>
</div>
</div>
<div class="pure-u-1 pure-u-md-1-1 pure-u-lg-1-1">
<h3 class="content-subhead content-head-ribbon">
<i class="fa fa-heart"></i>
Tips!
</h3>
<ol>
<li><strong>Read first.</strong> We've tried to answer the common questions on this site,
and
we get asked things like "<a href="#gettingstarted">How do I get started?</a>" and
"<a href="contributors.html#easybugs">Where do I find easy bugs?</a>" a lot. Check the
<a href="contributors.html#faq">Frequently Asked Questions (FAQ) on the GSoC contributor page</a> for
more!
</li>
<li><strong>Be Patient!</strong> Our mentors typically have day jobs and can't always answer
right-away. If you can't hang out on IRC for an answer, send an email instead.
</li>
<li><strong>Ask questions directly on IRC.</strong> You don't need to introduce
yourself or say hi first, just ask away!
</li>
<li><strong>Communicate in public.</strong> That lets many mentors read your question so you
can usually get an answer faster.
</li>
</ol>
<p><strong>For mentors</strong>: All the gsoc admins can be reached at
gsoc-admins(at)python(dot)org if you have questions about participating.
(GSoC contributors should email gsoc-general(at)python.org with all of their
questions, unless they are of a sensitive personal nature.)
</p>
</div>
<div class="pure-u-1 pure-u-md-1-1 pure-u-lg-1-1">
<h3 class="content-subhead content-head-ribbon">
<i class="fa fa-crown"></i>
Org admins
</h3>
<p>The 2024 Python Software Foundation (PSF) org admin team:</p>
<ul>
<li>Terri Oda (@terri:python-gsoc.org on Matrix) - focus areas: figurehead, making final decisions,
website/documentation
</li>
<li>John Hawley (@warthog9:python-gsoc.org on Matrix) - focus areas: infrastructure, advice, emergency
mentoring/mentor supervision.
</li>
<li>Matthew Lagoe (Botanic on IRC) - focus areas: GSoC contributor blogs, irc bot, making sure
things happen on time
</li>
<li>Morgan Gangwere (indrora on IRC, <a href="https://social.sdf.org/@indrora" target="_blank">@[email protected]</a> on the fediverse) - org-admin; focus: backseat quarterbacking, tooling later on.</li>
<li>Ben Lewis (ben_zen on IRC, <a href="https://social.sdf.org/@ben_zen" target="_blank">@[email protected]</a>
on the fediverse, as well as <a href="https://social.python-gsoc.org/@ben">@[email protected]</a>) - focus areas:
mentor & org communication, timetables, coffee
</li>
<li>Kushal Das (@kushaldas:matrix.org on Matrix) - focus areas: advice, time zone coverage</li>
</ul>
<p>The org admins can be reached at gsoc-admins(at)python(dot)org (for mentors)
GSoC contributors should almost always visit <a href="#gettingstarted">Getting Started</a> first, and
email
gsoc-general(at)python.org only if you get stuck.
</p>
<p>We also have some "org admins emeritus" who may be able
to help you:
</p>
<ul>
<li>James Lopeman (meflin on IRC)</li>
<li>Florian Fuchs (florianf on IRC)</li>
<li>Stephen Turnbull (yaseppochi on IRC)</li>
</ul>
</div>
</div>
</div>
<!-- Other -->
<div class="content">
<h2 class="content-head is-center">Other Stuff</h2>
<div class="pure-g">
<div class="l-box pure-u-1 pure-u-md-1-1 pure-u-lg-1-1">
<ul>
<li>Found a typo? Want to improve this site? <a href="https://github.com/python-gsoc/python-gsoc.github.io">The
source code
is on GitHub and we welcome pull requests!</a>
</li>
<li>Want to use some of the text of this site? It is now <a href="https://github.com/python-gsoc/python-gsoc.github.io/blob/master/LICENSE.md">licensed
under CC-BY-4.0</a>.
</li>
<li>This site was developed using <a href="https://purecss.io">purecss.io</a> which is licensed
under
the <a href="https://github.com/pure-css/pure-site/blob/master/LICENSE.md">BSD license</a>
</li>
</ul>
</div>
</div>
</div>
<!-- Other -->
</div>
<script src="js/ui.js"></script>
</body>
</html>