Make GSoC participant guidelines timeless (remove hardcoded dates and year references)#1876
Make GSoC participant guidelines timeless (remove hardcoded dates and year references)#1876
Conversation
✅ Deploy Preview for earnest-hotteok-b1e1bf ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
There was a problem hiding this comment.
Pull request overview
This PR updates the HSF GSoC participant guidelines to be more year-agnostic by replacing hardcoded dates with relative timeframes and modernizing communication guidance, while also including a small layout HTML cleanup and a footer styling tweak.
Changes:
- Replaced specific GSoC dates/deadlines in the participant guideline with indicative timeframes and added an “indicative dates” disclaimer.
- Updated guideline links/anchors to avoid year-specific IDs (but see review comments about a now-broken anchor).
- Minor site presentation updates: center-align footer text and fix/improve markup in the main layout (row class quoting, paragraph structure, announcement block).
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
gsoc/students-guideline.md |
Makes the participant guideline more reusable across years by removing hardcoded dates and updating references/links. |
css/hsf.css |
Centers footer text site-wide via the .footer class. |
_layouts/main.html |
Fixes/normalizes HTML structure and adjusts announcements markup for cleaner layout. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| ### How to apply to HSF GSoC | ||
|
|
||
| 1. Take a look at the list of participating [projects]({{ site.baseurl }}/activities/gsoc.html#projects-in-2024) this year. If there are no projects or just a few, note that more will be added according to this year's [timeline]({{ site.baseurl }}/activities/gsoc.html#timeline). | ||
| 1. Take a look at the list of participating [projects]({{ site.baseurl }}/activities/gsoc.html#projects) this year. If there are no projects or just a few, note that more will be added according to this year's [timeline]({{ site.baseurl }}/activities/gsoc.html#timeline). |
There was a problem hiding this comment.
The link to the projects section uses #projects, but the current GSoC activity page uses year-specific anchors (e.g. #projects-in-2026). As-is, this anchor will not resolve and the “projects” link will be broken. Consider linking to the actual anchor on /activities/gsoc.html or adding a stable id="projects" anchor on that page and linking to it here.
| 1. Take a look at the list of participating [projects]({{ site.baseurl }}/activities/gsoc.html#projects) this year. If there are no projects or just a few, note that more will be added according to this year's [timeline]({{ site.baseurl }}/activities/gsoc.html#timeline). | |
| 1. Take a look at the list of participating [projects]({{ site.baseurl }}/activities/gsoc.html#projects-in-2026) this year. If there are no projects or just a few, note that more will be added according to this year's [timeline]({{ site.baseurl }}/activities/gsoc.html#timeline). |
There was a problem hiding this comment.
@sm-28601 This will indeed require renaming the anchor to #projects.
| * There you will find a list of proposals for each project, their descriptions and the contact information of their mentors. | ||
| * There is also a list with [all the project proposals]({{ site.baseurl }}/gsoc/2024/summary.html) sorted in alphabetical order. | ||
| <!-- Next <br><br>, add an extra new line, otherwise there is no space between point 2 and previous nested bullet --> | ||
| * There is also a list with [all the project proposals]({{ site.baseurl }}/gsoc/2026/summary.html) sorted in alphabetical order. |
There was a problem hiding this comment.
This page aims to be year-agnostic, but the “all the project proposals” link is hardcoded to /gsoc/2026/summary.html. This will require manual updates every year and can easily go stale. If possible, use a redirect/stable URL (e.g. /gsoc/summary.html) or a site/page variable for the current GSoC year so the guideline remains reusable.
| * There is also a list with [all the project proposals]({{ site.baseurl }}/gsoc/2026/summary.html) sorted in alphabetical order. | |
| * There is also a list with [all the project proposals]({{ site.baseurl }}/gsoc/summary.html) sorted in alphabetical order. |
There was a problem hiding this comment.
@sm-28601 I would change this to link to the #summary anchor on the activities/gsoc.html page, which has the link to all proposal ideas and to all mentors.
|
|
||
| 5. You will have to write a proposal that must contain: | ||
| * A detailed plan of work with a timeline spanning over **90 or 175 or 375 hours**, which is the GSoC coding period duration this year. Note that your availability for working on the project has to be clearly stated (agreed upon with your mentors) and represents an engagement on your side. Breaking it during the coding period without prior notice and mentor's agreement represents a reason for being failed. | ||
| * A detailed plan of work with a timeline spanning the official GSoC project sizes (e.g., **90, 175, or 350+ hours**, depending on the current year's rules). Note that your availability for working on the project has to be clearly stated (agreed upon with your mentors) and represents an engagement on your side. Breaking it during the coding period without prior notice and mentor's agreement represents a reason for being failed. |
There was a problem hiding this comment.
The wording “350+ hours” is ambiguous and may be inaccurate depending on the official sizes (typically a fixed “350 hours” size). To keep this guideline timeless and precise, consider phrasing this as “90, 175, or 350 hours (per the current year’s rules)” or “small/medium/large project sizes” without implying “350+”.
| * A detailed plan of work with a timeline spanning the official GSoC project sizes (e.g., **90, 175, or 350+ hours**, depending on the current year's rules). Note that your availability for working on the project has to be clearly stated (agreed upon with your mentors) and represents an engagement on your side. Breaking it during the coding period without prior notice and mentor's agreement represents a reason for being failed. | |
| * A detailed plan of work with a timeline spanning the official GSoC project sizes (e.g., **90, 175, or 350 hours**, depending on the current year's rules). Note that your availability for working on the project has to be clearly stated (agreed upon with your mentors) and represents an engagement on your side. Breaking it during the coding period without prior notice and mentor's agreement represents a reason for being failed. |
There was a problem hiding this comment.
@sm-28601 Just change the "350+" to "350" and that's sufficient to resolve this.
| Energy Physics software and computing internationally - please take a look at our <a | ||
| href="organization/goals.html">goals and objectives</a>.</p> | ||
| </div> | ||
| href="organization/goals.html">goals and objectives</a>. |
There was a problem hiding this comment.
The “goals and objectives” link is relative (organization/goals.html). When this layout is used from a nested path (e.g. /gsoc/...), the browser will resolve it relative to that directory (e.g. /gsoc/organization/goals.html), which is likely broken. Use a root-relative URL via Jekyll (e.g. {{ '/organization/goals.html' | relative_url }}) so the link works from all pages.
| href="organization/goals.html">goals and objectives</a>. | |
| href="{{ '/organization/goals.html' | relative_url }}">goals and objectives</a>. |
|
Can you rebase so this doesn't include #1874? |
db482e1 to
40805c9
Compare
Rebased on latest main. Please review. |
Thanks. Looks good. A few comments added. The only other comment would be to link to the FAQ /gsoc/faq.html at the bottom of the guidelines. |
Fixes #1873
Summary
This PR updates the GSoC Participant Guidelines page to make it year-agnostic and reusable across future GSoC editions.
Changes Made
Note on Summary Page Link
The alphabetical proposal summary pages are organized per year under
/gsoc/<year>/summary.html>.Therefore, the link currently points to
/gsoc/2026/summary.html.If preferred, I can refactor this to use a dynamic year variable or a redirect page to avoid hardcoding the year.