Mar 5 – 7, 2024
Julius-Maximilians-Universität Würzburg
Europe/Berlin timezone

neuro-conda: A Python Distribution For Neuroscience

Not scheduled
20m
Mathematisch-Naturwissenschaftliches Hörsaalgebäude (Julius-Maximilians-Universität Würzburg)

Mathematisch-Naturwissenschaftliches Hörsaalgebäude

Julius-Maximilians-Universität Würzburg

Am Hubland 97074 Würzburg
Poster Computational Reproducibility Poster Session

Speaker

Dr Stefan Fuertinger (Ernst Strüngmann Institute (ESI) for Neuroscience in Cooperation with Max Planck Society)

Description

Neuroscience is a multi-disciplinary field that involves scientists from diverse backgrounds such as biology, computer science, engineering, and medicine. These scientists work together to understand how the brain operates in health and disease. The areas of application in neuroscience that require software are as diverse as the scientific backgrounds and programming skills of the scientists, ranging from experimental control and data collection to simulations, data analysis, and management. Python has established itself as the de-facto standard in modern neuroscience due to its accessibility and broad scope of applicability.

However, the software tooling supporting Python workflows has to be handled by often inexperienced end-users leveraging well-established scientific libraries shipped across dozens, sometimes hundreds of dependent packages. Setting these up in a robust and reproducible manner is crucial for the quality of the research but oftentimes not trivial to accomplish. For example, the dependencies of one package may be incompatible with another resulting in a conflict that has to be resolved manually. Python’s lack of a standardized package manager spurred the emergence of several third-party solutions, such as pip, conda, and poetry, making this task even more complex.

To ease the initial burden of dependency management, we built the Python distribution neuro-conda as an accessible entry point into the existing universe of software tools for neuroscience. It provides an easy-to-install, ready-to-use computational working environment for neuroscience supporting all major desktop operating systems (Windows, macOS, and Linux). Installation from scratch can be done with a single one-liner from the command line. Adding neuro-conda to existing conda installations is also possible. Through curation of the included packages and providing explanatory package lists, neuro-conda simplifies the setup process and ensures reproducibility of the research. It is available from https://github.com/neuro-conda.

We aim to prepare bi-annual releases that bring new feature updates of included libraries to end-users while previous releases remain available. The neuro-conda version provides a unique identifier of a complete environment, making it citable and reproducible. Each release is tested automatically in a continuous integration pipeline to ensure support for multiple Python versions and operating systems.

In summary, the neuro-conda distribution bundles commonly used neuroscience packages into curated conda environments, which are rigorously tested and validated for consistency and reliability.

Primary authors

Joscha Tapani Schmiedt (Brain Research Institute, University of Bremen) Dr Stefan Fuertinger (Ernst Strüngmann Institute (ESI) for Neuroscience in Cooperation with Max Planck Society)

Presentation materials

There are no materials yet.