pyOpenSci / software-submission

Submit your package for review by pyOpenSci here! If you have questions please post them here: https://pyopensci.discourse.group/
94 stars 36 forks source link

bibat: Batteries-included Bayesian analysis template #82

Closed teddygroves closed 1 year ago

teddygroves commented 1 year ago

Submitting Author: Teddy Groves (@teddygroves)
Package Name: bibat One-Line Description of Package: a batteries-included template for Bayesian data analysis projects Repository Link (if existing): https://github.com/teddygroves/bibat


Description

Bibat is a Python package providing a flexible interactive template for Bayesian statistical analysis projects.

It aims to make it easier to create software projects that implement a Bayesian workflow that scales to arbitrarily many inter-related statistical models, data transformations, inferences and computations. Bibat also aims to promote software quality by providing a modular, automated and reproducible project that takes advantage of and integrates together the most up to date statistical software.

Bibat comes with "batteries included" in the sense that it creates a working example project, which the user can adapt so that it implements their desired analysis. We believe this style of template makes for better usability and easier testing of Bayesian workflow projects compared with the alternative approach of providing an incomplete skeleton project.

Scope

I think the best category would be 'workflow automation and versioning' as described here but 'reproducibility' works as well!

Bibat makes Bayesian statistical analysis projects easier to reproduce by providing easy access to automation, a file-based and declarative workflow and a project structure with well-designed abstractions and modules.

The target audience is people who want to write software implementing a Bayesian workflow as described in this paper and are willing to do so using Python scientific libraries, Stan, cmdstanpy, pydantic, pandera and make, as well as perhaps pytest, sphinx, quarto and github actions.

I am not aware of any interactive template that specifically targets a Python-based Bayesian workflow that scales to arbitrarily many models and data transformations.

In addition, bibat is unusual compared to other interactive templates because it is 'batteries-inclued', providing a full working example project rather than an incomplete skeleton

I previously made a presubission enquiry (#62) about an earlier version of this package, which pyOpenSci could not review at the time.

I am making another enquiry to see if it is now in scope, considering the latest state of the package and pyOpenSci's latest policy and capacity.

The following changes might be particularly relevant:

I also noticed that a broadly similar package was recently considered within scope (#74).

P.S. *Have feedback/comments about our review process? Leave a comment here

NickleDave commented 1 year ago

Hi @teddygroves! Just want to let you know we saw this presubmission

It's obvious you've put a ton of work into bibat.
I do see you've made changes that meet many of our requirements for scope and the requirements for JOSS articles, as you describe.

We are discussing with people more familiar with Bayesian workflows and STAN. This presubmission inquiry also brings up some questions about how we define the category of reproducibility that we need to answer.

Please expect an answer from us sometime next week. Thank you!

teddygroves commented 1 year ago

Thanks a lot for the update!

NickleDave commented 1 year ago

Hi @teddygroves we have decided to go ahead with a review.

Some context, to keep thing open: the general consensus is that this package clearly fits into the replication category, and that it would be considered in scope by our sister org rOpenSci, along the lines of tools for research compendia AKA repro-packs. Like I said before, it's clear you've put a ton of work in to development. There's a question of how generalized the approach is, or whether the community you're developing for might see it as "opinionated", but a good way to find out would be to put the package through review!

Please go ahead and make a full submission. Once you do so, I will close this issue. I'll proceed with finding an editor in the meantime.

teddygroves commented 1 year ago

Great! I just made the full submission - excited for the review process. Please let me know anything I can help with!

NickleDave commented 1 year ago

Perfect, thank you @teddygroves. We are working on finding an editor now and I will get to editor checks next. Closing this now that you've opened #83