Skip to content

Commit f84b12d

Browse files
authored
Upload GSoC blog post (#437)
* Upload GSoC blog post * Remove brackets around mentor names in table * Fix "familiarize yourself" heading link * Clarify PR can be merged in MDA or partner * Fix heading link for learn more about partners
1 parent 634d7f8 commit f84b12d

File tree

1 file changed

+168
-0
lines changed

1 file changed

+168
-0
lines changed

_posts/2025-02-28-gsoc2025.md

Lines changed: 168 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,168 @@
1+
---
2+
layout: post
3+
title: Google Summer of Code 2025
4+
---
5+
6+
<p>
7+
<img
8+
src="https://developers.google.com/open-source/gsoc/resources/downloads/GSoC-Vertical.svg"
9+
title="Google Summer of Code 2025" alt="Google Summer of Code with
10+
MDAnalysis 2025"
11+
style="float: right; height: 10em; " />
12+
</p>
13+
14+
MDAnalysis has been accepted as an [organization][org] for [Google Summer of
15+
Code][gsoc] (GSoC) 2025! If you are interested in working with us and you
16+
are new to open source, please read the advice and links below to learn how you can apply to participate in GSoC 2025 with MDAnalysis.
17+
18+
The application window **deadline** is **April 8, 2025 - 18:00 UTC**.
19+
As part of the application process you must familiarize
20+
yourself with [Google Summer of Code 2025][gsoc], including eligibility requirements, timelines, and generally how the program works.
21+
22+
We are looking forward to all applications from *any new and beginner
23+
open source contributors or students over 18 years old*; see a full list of the [eligibility requirements][eligibility criteria] in the [GSoC FAQ](https://developers.google.com/open-source/gsoc/faq). Projects
24+
are scoped as either 90-hour (small), 175-hour (medium) or 350-hour (large) size. The
25+
duration can be extended from the standard 8 weeks to up to 12 weeks (for small projects), or from the standard 12 weeks up to 22 weeks (for medium or large projects).
26+
27+
Potential GSoC Contributors are expected to familiarize themselves with application
28+
requirements and mentoring organizations **as soon as possible**. If you are interested in working with us, please read on to learn about [MDAnalysis project ideas](#project-ideas) and [MDAnalysis-specific requirements for putting together your application](#information-for-prospective-gsoc-contributors).
29+
30+
## Project Ideas
31+
32+
If you have your own idea about a potential project we'd love to work with you
33+
to develop this idea; please write to us on the [GSoC with MDAnalysis discussion forum][discussion forum] to discuss it there.
34+
35+
We also have listed several [possible projects][ideas] for you to work on. Our
36+
initial list of ideas (see summaries in the table below) contains various
37+
projects of different scope and with different skill requirements. However,
38+
check the [ideas] page — we might add more ideas after the posting date of
39+
this post.
40+
41+
Our experience shows that having the listed skills increases the
42+
chances that a project will be completed successfully, so we use them
43+
as part of [our decision criteria in choosing GSoC contributors](https://github.com/MDAnalysis/mdanalysis/wiki/GSoC-Proposal-Review).
44+
45+
This year, MDAnalysis is joining forces with three other open source projects to offer even more far-reaching collaborative projects: [WESTPA]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#westpa), [Molecular Nodes]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#molecular-nodes), and [ProLIF]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#prolif) (an [MDAKit]({{ site.baseurl }}/pages/mdakits)).
46+
47+
| project | name | difficulty | project size | description | skills | mentors |
48+
|---------|-----------------------------------------------------------------------------------------------------------------------------------------------------------|------------|------------|------------------------------------------------------------------------------------------------|-----------------------------|----------------------------------------|
49+
| 1 | [Integrating MDAnalysis streaming analysis within WESTPA propagators]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#project-1-integrating-mdanalysis-streaming-analysis-within-westpa-propagators) | medium | 175 hours | Integrate MDAnalysis with WESTPA to analyze streamed trajectory data | Python (multiprocessing), Networking (TCP/IP), MD Engines | @jeremyleung521, @ltchong, @fiona-naughton, @orbeckst|
50+
| 2 | [Dashboard for tracking WESTPA simulation progress]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#project-2-dashboard-for-tracking-westpa-simulation-progress) | easy | 90 hours | Create a graphical user interface to report MD trajectory progress | Python (frontend UI, multiprocessing), Networking (TCP/IP) | @jeremyleung521, @ltchong, @fiona-naughton, @talagayev |
51+
| 3 | [Lazy trajectory analysis with Dask and a Lazy Timeseries API]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#project-3-lazy-trajectory-analysis-with-dask-and-a-lazy-timeseries-api) | medium | 175 hours | Build out a lazy reader and timestep interface | Dask or lazy computation paradigm, Object-oriented programming, Writing analysis code classes/scripts, Experience with a numpy-like-interface | @ljwoods2, @orbeckst, @yuxuanzhuang |
52+
| 4 | [Better interfacing of Blender and MDAnalysis]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#project-4-better-interfacing-of-blender-and-mdanalysis) | medium | 350 hours | Improve how Blender and Molecular Nodes interface with MDAnalysis to import and animate MD trajectories | Python, MDAnalysis, Blender (and programming via its Python API) | @yuxuanzhuang, @bradyajohnston |
53+
| 5 | [HBond interactions from implicit hydrogens]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#project-5-hbond-interactions-from-implicit-hydrogens) | medium | 175/350 hours | Make interaction fingerprints analysis with ProLIF (an MDAKit) more accessible and faster to run | Python, RDKit, SMARTS, compchem | @cbouy, @talagayev |
54+
| 6 | [Continuous (i.e., non-binary) interaction fingerprints (IFPs)]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#project-6-continuous-ie-non-binary-interaction-fingerprints-ifps) | hard | 350 hours | Define thresholds for interactions and implement continuous encoding for interactions | Python, RDKit, compchem | @cbouy, @talagayev |
55+
| 7 | [Improving ProLIF's 2D interaction visualizations]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#project-7-improving-prolifs-2d-interaction-visualizations) | medium | 90/175 hours | Improve ProLIF's "LigNetwork" plot and add 2D visualizations to summarize information in IFPs | Python, JavaScript | @cbouy, @talagayev |
56+
| 8 | [Benchmarking and performance optimization]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#project-8-benchmarking-and-performance-optimization) | easy/medium | 175/350 hours | Write benchmarks for automated performance analysis and address performance bottlenecks | Python/ASV, Cython | @orbeckst, @ljwoods2 |
57+
| 9 | [Integrating OpenFolds’ structural prediction confidence metrics into the topology system]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#project-9-integrating-openfolds-structural-prediction-confidence-metrics-into-the-topology-system) | easy/medium | 90 hours | Expose the predicted local distance difference test metric (pLDDT) via the MDAnalysis topology system | OpenFold or structural prediction tools more generally, Python, Solving parsing problems | @ljwoods2, @orbeckst |
58+
59+
## Information for prospective GSoC Contributors
60+
61+
You must meet our [own requirements] if you want to be a GSoC
62+
Contributor with MDAnalysis this year (read all the docs behind these
63+
links!) and read the points below for the application process. You must also meet the [GSoC eligibility criteria][eligibility criteria]. [Our GSoC FAQ][GSoC FAQ] collects common questions from applicants.
64+
65+
In short:
66+
1. [Agree to be bound by our Code of Conduct](#code-of-conduct) (and [WESTPA's Code of Conduct](https://github.com/westpa/westpa/wiki/Code-of-Conduct) if you are applying for a WESTPA collaboration project [i.e., [Project 1]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#project-1-integrating-mdanalysis-streaming-analysis-within-westpa-propagators), [Project 2]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#project-2-dashboard-for-tracking-westpa-simulation-progress)]);
67+
2. [Familiarize yourself with MDAnalysis and relevant partner projects](#familiarize-yourself-with-mdanalysis-and-relevant-partner-projects);
68+
3. [Submit a short pre-proposal](#submit-a-pre-proposal)
69+
4. **If you have been invited to proceed with your application (based on your pre-proposal)** [have a pull request merged](#have-a-pull-request-merged-if-you-are-invited-to-based-on-your-pre-proposal) in MDAnalysis or a partner organization.
70+
71+
### Code of Conduct
72+
73+
The MDAnalysis community values diversity and is committed to providing a
74+
productive, harassment-free environment to every member. Our [Code of Conduct]
75+
explains the values that we as a community uphold. *Every community member (and every
76+
GSoC Contributor) agrees to follow the [Code of Conduct]*.
77+
78+
### Familiarize yourself with MDAnalysis and relevant partner projects
79+
80+
As a start to get familiar with MDAnalysis and open source development you
81+
should follow these steps:
82+
1. [Watch the MDAnalysis Trailer](#watch-the-mdanalysis-trailer)
83+
2. [Complete the Quick Start Guide](#complete-the-quick-start-guide)
84+
3. *If applicable to the [project idea](#project-ideas) you are interested in*, [learn more about WESTPA, Molecular Nodes, and/or ProLIF](#learn-more-about-westpa-molecular-nodes-and-prolif).
85+
86+
#### Watch the MDAnalysis Trailer
87+
88+
The [MDAnalysis Trailer](https://www.youtube.com/watch?v=uMAfvwFkD3o) on YouTube
89+
is a one minute introduction to MDAnalysis.
90+
91+
<div class="js-video">
92+
<iframe src="https://www.youtube.com/embed/uMAfvwFkD3o" frameborder="0"
93+
allowfullscreen class="video"></iframe>
94+
</div>
95+
96+
There are also additional [introductory videos]({{ site.baseurl }}/pages/learning_MDAnalysis/#introductory) available to give you an idea of what problems MDAnalysis is solving.
97+
98+
#### Complete the Quick Start Guide
99+
100+
Start by [installing] the MDAnalysis package. We have a [Quick Start Guide] explaining the basics of MDAnalysis. You
101+
should go through it at least once to understand how MDAnalysis is
102+
used. Continue reading the [User Guide] to learn more.
103+
104+
#### Learn More About WESTPA, Molecular Nodes and ProLIF
105+
106+
As some of the [project ideas][ideas] represent collaboration between MDAnalysis and other partner software projects, you should follow the recommended steps linked here to familiarize yourself (as relevant) with [WESTPA]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#westpa), [Molecular Nodes]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#molecular-nodes) and/or [ProLIF]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#prolif).
107+
108+
### Submit a pre-proposal
109+
110+
We ask you to submit a short *pre-proposal* so that we can evaluate your understanding of the proposed project. In this pre-proposal you tell us what project you’d like to work on, what you consider the major challenges, and how you plan to solve the problem. MDAnalysis developers will review your proposal and then either invite you to continue with your application and work on an issue to get involved in the code development or tell you that we will not consider your application. *Please note that this decision is final, and applicants should only submit **one** pre-proposal.* A rejection is not a judgment on you or your abilities but an assessment of how well you fit the specific requirements of MDAnalysis as a scientific software package — we much rather you spend your energies on contributing to another exciting GSoC project than being rejected later by MDAnalysis.
111+
112+
**We require GSoC applicants to submit a pre-proposal** that will determine who is then invited to [contribute a pull request for evaluation](#have-a-pull-request-merged-if-you-are-invited-to-based-on-your-pre-proposal) (see below). If you are invited to contribute a pull request and ultimately submit a full application, the pre-proposal will help you gather some of the information you will need to include.
113+
114+
Submit your pre-proposal via [this submission form][submission form] **as soon as possible, but no later than March 21, 2025**. You should prepare the following information for your pre-proposal:
115+
* Email address
116+
* GitHub handle
117+
* Real name (optional)
118+
* Basic information on your background (e.g., education, relevant experience with MDAnalysis and molecular dynamics or computational physics/chemistry/materials)
119+
* Project title
120+
* Project size (90h, 175h, 350h)
121+
* **Problem:** Describe the problem to be solved. What is the background? What is the overarching question? You can also comment on why this is an interesting or difficult problem. Clearly define the overall goal of what you want to find out.
122+
* **Approach:** Describe how you are going to reach your goal (i.e., answer the overarching question). Which algorithms are you going to use? Are there any libraries or other packages you want to use? Do you need to research different solutions? Be as concrete as possible; you want to convince your audience that it is feasible to solve this problem and you have an idea how to tackle it.
123+
* **Objectives:** Use a numbered list to state 3–5 measurable non-trivial outcomes that you need to achieve in order to reach the overall goal. These are the milestones that you have to reach; they are possibly dependent on each other. For each objective it must be clear how to decide if you fulfilled it or not. Objectives are formulated in terms of actions and deliverables.
124+
125+
### Have a pull request merged (*if you are invited to based on your pre-proposal*)
126+
127+
GSoC contributors with MDAnalysis will need to demonstrate that they have been seriously engaged with the MDAnalysis project and/or the partner software projects (WESTPA, Molecular Nodes, ProLIF) by having a pull request (PR) merged *prior* to submitting their full GSoC application on the [GSoC website][gsoc]. Submit the PR in one of the repositories under the MDAnalysis org (https://github.com/MDAnalysis/) or, for projects related to Molecular Nodes (i.e., [Project 4]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#project-4-better-interfacing-of-blender-and-mdanalysis)) or ProLIF (i.e., [Project 5]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#project-5-hbond-interactions-from-implicit-hydrogens), [Project 6]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#project-6-continuous-ie-non-binary-interaction-fingerprints-ifps), [Project 7]({{ site.github.wiki }}/GSoC-2025-Project-Ideas#project-7-improving-prolifs-2d-interaction-visualizations)), in the relevant repositories (MolecularNodes [https://github.com/BradyAJohnston/MolecularNodes], ProLIF [https://github.com/chemosim-lab/ProLIF]).
128+
129+
You must have *at least one commit* merged in one of the organizations to be eligible. Note that **the earlier you submit your pre-proposal (which are reviewed on a rolling basis), the more time you may have to work on having code merged!**
130+
131+
We have a list of [easy bugs] and
132+
suggested [GSOC Starter issues][GSOC Starter] to work on in our issue tracker
133+
on GitHub. *We only accept one [GSOC Starter issue][GSOC Starter] per
134+
applicant* so that all contributors invited to attempt pull requests get a chance. If you want to dive deeper, we encourage you to tackle some of the other issues in our issue tracker. We also appreciate contributions which add more tests or update/improve our documentation. Note that some of the [project ideas][ideas] include related issues that you might want to explore.
135+
136+
To start developing for MDAnalysis have a look at our guide on
137+
[contributing to MDAnalysis][dev-guide] and write to us on the [GSoC with MDAnalysis discussion forum][discussion forum] if you have more questions
138+
about setting up a development environment or how to contribute.
139+
140+
## Final remarks
141+
142+
**Submit your pre-proposal before March 21, 2025**, but the earlier the better! We will then let you know via the email you provide in the [pre-proposal submission form][submission form] if you have been selected to attempt an issue on GitHub and ultimately submit a full application; we strive to inform you of a decision within a week of your submission. The GSoC contributor application period opens on March 24, 2025.
143+
144+
Feel free to ask any questions on the [discussion forum]. We are also happy to chat on our [{{ site.discord.name }} Discord
145+
server][discord] in the `#gsoc` channel (join with the public
146+
[invitation link]({{ site.baseurl }}/#participating)).
147+
148+
We look forward to working with you in GSoC 2025!
149+
150+
[MDAnalysis GSoC mentors and organization administrators]({{ site.github.wiki }}/Google-Summer-Of-Code#available-mentors) (GitHub [@MDAnalysis/gsoc-mentors], Discord `@gsoc-mentor`)
151+
152+
[ideas]: {{ site.github.wiki }}/GSoC-2025-Project-Ideas
153+
[submission form]: https://docs.google.com/forms/d/e/1FAIpQLSeOxd8b9MrHLtsQ6o8N7uq02P0CdyvyoWnQ1dhmJD_vW1Jh1w/viewform?usp=dialog
154+
[org]: https://summerofcode.withgoogle.com/programs/2025/organizations/mdanalysis
155+
[Code of Conduct]: {{ site.baseurl }}/pages/conduct/
156+
[eligibility criteria]: https://developers.google.com/open-source/gsoc/faq#what_are_the_eligibility_requirements_for_participation
157+
[own requirements]: {{ site.github.wiki }}/Google-Summer-Of-Code#our-expectations-from-gsoc-contributors
158+
[easy bugs]: https://github.com/MDAnalysis/mdanalysis/issues?q=is%3Aopen+is%3Aissue+label%3ADifficulty-easy
159+
[GSOC Starter]: https://github.com/MDAnalysis/mdanalysis/issues?q=is%3Aopen+is%3Aissue+label%3A%22GSOC+Starter%22
160+
[installing]: https://userguide.mdanalysis.org/stable/installation.html
161+
[Quick Start Guide]: https://userguide.mdanalysis.org/stable/examples/quickstart.html
162+
[User Guide]: https://userguide.mdanalysis.org/
163+
[gsoc]: https://summerofcode.withgoogle.com/
164+
[dev-guide]: https://userguide.mdanalysis.org/stable/contributing.html
165+
[discussion forum]: {{ site.mailinglists.gsoc.url }}
166+
[GSoC FAQ]: {{ site.github.wiki }}/GSoC-FAQ
167+
[@MDAnalysis/gsoc-mentors]: https://github.com/orgs/MDAnalysis/teams/gsoc-mentors
168+
[discord]: {{ site.discord.url }}

0 commit comments

Comments
 (0)