At Code Ocean our mission is to empower researchers with easy-to-use computational tools that make their work efficient, reproducible and collaborative and help them achieve faster and higher quality discoveries.
Our Compute Capsules™ are what make that mission a reality. Compute Capsules allow computational, bioinformatics and science teams to easily create, organize and share project code, data, the required computing environment, and research results with guaranteed reproducibility. Compute Capsules make it possible for all researchers, even those without software engineering background, to get started with coding and analyzing data quickly, easily and without time consuming set-up.
So far so good, but what are Compute Capsules? This blog describes what Compute capsules are, how they address challenging and critical barriers to discovery and who benefits from using them.
Complex Modeling, Coding and Data Analysis Without An Advanced Software Engineering Degree
Science is data, increasingly big data and code, that can no longer be analyzed using spreadsheets, calculators and a few basic computing packages. Analysis pipelines get ever more complex, new commercial and open-source software packages become available, different programming languages are used as well as different software versions and different computing environments. Making all of that work on one computing machine and user experience is challenging for non-experts.
When you add security protocols, access restrictions and the need to share or collaborate with colleagues and external partners to the mix, a degree in a science, even computational science, often is no longer enough: researchers basically need an advanced degree in software engineering and access to IT. Most don’t and therefore struggle getting started with, running, organizing and sharing analysis projects.
This is where Compute Capsules come to the rescue!
Code, Data, Compute Environment And Results In One Standard Package
Compute Capsules allow researchers to package code, data, computing environment and results in a software package that can then be shared with and used by others without the need to install several operating systems, libraries, application packages in the correct versions on potentially several computing machines.
This means that the individual researcher does not have to worry about setting up and maintaining an analysis pipeline and computing environment on their machine(s) that exactly matches that of their co-workers in order to collaborate. They can access the Capsule, find the user analysis workflow all set up, rerun code and/or build on existing work. Even better, computational researchers and developers can create and publish Capsule Apps which are ready-to-execute and can be explored by everyone on the team.
Secure access can be handled on the Capsule level, therefore individual scientists don’t have to set up their own secure system to access data, code or results, but can simply use the credentials provided.
In summary, with Compute Capsules Code Ocean generates standard, secure, and executable packages. Each Capsule is stored, versioned and contains code, data, environment, and the associated results.
The Code Ocean Capsule format is open, exportable, reproducible and interoperable but hides the complexity associated with set-up and maintenance.
Compute Capsules are indeed a new software package including everything you need to go from raw data to results. Compute Capsules are a key component in establishing a computational governance platform that supports a system of record and enables increased visibility, trust and control for research discoveries. Now the entire discovery team can easily share their work with authorized colleagues anywhere.
Compute Capsules At-A-Glance
Compute Capsules applications
- Create a standard analysis asset that can be executed, used and reused in a versioned environment
- Share code and data analysis with internal and external collaborators to review or build on existing work
- Share Capsule with peer-reviewers to allow them to easily validate your results by rerunning your analysis
- Create secure environment that allows you to grant tiered access to different collaborators
Who can benefit from Compute Capsules and how
- Computational researchers (biology, chemistry) – Compute Capsules are a trusted source of analysis and results to build on and share
- Bioinformatics and cheminformatics engineers – Compute Capsules are a technical asset that can package and secure data, algorithms and any analysis packages for the analysis team
- Bench Scientists (biologists, chemists) – Compute Capsules are ready-to-use apps containing information about an area of research.
- IT architects and operations – Compute Capsules are a way to standardize the user experience and environment and to make provisioning tools, packages, data access, collaboration as well as compute and storage infrastructure agile and scalable.
- Security and Compliance officers – Compute Capsules make it easy and fast to set up secure and compliant access on the Capsule level once for everybody with the appropriate access credentials.
Characteristics of Compute Capsules
- Executable: they contain all the code, data and computing environment to execute
- Open: import your favorite analysis packages, use your preferred language, access your data in whatever cloud you store them in
- Intuitive: ready-to-run analysis pipeline in a standardized environment makes it easy, fast and intuitive to get started and work within a Capsule.
- Shareable: easily share with collaborators, colleagues and reviewers without them having to recreate the pipeline or computing environment
- Versioned: edit, modify and/or add to a Capsule in a versioned environment that allows you to track every change
- Secure: securely store Capsules in cloud-based repositories for long-term preservation and reuse.
- Exportable: export your Capsule whole as a zip file and rebuild it using open source tools like Docker or download each component of the Capsule – code, data, environment, results and metadata – as a zip file or as individual files
- Reproducible: reproduce results from an end-to-end analysis with one click. Capture daily iterations to ensure data provenance and easily reproduce projects from any point in time.
- Interoperable: exported Capsules are not dependent on anything proprietary and use de facto standard Docker making them interoperable by design.
If you have any questions about Code Ocean Compute Capsules or how to best use Capsules to streamline your work, please contact us here.