Difference between revisions of "Google Summer of Code 2022"

From Software Heritage Wiki
Jump to navigation Jump to search
(→‎Ideas list: Replace the internship list with a link, as we can't provide the duration+difficulty information in GSoC terms directly on internship pages)
 
(6 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<div style="text-align: center; font-size: 1.2em; border: solid 1px black; padding: 1em;">
 
This page is a work in progress; the list of retained organizations for Google Summer of Code 2022 has not been determined yet.
 
</div>
 
 
 
 
[[File:GSoCLogo.png|512px]]
 
[[File:GSoCLogo.png|512px]]
  
Line 31: Line 26:
 
# Follow our [https://docs.softwareheritage.org/devel/developer-setup.html developer setup tutorial]: it will make sure you have the source code of our software stack locally available and that you can run unit tests
 
# Follow our [https://docs.softwareheritage.org/devel/developer-setup.html developer setup tutorial]: it will make sure you have the source code of our software stack locally available and that you can run unit tests
 
# Create an account on our [https://forge.softwareheritage.org development forge]
 
# Create an account on our [https://forge.softwareheritage.org development forge]
# Familiarize yourself with our [[Code review in Phabricator|code review workflow]]
+
# Familiarize yourself with our [https://docs.softwareheritage.org/devel/contributing/phabricator.html? code review workflow]
# Make at least one simple change to any one of our [https://docs.softwareheritage.org/devel/ software components] and submit it as a [https://forge.softwareheritage.org/differential/ diff] for code review, following the above workflow. [[Easy hacks]] and [https://forge.softwareheritage.org/project/view/20/ Web UI] issues are good options for what to fix, but feel free to submit any patch you think it might be useful.
+
# Make at least one simple change to any one of our [https://docs.softwareheritage.org/devel/ software components] and submit it as a [https://forge.softwareheritage.org/differential/ diff] for code review, following the above workflow (no need to ask for permissions). [[Easy hacks]] and [https://forge.softwareheritage.org/project/view/20/ Web UI] issues are good options for what to fix, but feel free to submit any patch you think it might be useful.
  
 
=== What to include in your application ===
 
=== What to include in your application ===
Line 44: Line 39:
 
== Ideas list ==
 
== Ideas list ==
  
Below you can find a list of project ideas that are good options for a reasonably-sized GSoC project.
+
Below you can find a list of project ideas that are good options for a reasonably-sized GSoC project (check individual idea pages for expected duration and difficulty of each task):
They include both GSoC-specific tasks (that are only available as part of our GSoC participation)
 
 
 
 
<DynamicPageList>
 
<DynamicPageList>
 
category = Available GSoC task
 
category = Available GSoC task
Line 53: Line 46:
 
</DynamicPageList>
 
</DynamicPageList>
  
We also have a [[Internships|list of internship topics]], which you can use for ideas when applying to GSoC with us. Expect them to be on the harder than usual GSoC tasks, and they will require 350 hours.
+
We also have a list of internship topics below, which you can use for ideas when applying to GSoC with us.
 +
Expect each internship topic to require 350 hours and to be on the harder side than GSoC-specific tasks.
 +
 
 +
<DynamicPageList>
 +
category = Available internship
 +
ordermethod = sortkey
 +
order = ascending
 +
</DynamicPageList>
  
 
All project ideas above are just suggestions, don't feel obliged to pick one of them if there is nothing that fits your taste and abilities.
 
All project ideas above are just suggestions, don't feel obliged to pick one of them if there is nothing that fits your taste and abilities.
Line 60: Line 60:
 
== Contact ==
 
== Contact ==
  
GSoC students are encouraged to get in touch with the Software Heritage community using the standard development communication channels, and in particular our [[IRC]] channel (#swh-devel on [https://libera.chat/ Libera Chat]) and mailing list (swh-devel).
+
GSoC students are encouraged to get in touch with the Software Heritage community using the standard development communication channels, and in particular our [[IRC]] channel (#swh-devel on [https://libera.chat/ Libera Chat]) and mailing list (swh-devel). Prefer public channels over contacting mentors directly.
  
 
See our [https://www.softwareheritage.org/community/developers/ development information page] for details.
 
See our [https://www.softwareheritage.org/community/developers/ development information page] for details.

Latest revision as of 17:23, 18 April 2022

GSoCLogo.png

General information

This page is the central point of information for Software Heritage participation into the Google Summer of Code program in 2022.

Google Summer of Code is a program where Google pays students stipends to work over the (northern hemisphere) summer on free software projects such as Software Heritage. Each student works with mentors from the community to complete a software project.

I want to participate as a student

Great!, we are very glad for your interest in contributing to Software Heritage and we are looking forward to work together.

Prerequisites

The following prerequisites apply to all Software Heritage GSoC projects:

  • Python 3 is our language of choice, you should be fluent with that language to apply
  • Git is our version control system of choice, you should be familiar with it to apply
  • basic knowledge in using a CLI
  • additional prerequisites depend on the project you will work on; check project descriptions for details

Before you apply

Here are the steps you should follow before applying, to make sure you have a good grasp of what we are doing at Software Heritage and how we do it:

  1. Follow our developer setup tutorial: it will make sure you have the source code of our software stack locally available and that you can run unit tests
  2. Create an account on our development forge
  3. Familiarize yourself with our code review workflow
  4. Make at least one simple change to any one of our software components and submit it as a diff for code review, following the above workflow (no need to ask for permissions). Easy hacks and Web UI issues are good options for what to fix, but feel free to submit any patch you think it might be useful.

What to include in your application

Make sure that your application includes the following information:

  • Describe the specific project you want to work on. What do you want to achieve? Why is it important? Why is it useful for Software Heritage? The project might be one of the project ideas that we have prepared below, or something else entirely that you want to contribute to Software Heritage. Your source code archival pet peeve, surprise us!
  • Detail your work plan: a brief description of how you plan to go about your project, including a list of deliverables and a timeline of when do you expect them to be available.
  • Include a reference to the diff you submitted before applying (see the "Before you apply" section above).

Ideas list

Below you can find a list of project ideas that are good options for a reasonably-sized GSoC project (check individual idea pages for expected duration and difficulty of each task):


We also have a list of internship topics below, which you can use for ideas when applying to GSoC with us. Expect each internship topic to require 350 hours and to be on the harder side than GSoC-specific tasks.


All project ideas above are just suggestions, don't feel obliged to pick one of them if there is nothing that fits your taste and abilities. Feel free to propose something else that you are excited about and that contributes to improve the Software Heritage archive: we will be happy to consider it!

Contact

GSoC students are encouraged to get in touch with the Software Heritage community using the standard development communication channels, and in particular our IRC channel (#swh-devel on Libera Chat) and mailing list (swh-devel). Prefer public channels over contacting mentors directly.

See our development information page for details.

Timeline

See the official Google Summer of Code timeline.