This lesson is still being designed and assembled (Pre-Alpha version)

Nextflow for Reproducible Scientific Analysis

Overview

Nextflow is a workflow manager rapidly increasing in popularity in the scientific community. The framework allows scientists to integrate code from any language, separate functional logic from the execution engine, encapsulate software dependencies, and simplify analyses into readable, self-contained, easy to reproduce projects. It enables high-throughput and data intensive analyses to be run locally, or across compute cluster or cloud infrastructures.

Goal

The goal of this lesson is to teach scientists with little programming skill to use and write nextflow workflows for scientific analysis. The emphasis of these materials is to provide a foundation in the fundamentals of Nextflow, and teach good practices for scientific computing: breaking down analyses into modular units, testing, and encapsulation.

Additional material may be provided later for more advanced users.

Prerequisites

  • Comfortable using Unix command line (Participants will be asked to navigate directories, and utilise various command-line tools).
  • Experience with a scripting language (Basic necessity - be able to write and execute an ordered set of instructions in some computer language).

Schedule

Setup Download files required for the lesson
00:00 1. Introduction Key question (FIXME)
00:00 2. Introduction to Workflows What is a workflow?
Why should I use a workflow?
What are the advantages of Nextflow?
00:30 3. The Nextflow Language What language is nextflow written in?
How do I write a nextflow script?
How can I run a nextflow script?
01:30 4. Processes How do I include a software tool into a Nextflow workflow?
How do I pass parameters to the tool?
How do I access tool results?
02:20 5. Channels How do I read data into the workflow?
How do I pass data around the workflow?
03:10 6. Workflow Configuration How do I configure Nextflow for my infrastructure?
03:10 7. Software Package Managers How is software managed?
03:10 8. The new Nextflow syntax - DSL2 What is different in DSL2?
03:10 9. Converting your project to Nextflow How can convert my project to Nextflow?
03:10 10. Supplementary: Version control How does Nextflow integrate with version control?
03:10 11. Supplementary - Nextflow on Grid Computing Infrastructures Key question (FIXME)
03:10 12. Supplementary - Nextflow on Cloud Computing Infrastructures Key question (FIXME)
03:10 13. Supplementary - Nextflow on Cloud Computing Infrastructures Key question (FIXME)
03:10 Finish

The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.