diff options
author | Mohammad Akhlaghi <mohammad@akhlaghi.org> | 2020-11-30 14:42:02 +0000 |
---|---|---|
committer | Mohammad Akhlaghi <mohammad@akhlaghi.org> | 2020-11-30 14:56:15 +0000 |
commit | e9df3548b15b87b5291e6b7a335c4860376cfdb9 (patch) | |
tree | a8ca00303130b7444adcfbf23f7926931d514544 | |
parent | 5170de51f7c09dfdee1db22f79f76ef6c60bb30f (diff) | |
parent | 94f1ac706945efa6c3d1127695f2381abaf5d8ff (diff) |
Imported improved definition that is made better after discussion
After Mohammad-reza sent me his commit on an improved definition for
longevity, we had an indepth discussion (through a video-conference) to
avoid complexities in the terminology, while staying on point and
word-count.
In this commit/merge, I am including the improved version of the definition
of longevity, and the newly added term "functionality" (instead of
"usability" that Mohammad-reza was originally complaining to).
-rw-r--r-- | paper.tex | 10 |
1 files changed, 5 insertions, 5 deletions
@@ -126,10 +126,10 @@ Decades later, scientists are still held accountable for their results and there \section{Longevity of existing tools} \label{sec:longevityofexisting} \new{Reproducibility is defined as ``obtaining consistent results using the same input data; computational steps, methods, and code; and conditions of analysis'' \cite{fineberg19}. -Longevity is defined as the length of time that a project remains \emph{usable}. -Usability is defined by context: for machines (machine-actionable, or executable files) \emph{and/or} humans (readability of the source). -Many usage contexts do not involve execution: for example, checking the configuration parameter of a single step of the analysis to re-\emph{use} in another project, or checking the version of used software, or the source of the input data. -Extracting these from the outputs of execution is not always possible.} +Longevity is defined as the length of time that a project remains \emph{functional} after its creation. +Functionality is defined as \emph{human readability} of the source and its \emph{execution possibility} (when necessary). +Many usage contexts of a project don't involve execution: for example, checking the configuration parameter of a single step of the analysis to re-\emph{use} in another project, or checking the version of used software, or the source of the input data. +Extracting these from execution outputs is not always possible.} Longevity is as important in science as in some fields of industry, but not all; e.g., fast-evolving tools can be appropriate in short-term commercial projects. To highlight the necessity, a short review of commonly-used tools is provided below: @@ -162,7 +162,7 @@ Hence, if the image is built in different months, its output image will contain In the year 2024, when long-term support for this version of Ubuntu expires, the image will be unavailable at the expected URL. Generally, Pre-built binary files (like Docker images) are large and expensive to maintain and archive. %% This URL: https://www.docker.com/blog/docker-hub-image-retention-policy-delayed-and-subscription-updates} -\new{Because of this DockerHub (where many reproducible workflows are archived) announced that inactive images (older than 6 months) will be deleted in free accounts from mid 2021.} +\new{Because of this, DockerHub (where many reproducible workflows are archived) announced that inactive images (older than 6 months) will be deleted in free accounts from mid 2021.} Furthermore, Docker requires root permissions, and only supports recent (``long-term-support'') versions of the host kernel, so older Docker images may not be executable \new{(their longevity is determined by the host kernel, typically a decade)}. Once the host OS is ready, PMs are used to install the software or environment. |