diff --git a/_posts/2026-02-19-gsoc2026.md b/_posts/2026-02-19-gsoc2026.md new file mode 100644 index 00000000..6152fdb6 --- /dev/null +++ b/_posts/2026-02-19-gsoc2026.md @@ -0,0 +1,218 @@ +--- +layout: post +title: Google Summer of Code 2026 +--- + +

+Google Summer of Code with
+MDAnalysis 2026 +

+ +MDAnalysis has been accepted as an [organization][org] for [Google Summer of +Code][gsoc] (GSoC) 2026! If you are interested in working with us and you +are new to open source, please read the advice and links below to learn how you can apply to participate in GSoC 2026 with MDAnalysis. + +The application window **deadline** is **March 31, 2026 - 18:00 UTC**. +As part of the application process you must familiarize +yourself with [Google Summer of Code 2026][gsoc], including eligibility requirements, timelines, and generally how the program works. + +We are looking forward to all applications from *any new and beginner +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 +are scoped as either 90-hour (small), 175-hour (medium) or 350-hour (large) size. The +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). + +Potential GSoC Contributors are expected to familiarize themselves with application +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). + +## Partner Projects + +

+ + + + + + +

+ +For GSoC, MDAnalysis collaborates with other projects that have direct links with MDAnalysis and where it is especially useful to draw on the combined mentoring expertise. + +This year, MDAnalysis is joining forces with [WESTPA]({{ site.github.wiki }}/GSoC-2026-Project-Ideas#westpa) and [Molecular Nodes]({{ site.github.wiki }}/GSoC-2026-Project-Ideas#molecular-nodes). Applicants who want to work with one of the collaborating projects should familiarize themselves with MDAnalysis and the project that they are interested in. GSoC projects with either WESTPA or Molecular Nodes will be mentored by experts from the collaborating project and MDAnalysis. + + + +## Project Ideas + +If you have your own idea about a potential project we'd love to work with you +to develop this idea; please write to us on the [GSoC with MDAnalysis discussion forum][discussion forum] to discuss it there. + +We also have listed several [possible projects][ideas] for you to work on. Our +initial list of ideas (see summaries in the table below) contains various +projects of different scope and with different skill requirements. However, +check the [ideas] page — we might add more ideas after the posting date of +this post. + +Our experience shows that having the listed skills increases the +chances that a project will be completed successfully, so we use them +as part of [our decision criteria in choosing GSoC contributors](https://github.com/MDAnalysis/mdanalysis/wiki/GSoC-Proposal-Review). + + +| project | name | difficulty | project size | description | skills | mentors | +|---------|-----------------------------------------------------------------------------------------------------------------------------------------------------------|------------|------------|------------------------------------------------------------------------------------------------|-----------------------------|----------------------------------------| +| 1 | [Dashboard for tracking MD simulation progress with the new streaming interface](https://github.com/MDAnalysis/mdanalysis/wiki/GSoC-2026-Project-Ideas#project-1-dashboard-for-tracking-md-simulation-progress-with-the-new-streaming-interface) | easy/medium | 175/350 hours | Create a web-based dashboard for real-time monitoring and analysis of MD simulations | Python (frontend UI, multiprocessing), Networking (TCP/IP) | [@HeydenLab](https://github.com/HeydenLab) [@amrutesht](https://github.com/amrutesht) [@orbeckst](https://github.com/orbeckst) | +| 2 | [Better interfacing of Blender and MDAnalysis](https://github.com/MDAnalysis/mdanalysis/wiki/GSoC-2026-Project-Ideas#project-2-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) | [@bradyajohnston](https://github.com/bradyajohnston) [@nilay-v3rma](https://github.com/nilay-v3rma) | +| 3 | [Benchmarking and performance optimization](https://github.com/MDAnalysis/mdanalysis/wiki/GSoC-2026-Project-Ideas#project-3-benchmarking-and-performance-optimization) | easy/medium | 90/175/350 hours | Write benchmarks for automated performance analysis and address performance bottlenecks | Python/ASV, Cython | [@orbeckst](https://github.com/orbeckst) [@yuxuanzhuang](https://github.com/yuxuanzhuang) [@talagayev](https://github.com/talagayev) | +| 4 | [Lazy trajectory loading and indexing](https://github.com/MDAnalysis/mdanalysis/wiki/GSoC-2026-Project-Ideas#project-4-lazy-trajectory-loading-and-indexing) | medium | 175/350 hours | Improve performance of trajectory reading by implementing lazy indexing | Python, trajectory I/O, performance optimization | [@yuxuanzhuang](https://github.com/yuxuanzhuang) [@orbeckst](https://github.com/orbeckst) [@talagayev](https://github.com/talagayev) | +| 5 | [Dashboard for tracking WESTPA simulation progress](https://github.com/MDAnalysis/mdanalysis/wiki/GSoC-2026-Project-Ideas#project-5-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](https://github.com/jeremyleung521) [@ltchong](https://github.com/ltchong) [@nilay-v3rma](https://github.com/nilay-v3rma) | +| 6 | [Interface for post-simulation analysis ("crawling") of WESTPA simulations](https://github.com/MDAnalysis/mdanalysis/wiki/GSoC-2026-Project-Ideas#project-6-interface-for-post-simulation-analysis-crawling-of-westpa-simulations) | easy | 90 hours | Create an interface for reading, analyzing, and writing post-simulation data from WESTPA HDF5 Framework | Python (frontend UI, multiprocessing), HDF5 Format (h5py, hdf5) | [@jeremyleung521](https://github.com/jeremyleung521) [@ltchong](https://github.com/ltchong) | + +## Information for prospective GSoC Contributors + +You must meet our [own requirements] if you want to be a GSoC +Contributor with MDAnalysis this year (read all the docs behind these +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. + +In short: +1. Agree to be bound by our [Code of Conduct](#code-of-conduct) (and the [WESTPA Code of Conduct](https://github.com/westpa/westpa/wiki/Code-of-Conduct) if you are applying for a WESTPA collaboration project [i.e., [Project 5]({{ site.github.wiki }}/GSoC-2026-Project-Ideas#project-5-dashboard-for-tracking-westpa-simulation-progress), [Project 6]({{ site.github.wiki}}/GSoC-2026-Project-Ideas#project-6-interface-for-post-simulation-analysis-crawling-of-westpa-simulations)]) +2. Agree to be bound by our [AI policy](https://github.com/MDAnalysis/mdanalysis/blob/develop/AI_POLICY.md) (and [WESTPA's AI policy](https://github.com/westpa/westpa/blob/westpa2/AI_POLICY.md) or Molecular Node’s AI policy if you are applying for a collaboration project). +3. Engage with the MDAnalysis community through [code/documentation contributions](#interactions-and-engagement-with-mdanalysis) and discussions +4. [Familiarize yourself with MDAnalysis and relevant partner projects](#familiarize-yourself-with-mdanalysis-and-relevant-partner-projects); +5. Submit a short **[pre-proposal](#submit-a-pre-proposal)** by **March 9, 2026**. +6. Participate in a **[video interview](#participate-in-a-video-interview-by-invitation)** with developers of MDAnalysis and/or one of the partner organizations. You will be **invited for interview based on your pre-proposal**. +7. Submit your full **[GSoC application](#submit-full-application-by-invitation)**. You will be **invited to submit your application based on your video interview**. + + +### Code of Conduct + +The MDAnalysis community values diversity and is committed to providing a +productive, harassment-free environment to every member. Our [Code of Conduct] +explains the values that we as a community uphold. *Every community member (and every +GSoC Contributor) agrees to follow the [Code of Conduct]*. + +### Familiarize yourself with MDAnalysis and relevant partner projects + +As a start to get familiar with MDAnalysis and open source development you +should follow these steps: +1. [Watch the MDAnalysis Trailer](#watch-the-mdanalysis-trailer) +2. [Complete the Quick Start Guide](#complete-the-quick-start-guide) +3. *If applicable to the [project idea](#project-ideas) you are interested in*, [learn more about WESTPA and/or Molecular Nodes](#learn-more-about-westpa-and-molecular-nodes). + +#### Watch the MDAnalysis Trailer + +The [MDAnalysis Trailer](https://www.youtube.com/watch?v=uMAfvwFkD3o) on YouTube +is a one minute introduction to MDAnalysis. + +
+ +
+ +There are also additional [introductory videos]({{ site.baseurl }}/pages/learning_MDAnalysis/#introductory) available to give you an idea of what problems MDAnalysis is solving. + +#### Complete the Quick Start Guide + +Start by [installing] the MDAnalysis package. We have a [Quick Start Guide] explaining the basics of MDAnalysis. You should go through it at least once to understand how MDAnalysis is +used. Continue reading the [User Guide] to learn more. + +#### Learn More About WESTPA and Molecular Nodes + +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-2026-Project-Ideas#westpa) and/or [Molecular Nodes]({{ site.github.wiki }}/GSoC-2026-Project-Ideas#molecular-nodes). + +### Interactions and engagement with MDAnalysis + +GSoC contributors with MDAnalysis should demonstrate that they have been seriously engaged with the MDAnalysis project (and/or with a relevant [partner software project]({{ site.github.wiki }}/GSoC-2026-Project-Ideas#collaborations)). Submitting a pull request is a great way to know you as a good candidate. As is relevant to the GSoC project idea you are interested in, you should submit your PR in one of the following repositories: +* MDAnalysis organization: [github.com/MDAnalysis/](https://github.com/MDAnalysis/) +* WESTPA organization: [github.com/westpa/westpa](https://github.com/westpa/westpa/) +* Molecular Nodes repository: [github.com/BradyAJohnston/MolecularNodes](https://github.com/BradyAJohnston/MolecularNodes) + +We have a list of [easy bugs] and suggested [GSOC Starter issues] to work on in our issue tracker on GitHub. If you want to dive deeper, we encourage you to tackle some of the other issues in our issue tracker or create a new one. We also appreciate contributions which add more tests or update/improve our documentation. Note that some of the [GSoC 2026 Project Ideas][ideas] include related issues that you might want to explore. + +To start developing for MDAnalysis have a look at our guide on +[contributing to MDAnalysis][dev-guide] and write to us on the [GSoC with MDAnalysis discussion forum][discussion forum] if you have more questions about setting up a development environment or how to contribute. + +### Submit a pre-proposal + +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 participate in a video interview 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. + +**We require GSoC applicants to submit a pre-proposal** that will determine who is then invited to [participate in a video interview](#participate-in-a-video-interview-by-invitation). If you are invited to participate in an interview and ultimately submit a full application, the pre-proposal will help you gather some of the information you will need to include. + +Submit your pre-proposal via our [pre-proposal submission form][submission form] **by March 9, 2026**. The submission form will go live a few days after this post. + +
+

Do not use generative AI to develop or write your pre-proposal. We need to hear your ideas and voice. +

+

You are allowed to use AI tools for grammar and spell checking and for translation into English although we are more than happy to read your proposal in your own English words.

+
+ + +You should prepare the following information for your pre-proposal: +* Email address +* GitHub handle +* Real name (optional) +* Certify that you did not use AI tools to develop or produce the pre-proposal. +* Basic information on your background (e.g., education, relevant experience with MDAnalysis and molecular dynamics or computational physics/chemistry/materials) +* Project title +* Project size (90h, 175h, 350h) +* **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. +* **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. +* **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. +* **Interactions:** Describe the interactions you had with maintainers from MDAnalysis (or WESTPA/Molecular Nodes if you plan on working on a collaborative project). Be specific and link to specific instances of interactions (e.g. Pull Requests) if possible. (500 words) + +### Participate in a video interview (*by invitation*) + +Applicants who are invited for a video interview will be contacted no earlier than 72 hours after they submit their pre-proposal. During the interview (15 minutes), you will discuss your pre-proposal with 1-2 developers. The video may be recorded for evaluation by other developers/mentors. During the interview, you will be required to share your (full) screen and respond live to questions. The interview may involve live programing and discussions of code sections of MDAnalysis that are relevant for your project. The interview will be conducted using Google Chats or an equivalent video conferencing software. + +### Submit full application (*by invitation*) + +If you pass the interview stage, you will be invited to submit your full GSoC application through the GSoC site (starting March 16, 2026). We will only review invited applications. + +Please read the additional information on our [expectations for a full application](https://github.com/MDAnalysis/mdanalysis/wiki/Google-Summer-Of-Code#full-application). + +
+

Do not use generative AI to develop or write your application. We need to hear your ideas and voice. +

+

You are allowed to use AI tools for grammar and spell checking and for translation into English although we are more than happy to read your application in your own English words.

+
+ + + + +## Final remarks + +**Submit your pre-proposal before March 9, 2026**, 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 participate in a video interview and ultimately submit a full application. The GSoC contributor application period opens on March 16, 2026. + +Feel free to ask any questions on the [discussion forum]. We are also happy to chat on our [{{ site.discord.name }} Discord server][discord] in the `#gsoc` channel (join with the public [invitation link](https://discord.com/invite/fXTSfDJyxE)). Please note that MDAnalysis as an organization highly values transparency and therefore we strive to *conduct all discussions in public forums* so please ask questions publicly and not via direct messages or emails. + +We look forward to working with you in GSoC 2026! + +— [MDAnalysis GSoC mentors and organization administrators]({{ site.github.wiki }}/Google-Summer-Of-Code#available-mentors) (GitHub `@MDAnalysis/gsoc-mentors`, Discord `@gsoc-mentor`) + +[org]: https://summerofcode.withgoogle.com/programs/2026/organizations/mdanalysis +[gsoc]: https://summerofcode.withgoogle.com/ +[discussion forum]: {{ site.mailinglists.gsoc.url }} +[ideas]: {{ site.github.wiki }}/GSoC-2026-Project-Ideas +[own requirements]: {{ site.github.wiki }}/Google-Summer-Of-Code#our-expectations-from-gsoc-contributors +[eligibility criteria]: https://developers.google.com/open-source/gsoc/faq#what_are_the_eligibility_requirements_for_participation +[GSoC FAQ]: {{ site.github.wiki }}/GSoC-FAQ +[Code of Conduct]: {{ site.baseurl }}/conduct +[installing]: https://userguide.mdanalysis.org/stable/installation.html +[Quick Start Guide]: https://userguide.mdanalysis.org/stable/examples/quickstart.html +[User Guide]: https://userguide.mdanalysis.org/ +[easy bugs]: https://github.com/MDAnalysis/mdanalysis/issues?q=is%3Aopen+is%3Aissue+label%3ADifficulty-easy +[GSOC Starter issues]: https://github.com/MDAnalysis/mdanalysis/issues?q=is%3Aopen+is%3Aissue+label%3A%22GSOC+Starter%22 +[dev-guide]: https://userguide.mdanalysis.org/stable/contributing.html +[submission form]: https://docs.google.com/forms/d/e/1FAIpQLSecYgZDLxSKHkHt0vSVwcfInDPG46xyHxb2XBIKl_KjZUHF4A/viewform?usp=publish-editor +[discord]: {{ site.discord.url }}