Post

P4 GSoC 2025 Contributor Guidlines

P4 GSoC 2025 Contributor Guidlines

P4 GSoC 2025 Contributor Guidance

[!Warning] Please note that proposals completely generated using Large Language Models (LLMs) will not be accepted. Using LLM to assist you is acceptable, but letting LLM replace you is not. If you do use LLM, use your best judgement to use it responsibly. During the application process, if we find out it’s easier to work with an LLM directly than working with you, it will be an immediate reject.

Before the Application

Application Process

  1. Email mentors (both primary and support) of your interested projects.
    • You only need to email mentors whose emails are listed.
    • We encourage you to reach out to mentors as early as possible, so we have enough time to know about you and connect with you.
    • In your first email to mentors, please attach a draft proposal (see template below). It doesn’t have to be complete. But we expect to see a draft so we can start the conversation, and help you polish it.
  2. Apply through the GSoC website.
    • Before submitting your formal application, make sure you have communicated with mentors through emails already.
  3. Wait for your application result.

Proposal Template

  • Please follow this guide and use these examples (1 & 2) as reference.
  • The proposal structure is up to you to decide, but make sure it contains the following elements as mentioned in the guide, with a few additional notes:
    • Name and Contact Information
      • Please also include a link to your GitHub profile.
    • Title
    • Synopsis
    • Benefits to Community
    • Deliverables
    • Related Work
    • Biographical Information
      • Please structure this section as a typical 1-page CV/resume.
      • If you have any prior open source contribution, or P4 related experience, make sure you list and emphasize them in this section.
    • Questionnaire
      • Please include your answers to the following questions:
        • Why are you interested in our organization?
        • Why are you interested in this particular project?
        • What makes you a good candidate to work on this project?
        • What do you expect to get out of this GSoC program?
    • Qualification Task
      • The qualification task is to make a pull request in one of the following repos:
        • https://github.com/p4lang/tutorials
        • https://github.com/p4lang/p4c
      • It’s suggested to check out existing issues for inspirations, but your pull request could be anything meaningful.
      • Please read this guide on how to write a good pull request first.
      • The pull request doesn’t have to be merged for the qualification task to be considered complete. But if you can manage to get it merged, that’s a bonus point for your application.
      • Please attach the link to your pull request in the proposal.

P4 Learning Materials

For all our projects, it’s good to know some P4. Here are some learning materials:

Communication Channels

  • For general P4 related questions, use the P4 forum.
  • For more real-time and personal communications, use our Zulip workspace.
    • For GSoC related discussion, we have a #gsoc channel on Zulip.
  • For other communication channels, check out https://p4.org/join/.
This post is licensed under CC BY 4.0 by the author.