Hi @missaishagurung and welcome!
I am thrilled to see applications start to come in
As you will have seen, I am the mentor of the project you are interested in. For that project you may have to do some small contributions to pymc3 itself or even Aesara if they were blocking the progress on the notebooks, but work will happen at pymc-examples. I have been working on the contributing guide as well as building up some infrastructure. The contributing guide should have everything you’ll need to find where to work and how to get started, if there is anything not clear enough don’t hesitate to ask here.
It can also be daunting to browse through all the issues to find one that you are interested in, so I’d recommend looking at tutorials and examples pages and find one that you like. Or if you already have some preferences like generalized linear models, gaussian processes, model comparison… let me know and I can’t point directly to relevant notebooks.
I am a bit behind schedule on labeling and triaging the notebooks according to their current state, but you can also do it yourself. When you find a notebook you like, see if it is following all the recommendations in this wiki page (I recommend starting with the ones in “General updates” only, then move to “ArviZ” ones after a couple notebooks).
Once you do (only a handful are already updated for now) look for the corresponding issue and comment there to indicate you’ll be working on that and ensure nobody does duplicated work or has to deal with git conflicts. If I still have not gotten around to create the issue for that particular notebook, comment here and I’ll do it asap. You can check by yourself, but even if the issue is not (yet) labeled as “good first issue”, updating a notebook from “To Do” to “General updates” will be a good way to get started contributing for 90% or more of the notebooks.
Lastly, a side comment to make sure there are no confusions and you don’t end up at the wrong github repo. TL;DR: you should not learn about pymc4 as we won’t work on it anymore, a more detailed explanation below.
It may sound strange, but PyMC3 4.0 and PyMC4 are different things for historical reasons. We started working on pymc4 as the next major version of pymc3, it was to be built on top of tensorflow probability but after experimenting and playing around for a while, we realized it was not the best way to go, and instead decided to took over active development of Theano (the backend of pymc3 3.x) and improve it to fit our needs even better than Theano; thus Aesara was born. pymc3 4.x will use Aesara and is a major rewrite of pymc3 with many improvements, but it’s general approach is closer to pymc3 3.x (when compared to pymc4 experiments) and will make the transition smoother for our users while still drastically improving both performance and functionality. Here is the full announcement on this topic.