Register now After registration you will be able to apply for this opportunity online.
This opportunity is not published. No applications will be accepted.
Advanced Scientific Software Management with Gentoo Linux
We implement advanced software environment features for biomedical engineering, preclinical, and basic research applications. The heterogeneous and rapidly evolving nature of scientific software poses many unique challenges, which we tackle using the exceptional capabilities of Gentoo Linux.
As part of this project you will address an information technology challenge with ample applications in science, technology, and biomedical imaging in particular. You will work with state-of-the art software and computational infrastructures, and will be given abundant resources in both operational costs and tutoring in order to fulfill your goal.
**This project affords numerous opportunities:**
* Implement and enhance your practical abilities with Linux
* Gain insight into biomedical research and the software engineering opportunities it offers.
* Develop a free and open source project, and become accustomed to Git and the world of collaborative coding.
* Implement the capabilities of Gentoo Linux for novel use cases, and become accustomed to Free and Open Source organizational structures.
* Receive proficient tutoring in Linux, Python, and Git, as needed.
.
**To adequately tackle the challenges of this project you should have:**
* *some* previous experience working on Linux.
* *some* previous experience coding in either Bash or Python.
* a *basic* understanding of cloud computing platforms and software management.
.
**Though not mandatory or assumed, the following would be a significant plus:**
* prior experience with the Gentoo Linux distribution
* prior experience with automated build systems (e.g. CMake or autotools)
* prior experience with Git
.
**Research Context and Technical Details:**
The bulk of present-day “data analysis” consists in programmatically connecting analysis workflows as needed to address novel questions. Invariably, existing functionalities thus constantly become dependencies of novel workflows. Workflows which prove useful and become popular may in turn become dependencies themselves - for higher level analysis tools. This evolutionary process of data analysis provides an excellent framework for decentralized and self-regulating development; it does, however, also give rise to a complex dependency graph, which poses enormous problems for any sort of unautomated software-management paradigm.
Manual and bundled software management precludes integration of packages into flat workflows in which all programs use the same sub-routines and document that usage, and thus contribute to the reproducibility issue of modern science. Thus, an outlook towards open and reproducible science makes automated software management imperative in the long run.
Portage, the package management system used by Gentoo, is based on thin wrappers for the build systems of externally hosted software. As such it can seamlessly integrate live and development software, and provide atomized package management.
The feasibility of Gentoo has been tested with a neuroscientific package dependency graph (depicted in this ad) and results were documented in the relevant publication ( http://riojournal.com/articles.php?id=12095 ) and presented at the most recent Gentoo conference ( http://www.youtube.com/watch?v=7PAm6ND4S-E ).
As part of this project you will address an information technology challenge with ample applications in science, technology, and biomedical imaging in particular. You will work with state-of-the art software and computational infrastructures, and will be given abundant resources in both operational costs and tutoring in order to fulfill your goal.
**This project affords numerous opportunities:**
* Implement and enhance your practical abilities with Linux * Gain insight into biomedical research and the software engineering opportunities it offers. * Develop a free and open source project, and become accustomed to Git and the world of collaborative coding. * Implement the capabilities of Gentoo Linux for novel use cases, and become accustomed to Free and Open Source organizational structures. * Receive proficient tutoring in Linux, Python, and Git, as needed.
.
**To adequately tackle the challenges of this project you should have:**
* *some* previous experience working on Linux. * *some* previous experience coding in either Bash or Python. * a *basic* understanding of cloud computing platforms and software management.
.
**Though not mandatory or assumed, the following would be a significant plus:**
* prior experience with the Gentoo Linux distribution * prior experience with automated build systems (e.g. CMake or autotools) * prior experience with Git
.
**Research Context and Technical Details:**
The bulk of present-day “data analysis” consists in programmatically connecting analysis workflows as needed to address novel questions. Invariably, existing functionalities thus constantly become dependencies of novel workflows. Workflows which prove useful and become popular may in turn become dependencies themselves - for higher level analysis tools. This evolutionary process of data analysis provides an excellent framework for decentralized and self-regulating development; it does, however, also give rise to a complex dependency graph, which poses enormous problems for any sort of unautomated software-management paradigm.
Manual and bundled software management precludes integration of packages into flat workflows in which all programs use the same sub-routines and document that usage, and thus contribute to the reproducibility issue of modern science. Thus, an outlook towards open and reproducible science makes automated software management imperative in the long run.
Portage, the package management system used by Gentoo, is based on thin wrappers for the build systems of externally hosted software. As such it can seamlessly integrate live and development software, and provide atomized package management.
The feasibility of Gentoo has been tested with a neuroscientific package dependency graph (depicted in this ad) and results were documented in the relevant publication ( http://riojournal.com/articles.php?id=12095 ) and presented at the most recent Gentoo conference ( http://www.youtube.com/watch?v=7PAm6ND4S-E ).
Establish an automated software management system which is easily launchable on all common data analysis platforms and can automatically fulfill the dependencies for any adequately documented data analysis routine.
Our work should enable scientists to analyze external results, using external scripts, on a personal or remote system on which they can manipulate all available parameters.
To fulfill this end result you need to:
* increase the number of scientific software packages available for Gentoo
* improve and maintain some of the current scientific software packages
* determine the most feasible way to deploy a scientific Gentoo system on popular platforms, and write installation scripts and/or instructions as needed
* design or implement a framework to translate the requirements of nonpackaged data analysis workflows into a dependency list and/or minimal dependency archive.
Establish an automated software management system which is easily launchable on all common data analysis platforms and can automatically fulfill the dependencies for any adequately documented data analysis routine.
Our work should enable scientists to analyze external results, using external scripts, on a personal or remote system on which they can manipulate all available parameters.
To fulfill this end result you need to:
* increase the number of scientific software packages available for Gentoo * improve and maintain some of the current scientific software packages * determine the most feasible way to deploy a scientific Gentoo system on popular platforms, and write installation scripts and/or instructions as needed * design or implement a framework to translate the requirements of nonpackaged data analysis workflows into a dependency list and/or minimal dependency archive.