-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Showing
1 changed file
with
35 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
+++ | ||
title = 'Environments' | ||
date = 2024-05-09T09:09:06-05:00 | ||
+++ | ||
|
||
### Environments | ||
|
||
#### Building your Environment | ||
|
||
When creating a digital project it is important to know what underlying software, platforms, libraries, code, etc. we are utilizing. By keeping track of these elements we can make sure that our future work and that of researchers that build upon our efforts can execute our codes. | ||
But this can be a very time-consuming task especially when it is not built into the workflows that we may already use in our day-to-day practices. For this very reason, we can utilize containers that exist to help you standardize and be able to distribute your environments. | ||
|
||
##### Lesson - Containers | ||
[_Code refinery container Lesson_](https://coderefinery.github.io/reproducible-research/environments/) | ||
|
||
But it is not enough to just utilize already tested environments or possibly package our own. We need to also track our __dependencies__ as they get __increasingly__ complicated as this next picture illustrates perfectly. | ||
|
||
![dependency image](https://coderefinery.github.io/reproducible-research/_images/python_environment.png) | ||
|
||
> Dependencies are the underlying software, libraries, platforms, etc. on which something (*can be a library, tool, code*) you are using relies upon. | ||
For example, if you are using the package _scipy_ you need to have _python_ and _pip_ on your environment already. In this case, _python_ and _pip_ are your __dependencies__. To track these dependencies we can utilize package managers which organize the environments and track the dependencies for us. | ||
|
||
##### Lesson - Dependencies | ||
[_Code Refinery dependency lesson_]("https://coderefinery.github.io/reproducible-research/dependencies/) | ||
|
||
|
||
##### Additional resources | ||
- Common container software intro lessons and/or docs: | ||
- Docker | ||
- [Carpentries lesson](https://carpentries-incubator.github.io/docker-introduction/) | ||
- [Matthew Feickert Lesson](https://matthewfeickert.github.io/intro-to-docker/) | ||
- [Official Intro Docs](https://docs.docker.com/get-started/) | ||
- Singularity (very useful for High-performance Computing work) | ||
|