carpentries-incubator / cwl-novice-tutorial

Introduction to Workflows with Common Workflow Language
https://carpentries-incubator.github.io/cwl-novice-tutorial/
Other
11 stars 20 forks source link

WIP: Requirements Episodes #13

Closed bcosc closed 3 years ago

bcosc commented 3 years ago

Hi! This is still a WIP, but I added some exercises to the requirements portion, let me know what you think of these types of exercises.

tobyhodges commented 3 years ago

These exercises are a great start: they definitely test the learner's understanding of the relevant concepts for this section. I'd like to see more practical exercises, i.e. challenges that require the learner to write and execute a CWL description rather than only think about them conceptually, but I accept that that is quite difficult to do with a fairly theory-heavy section such as this one.

An example I can think of could be to provide a tool description with a ResourceRequirements section that needs to be updated ("Recent runs have suggested that these jobs require only half the RAM that was originally estimated but that the space for storing results files needs to be doubled. Additionally, the tool will now be run across 16 cores instead of 8. Update the ResourceRequirements section of the description below to reflect these changes.")

I don't actually know if an exercise like this makes sense in the context of resource management with CWL (or if such updates are handled automatically based on the job parameters) but hopefully you get the idea!

mr-c commented 3 years ago

Theme: everything about describing a command line tool, except for inputBindings

mr-c commented 3 years ago

We need to not use the word "requirements" here, it is confusing

mr-c commented 3 years ago

I think the theme is "What is needed to have a 'complete' CommandLineTool description?

netlify[bot] commented 3 years ago

Deploy preview for agitated-wright-f1741d ready!

Built with commit 988b320070ee0e82de0d1b1fe107a632668c519a

https://deploy-preview-13--agitated-wright-f1741d.netlify.app