You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: _episodes/01-introduction.md
+53-58Lines changed: 53 additions & 58 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,35 +3,30 @@ title: "Introduction"
3
3
teaching: 0
4
4
exercises: 25
5
5
questions:
6
-
-What is ESMValTool?
7
-
-When to use ESMValTool?
8
-
-What are the main parts of ESMValTool that I need to know?
9
-
-How does ESMValTool contribute to making climate research FAIR?
10
-
-What is the role of the ESMValTool community?
11
-
-Where to find help if I'm stuck with ESMValTool?
6
+
- What is ESMValTool and when is it useful?
7
+
- What are the main components of ESMValTool?
8
+
- How does ESMValTool contribute to FAIR climate research?
9
+
- What is the role of the ESMValTool community?
12
10
13
11
objectives:
14
-
-Describe the difference between ESMValTool and other tools like CDO or xarray
15
-
-Understand the main parts of ESMValTool (recipe, diagnostic script)
16
-
-Browse the documentation of ESMValTool for help
17
-
-Exlain why ESMValTool is a great way to make climate analysis FAIR
18
-
-List three different ways to get help from to the ESMValTool community (docs, user engagement email, github issues)
19
-
-Know when (not) to use ESMValTool
12
+
- Describe key strengths and weaknesses of ESMValTool
13
+
- Know the different components of ESMValTool
14
+
- Understand the concept of a community-driven software project
15
+
-
20
16
21
17
keypoints:
22
-
-ESMValTool provides a reliable interface to analyse and evaluate climate data
23
-
-By streamlining common preprocessor functions, ESMValTool facilitates comparison
24
-
-ESMValTool is built and maintained by an active community of climate scientists and software developers
25
-
-Using ESMValTool stimulates standardization, collaboration, and reuse
26
-
-ESMValTool is written in Python, but supports diagnostic scripts in multiple languages
18
+
- ESMValTool provides a reliable interface to analyse and evaluate climate data
19
+
- Using ESMValTool promotes standardization, collaboration, and reuse
20
+
- ESMValTool is built and maintained by an active community of scientists and developers
21
+
- ESMValTool is written in Python, but supports diagnostic scripts in multiple languages
27
22
28
23
---
29
24
30
-
## What is ESMValTool?
25
+
## What is ESMValTool
31
26
32
27
EMSValTool is first and foremost a tool to analyse climate data. But you probably already knew that and we like to think there's more to it than that. So let's start with a quick check to synchronize our expectations.
33
28
34
-
> ## Question: what is ESMValTool?
29
+
> ## Question: what is ESMValTool
35
30
>
36
31
> Which of the following items would you say apply to ESMValTool?
37
32
>
@@ -46,49 +41,49 @@ EMSValTool is first and foremost a tool to analyse climate data. But you probabl
46
41
>
47
42
> Check our answers by unfolding the box below.
48
43
>
49
-
>> ## ESMValTool is ...
50
-
>>
51
-
>> ✓**A tool to analyse climate data.** It takes care of finding, opening, checking, fixing, concatenating, and preprocessing CMIP data and several other supported datasets.
52
-
>>
53
-
>> ✕**The easy way out.** If you just want to do an exploratory analysis or quickly hack something together, ESMValTool is probably not the way to go. The tool is intended for robust, repeatable and shareable climate analysis. That *does* require a bit more effort.
54
-
>>
55
-
>> ✓**A community effort.** EMSValTool is developed and maintained by a large team of climate scientists and software engineers. It is an open source project to which anyone can contribute. Its longevity depends on these contributions.
56
-
>>
57
-
>> ✓**Free.** ESMValTool is licenced under Apache 2.0, which means everyone can use, modify, or share it free of charge. However, we *do* encourage all users to contribute to the community once they get more comfortable with the tool.
58
-
>>
59
-
>> ✓**A command line tool.** ESMValTool was originally designed for the command line. But, we are working on a user-friendly python interface as well.
60
-
>>
61
-
>> ✓**A way to make climate science more [FAIR](https://fair-software.eu/about).** ESMValTool collects provenance information about the data and code that are used to obtain a result. It comes with a readable recipe format that makes climate analysis consistent, reproducible, and easy to share.
62
-
>>
63
-
>> ✕**Perfect.** Although we are continuously working to improve the tool, you may encounter some bugs or missing features. In this lesson, you will learn how to troubleshoot, find help, and maybe even contribute to the solution yourself.
64
-
>>
65
-
>> ✕**Suitable for (Jupyter) notebooks.** ESMValTool was designed as a command line tool. But, we are working on a user-friendly Python interface as well.
66
-
>{: .solution}
44
+
>> ## ESMValTool is
45
+
>>
46
+
>>✓**A tool to analyse climate data.** It takes care of finding, opening, checking, fixing, concatenating, and preprocessing CMIP data and several other supported datasets.
47
+
>>
48
+
>>✕**The easy way out.** If you just want to do an exploratory analysis or quickly hack something together, ESMValTool is probably not the way to go. The tool is intended for robust, repeatable and shareable climate analysis. That *does* require a bit more effort.
49
+
>>
50
+
>>✓**A community effort.** EMSValTool is developed and maintained by a large team of climate scientists and software engineers. It is an open source project to which anyone can contribute. Its longevity depends on these contributions.
51
+
>>
52
+
>>✓**Free.** ESMValTool is licenced under Apache 2.0, which means everyone can use, modify, or share it free of charge. However, we *do* encourage all users to contribute to the community once they get more comfortable with the tool.
53
+
>>
54
+
>>✓**A command line tool.** ESMValTool was originally designed for the command line. But, we are working on a user-friendly python interface as well.
55
+
>>
56
+
>>✓**A way to make climate science more [FAIR](https://fair-software.eu/about).** ESMValTool collects provenance information about the data and code that are used to obtain a result. It comes with a readable recipe format that makes climate analysis consistent, reproducible, and easy to share.
57
+
>>
58
+
>>✕**Perfect.** Although we are continuously working to improve the tool, you may encounter some bugs or missing features. In this lesson, you will learn how to troubleshoot, find help, and maybe even contribute to the solution yourself.
59
+
>>
60
+
>>✕**Suitable for (Jupyter) notebooks.** ESMValTool was designed as a command line tool. But, we are working on a user-friendly Python interface as well.
61
+
>{: .solution}
67
62
{: .challenge}
68
63
69
64
To learn more about ESMValTool, you can look at the [documentation](https://docs.esmvaltool.org/en/latest/introduction.html), the [official website](https://www.esmvaltool.org/about.html), or the [overview paper](https://gmd.copernicus.org/articles/13/1179/2020/) in *Geoscientific Model Development*.
70
65
71
-
## How does ESMValTool work?
66
+
## How does ESMValTool work
72
67
73
68
The figure below shows the different components of ESMValTool. Most of the work is done in the 'core', which performs a number of preprocessor steps. Outside of the core we have some configuration files that specify things like *where to find the CMIP data*. The most important file however, is the *recipe* that specifies which preprocessor functions need to be applied to what data. The recipe also points to a diagnostic script that is executed after the preprocessor and performs a more specific analysis on the preprocessed data.
> Discuss or think about the pros and cons of this architecture for a moment. Then unfold the box below to see our answers.
80
75
>
81
76
>
82
-
>>## See our thoughts
83
-
>>
84
-
>> - Streamlining common preprocessing steps ensures consistency in the algorithms being used and the way they are executed. This facilitates comparison and reproducibility.
85
-
>> - Provenance and citation information can be tracked through the entire workflow.
86
-
>> - The core builds upon the [iris](https://scitools.org.uk/iris/docs/latest/) package, which is quite strict in order to comply with CF conventions and minimize unexpected results.
87
-
>> - Recipes are easy to read and share.
88
-
>> - A collection of recipes and diagnostic scripts is shipped with ESMValTool, ready for re-use. Everyone can add to this collection.
89
-
>> - The recipe format takes some getting used to and may be a bit less flexible then working on the datasets directly.
90
-
>> - Features or dataset support that are missing from ESMValCore can be a limiting factor.
91
-
>{: .solution}
77
+
>> ## See our thoughts
78
+
>>
79
+
>> - Streamlining common preprocessing steps ensures consistency in the algorithms being used and the way they are executed. This facilitates comparison and reproducibility.
80
+
>>- Provenance and citation information can be tracked through the entire workflow.
81
+
>>- The core builds upon the [iris](https://scitools.org.uk/iris/docs/latest/) package, which is quite strict in order to comply with CF conventions and minimize unexpected results.
82
+
>>- Recipes are easy to read and share.
83
+
>>- A collection of recipes and diagnostic scripts is shipped with ESMValTool, ready for re-use. Everyone can add to this collection.
84
+
>>- The recipe format takes some getting used to and may be a bit less flexible then working on the datasets directly.
85
+
>>- Features or dataset support that are missing from ESMValCore can be a limiting factor.
86
+
>{: .solution}
92
87
{: .discussion}
93
88
94
89
## Community
@@ -99,20 +94,20 @@ ESMValTool is built and maintained by an active community of scientists and engi
99
94
>
100
95
> Browse to [github.com/ESMValGroup](https://github.com/ESMValGroup). This is our 'organization' GitHub page. Have a look around. How many collaborators are there? Do you know any of them? You should see 2 main repositories: ESMValTool and ESMValCore. Clicking on them will take you to there. How many people have contributed to each of them? Can you also find out how many people have contributed to this tutorial?
101
96
>
102
-
>> ## Solution
103
-
>>
104
-
>> At the time of making this lesson, there were 138 members of ESMValGroup. 55 of them contributed to ESMValTool, 48 to ESMValCore. 52 (!) people contributed to this tutorial.
105
-
>{: .solution}
97
+
>> ## Solution
98
+
>>
99
+
>> At the time of making this lesson, there were 138 members of ESMValGroup. 55 of them contributed to ESMValTool, 48 to ESMValCore. 52 (!) people contributed to this tutorial.
100
+
>{: .solution}
106
101
{: .challenge}
107
102
108
-
>## Challenge: issues and pull requests
103
+
>## Challenge: issues and pull requests
109
104
>
110
105
> Go back to the repository pages of [ESMValTool](https://github.com/ESMValGroup/ESMValTool) or [ESMValCore](https://github.com/ESMValGroup/ESMValCore). You should see tabs for 'issues' and 'pull requests'. You can use the labels to navigate them a bit more. How many open issues are about enhancements of ESMValTool? And how many bugs have been fixed in ESMValCore? There is also an 'insights' tab, where you can see a summary of recent activity. How many issues have been opened and closed in the past month?
111
106
>
112
-
>> ## Solution
113
-
>>
114
-
>> At the time of making this tutorial, there were 50 ESMValTool issues (the majority) about enhancement and 31 bugs had been fixed in the Core. 13 ESMValTool issues had been closed in the past month, versus 8 opened: overall good progress.
115
-
>{: .solution}
107
+
>> ## Solution
108
+
>>
109
+
>> At the time of making this tutorial, there were 50 ESMValTool issues (the majority) about enhancement and 31 bugs had been fixed in the Core. 13 ESMValTool issues had been closed in the past month, versus 8 opened: overall good progress.
0 commit comments