-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #19 from esciencecenter-digital-skills/research-so…
…ftware Research software
- Loading branch information
Showing
7 changed files
with
84 additions
and
80 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
24 changes: 24 additions & 0 deletions
24
modules/researchsoftware/exercise-is-it-research-software.md
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,24 @@ | ||
|
||
## Exercise: Is it research software? | ||
|
||
Using the definition of research software from the FAIR4RS working group, try to classify the following as "research software" or "software in research" | ||
|
||
### Example software tools | ||
|
||
#### Shape Preserving Local Histogram Modification Algorithm | ||
[An Analysis and Implementation of the Shape Preserving Local Histogram Modification Algorithm](https://doi.org/10.5201/ipol.2018.236) is a published article on [IPOL](https://www.ipol.im/). The source code implementing the algorithm is available for download. | ||
|
||
Is this "research software" or "software in research"? | ||
|
||
#### SciPy | ||
[SciPy](https://zbmath.org/software/6293) is open-source software for mathematics, science, and engineering. | ||
It is also the name of a very popular conference on scientific programming with Python. The SciPy library depends on NumPy, which provides convenient and fast N-dimensional array manipulation. | ||
The SciPy library is built to work with NumPy arrays, and provides many user-friendly and efficient numerical routines such as routines for numerical integration and optimization. | ||
Together, they run on all popular operating systems, are quick to install, and are free of charge. | ||
NumPy and SciPy are easy to use, but powerful enough to be depended upon by some of the world’s leading scientists and engineers. | ||
|
||
Is this "research software" or "software in research"? | ||
|
||
### Other software tools | ||
How about other software tools you are familiar with? | ||
Can you provide an example of software you are familiar with, and then classify it as "research software" or "software in research"? |
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,20 @@ | ||
|
||
## Exercise: Where does software fit in the research life cycle? | ||
|
||
Take a look at the research life cycle below. | ||
|
||
<img src="stories/_fairsoftware/researchcycle.png" alt="The Research Life Cycle" width="400"/> | ||
|
||
Think of a piece of research software you have used or developed. | ||
|
||
Where does it fit in the research life cycle? | ||
|
||
### Existing software | ||
|
||
The following research software can also be used as examples: | ||
|
||
- [Xenon](https://research-software-directory.org/software/xenon) | ||
- [ESMValTool](https://research-software-directory.org/software/esmvaltool) | ||
- [RS-DAT](https://research-software-directory.org/projects/rs-dat) | ||
- [Haddock](https://research-software-directory.org/software/haddock3) | ||
- [worcs](https://cjvanlissa.github.io/worcs/index.html) |
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,14 @@ | ||
|
||
## The role of research software (10 minutes) | ||
|
||
The following piece was written after a workshop called "The Future of Research Software", held in the Netherlands in 2022. | ||
|
||
It explores the different roles for research software in the research life cycle, strengthening the case for sustainable software. | ||
|
||
[Defining the Roles of Research Software](https://upstream.force11.org/defining-the-roles-of-research-software/) | ||
|
||
After reading the piece, discuss the following questions: | ||
|
||
- What are the different roles of research software? | ||
- What are the challenges for each of these roles? | ||
- How can we address these challenges? |
File renamed without changes.
File renamed without changes.
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,26 @@ | ||
|
||
### Software is data (10 minutes, optional) | ||
In computer science, the fact that software is data is considered one of the fundamental concepts of computing. The fact that the thing that operates the machine (software) is the same kind of thing as the thing it operates on (data) is definitely one of the strengths of current computersystems and one of the main reasons why we can do such complex and powerful things with the combination of hardware and software. | ||
|
||
Read the following blogpost about why this concept is so powerful: | ||
https://www.blackliszt.com/2014/04/fundamental-concepts-of-computing-software-is-data.html | ||
|
||
|
||
### Software is a special type of data () | ||
However for most practical purposes in most domains of scientific research (except maybe the domain of computer science) it is useful to make a distinction between the data that is software and other data. From now on, when we use the word data, we mean the kind fo data which is not software and which we use to store more static information. | ||
|
||
- Software is executable, data is not. | ||
- Data provides information or evidence, software provides a tool to do work on the data. | ||
- Software is a creative work, scientific data are facts or observations. | ||
- The lifetime of software is generally not as long as that of data. | ||
|
||
|
||
https://github.com/danielskatz/software-vs-data | ||
|
||
https://doi.org/10.7287/peerj.preprints.2630v1 | ||
|
||
|
||
### Discussion | ||
|
||
- | ||
- Can you think of examples where the line between software and data becomes fuzzy? |