|
| 1 | +(gsoc_2025_announcement)= |
| 2 | +# PyMC is Participating in GSoC 2025 |
| 3 | + |
| 4 | +:::{post} March 30, 2025 |
| 5 | +:tags: gsoc, community, contributing |
| 6 | +:category: news |
| 7 | +:author: Reshama Shaikh |
| 8 | +:image: 0 |
| 9 | +:exclude: |
| 10 | + |
| 11 | +PyMC is participating in 2025 Google Summer of Code (GSoC). |
| 12 | +::: |
| 13 | + |
| 14 | +::::{grid} 1 2 2 2 |
| 15 | + |
| 16 | +:::{grid-item-card} |
| 17 | +:img-background: ../_static/gsoc_2025/GSoC_banner.png |
| 18 | +:link: https://summerofcode.withgoogle.com/ |
| 19 | +:alt: gsoc logo |
| 20 | +::: |
| 21 | + |
| 22 | +:::{grid-item-card} |
| 23 | +:img-background: ../_static/gsoc_2025/numfocus.png |
| 24 | +:link: https://numfocus.org/programs/google-summer-code |
| 25 | +::: |
| 26 | +:::: |
| 27 | + |
| 28 | +::::{grid} 1 1 1 1 |
| 29 | + |
| 30 | +:::{grid-item-card} |
| 31 | +:img-background: ../_static/PyMC.jpg |
| 32 | +:link: https://www.pymc.io |
| 33 | +::: |
| 34 | + |
| 35 | +:::: |
| 36 | + |
| 37 | + |
| 38 | +## Intro |
| 39 | + |
| 40 | +We are excited to share that the PyMC project is once again participating in [Google Summer of Code (GSoC)](https://opensource.googleblog.com/2025/02/meet-mentoring-organizations-of-gsoc.html) under the [NumFOCUS umbrella](https://github.com/numfocus/gsoc/blob/master/2025/ideas-list.md). |
| 41 | + |
| 42 | +## Getting started |
| 43 | + |
| 44 | +:::{attention} |
| 45 | +New contributors should first read the [contributing guide](https://www.pymc.io/projects/docs/en/latest/contributing/index.html) and learn the basics of [PyTensor](https://github.com/pymc-devs/pytensor). Also they should read through some of the [examples](https://docs.pymc.io/projects/examples/en/latest/) in the [PyMC docs](https://docs.pymc.io). |
| 46 | +::: |
| 47 | + |
| 48 | +To be considered as a GSoC student, you should make a PR to PyMC / PyTensor. It can be something small, like a doc fix or simple bug fix. Some [beginner friendly issues](https://github.com/pymc-devs/pymc/labels/beginner%20friendly) have been tagged. |
| 49 | + |
| 50 | +If you are a student interested in participating, please contact us [on our PyMC Discourse site](https://discourse.pymc.io/). |
| 51 | + |
| 52 | +## Project Ideas |
| 53 | + |
| 54 | +Below is a list of possible topics for your GSoC project, **we are also open to other topics**, contact us on [Discourse](https://discourse.pymc.io/). |
| 55 | +Keep in mind that these are only ideas and that some of them can't be completely solved in a single GSoC project. |
| 56 | +When writing your proposal, choose some specific tasks and make sure your proposal is adequate for the GSoC time commitment. |
| 57 | + |
| 58 | +:::{note} |
| 59 | + **We expect all projects to be 350h projects**, if you'd like to be considered for a 175h project you _must_ reach out on [Discourse](https://discourse.pymc.io/). We will *not* accept 175h applications from people with whom we have not discussed their time commitments before submitting the application. |
| 60 | +::: |
| 61 | + |
| 62 | +We have [these PyMC GSoC 2025 projects](https://github.com/pymc-devs/pymc/wiki/GSoC-2025-projects): |
| 63 | + |
| 64 | +1. [Spatial Modeling](https://github.com/pymc-devs/pymc/wiki/GSoC-2025-projects#spatial-modeling) |
| 65 | +1. [Implement New Statespace Models](https://github.com/pymc-devs/pymc/wiki/GSoC-2025-projects#implement-new-statespace-models) |
| 66 | +1. You may propose another idea. |
| 67 | + |
| 68 | +Additionally, there are two other open source projects in the Bayesian space which are also participating in GSoC and you may be interested in checking them out: |
| 69 | + |
| 70 | +1. [ArViZ](https://github.com/arviz-devs/arviz/wiki/GsoC-2025-projects): ArviZ is a project dedicated to promoting and building tools for exploratory analysis of Bayesian models. It currently has a Python and a Julia interface. All projects listed below are for the Python interface. |
| 71 | + - [Feature parity](https://github.com/arviz-devs/arviz/wiki/GsoC-2025-projects#Feature-Parity) |
| 72 | + - [Prior elicitation](https://github.com/arviz-devs/arviz/wiki/GsoC-2025-projects#prior-elicitation) |
| 73 | +1. [Stan](https://github.com/stan-dev/stan/wiki/GSOC-2025-Proposed-Projects): Stan enables sophisticated statistical modeling using Bayesian inference, allowing for more accurate and interpretable results in complex data scenarios. |
| 74 | + - [loo package](https://github.com/stan-dev/stan/wiki/GSOC-2025-Proposed-Projects#loo-package) |
| 75 | + - [bayesplot package](https://github.com/stan-dev/stan/wiki/GSOC-2025-Proposed-Projects#bayesplot-package) |
| 76 | + |
| 77 | +::::{div} sd-fs-5 |
| 78 | +:::{tip} |
| 79 | +Here are examples of [GSoC Discourse posts](https://discourse.pymc.io/search?q=gsoc) with project proposals: |
| 80 | +- GSoC 2023 project proposal [by Shreyas Singh](https://discourse.pymc.io/t/gsoc-project-2023/11735/7) |
| 81 | +- GSoC 2023 project proposal [by Daniel Saunders](https://discourse.pymc.io/t/gsoc-project-2023-spatial-modeling/11760) |
| 82 | +::: |
| 83 | +:::: |
| 84 | + |
| 85 | + |
| 86 | +::::{div} sd-fs-5 |
| 87 | +:::{tip} |
| 88 | +Read about our past interns: |
| 89 | +- [Meet our 2023 PyMC Interns](https://www.pymc.io/blog/blog_gsoc_2023.html) |
| 90 | +- [Meet our 2022 PyMC Google Summer of Code Students](https://www.pymc.io/blog/blog_gsoc_2022.html) |
| 91 | +::: |
| 92 | +:::: |
| 93 | + |
| 94 | +## Contribute to PyMC |
| 95 | + |
| 96 | +::::{div} sd-d-flex-row sd-align-major-center |
| 97 | +:::{button-link} https://www.dataumbrella.org/open-source/contributing-to-pymc |
| 98 | +:color: primary |
| 99 | +:ref-type: ref |
| 100 | +:class: sd-fs-5 |
| 101 | + |
| 102 | +PyMC Contributing resources |
| 103 | +::: |
| 104 | +:::: |
| 105 | + |
| 106 | + |
| 107 | +::::{grid} 1 1 1 1 |
| 108 | + |
| 109 | +:::{grid-item-card} |
| 110 | +:img-background: ../_static/gsoc_2025/contribute-to-pymc.png |
| 111 | +:link: https://www.pymc.io |
| 112 | +::: |
| 113 | + |
| 114 | +:::: |
| 115 | + |
| 116 | +## [GSoC 2025 Timeline](https://developers.google.com/open-source/gsoc/timeline) |
| 117 | + |
| 118 | +These are key 2025 dates: |
| 119 | +- **February 27**: List of [organizations announced](https://summerofcode.withgoogle.com/programs/2025/organizations) |
| 120 | +- **February 27 - March 24**: Potential GSoC contributors discuss application ideas with mentoring organizations [on PyMC Discourse site](https://discourse.pymc.io/) |
| 121 | +- **March 24**: GSoC contributor application period begins |
| 122 | +- **April 8**: GSoC contributor application deadline |
| 123 | +- **April 29**: GSoC contributor proposal rankings due from Org Admins |
| 124 | +- **May 8**: Accepted GSoC contributor projects announced |
| 125 | +- **May 8 - June 1**: Community Bonding Period | GSoC contributors get to know mentors, read documentation, get up to speed to begin working on their projects |
| 126 | +- **June 2**: Coding officially begins! |
| 127 | + |
| 128 | + |
| 129 | +## Resources |
| 130 | + |
| 131 | +### Google Summer of Code (GSoC) Experience: Panel Discussion |
| 132 | + |
| 133 | +Google Summer of Code (GSoC) is a global, online program focused on bringing new contributors into open source software development. GSoC Contributors work with an open source organization on a 12+ week programming project under the guidance of mentors. In this panel discussion, we speak with several GSoC alumni of the PyMC project to learn of their experiences including the application process, mentorship experience and post-GSoC open source participation. |
| 134 | + |
| 135 | +<p> |
| 136 | +<iframe width="560" height="315" src="https://www.youtube.com/embed/YE-TYJmvbfg" title="PyMC GSOC panel discussion video" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen> |
| 137 | +</iframe> |
| 138 | +</p> |
| 139 | + |
| 140 | +#### About the Panelists |
| 141 | + |
| 142 | +::::{grid} |
| 143 | +:::{grid-item} |
| 144 | +:columns: 12 6 6 4 |
| 145 | + |
| 146 | + |
| 147 | +::: |
| 148 | +:::{grid-item} |
| 149 | +:columns: 12 6 6 8 |
| 150 | + |
| 151 | +[Tirth Patel](https://www.linkedin.com/in/tirthasheshpatel/) GSoC 2020 & 2021 |
| 152 | +> Tirth is a maintainer of SciPy and a contributor to a few other open-source projects like NumPy, PyMC, and scikit-learn. He participated in Google Summer of Code with PyMC in 2020 and with SciPy in 2021. He works primarily with Python and C, and he also codes with C++ and Julia. He is currently a graduate computer science student at Arizona State University. |
| 153 | +::: |
| 154 | + |
| 155 | +:::{grid-item} |
| 156 | +:columns: 12 6 6 4 |
| 157 | + |
| 158 | + |
| 159 | +::: |
| 160 | +:::{grid-item} |
| 161 | +:columns: 12 6 6 8 |
| 162 | + |
| 163 | +[Larry Dong](https://www.linkedin.com/in/larry-dong/) GSoC 2021 & 2022 |
| 164 | +> Larry is a PhD student in biostatistics at the Dalla Lana School of Public Health at the University of Toronto in Toronto, Canada. He began his PhD during the pandemic which has allowed him to be immersed in open-source, particularly in the PyMC community. His first GSoC project entailed implementing a Dirichlet Process submodule for PyMC and he returned for another GSoC to continue this project and to learn more about Aesara and AePPL. |
| 165 | +::: |
| 166 | + |
| 167 | +:::{grid-item} |
| 168 | +:columns: 12 6 6 4 |
| 169 | + |
| 170 | + |
| 171 | +::: |
| 172 | +:::{grid-item} |
| 173 | +:columns: 12 6 6 8 |
| 174 | + |
| 175 | +[Oriol Abril Pla](https://www.linkedin.com/in/oriol-abril-pla-1b9123180/) GSoC 2019 |
| 176 | +> Oriol has a background in engineering physics and astrophysics and currently works as a computational statistician. He is a core contributor and council member of ArviZ and PyMC projects. Oriol dedicates a lot of his time to community management and documentation because he believes they are as important as the code. He has helped organize and mentored in multiple Data Umbrella sprints. He has also mentored many new ArviZ and PyMC team members whose backgrounds ranged from computational scientist to technical writer. |
| 177 | +::: |
| 178 | + |
| 179 | +:::: |
0 commit comments