Online
11-14 October 2021
09:00 - 17:00
Instructors: Sam Haynes, Tim Booth, Frances Turner
Helpers: Flic Anderson, Barbara Shih, Lana Talmane
Workflows with Snakemake
Researchers needing to implement data analysis workflows face a number of common challenges, including the need to organise tasks, make effective use of compute resources, handle any errors in processing, and document and share their methods. The Snakemake workflow system provides effective solutions to these problems. By the end of the course, you will be confident in using Snakemake to run real workflows in your day-to-day research.
Snakemake workflows are described by special scripts that define steps in the workflow as rules, and these are then used by Snakemake to construct and execute a sequence of shell commands to yield the desired output. Re-calculation of existing results is avoided where possible, so you can add or update input data, then efficiently generate an updated result. Workflows can be seamlessly scaled to server, cluster, grid and cloud environments without the need to modify the workflow definition.
This course is primarily intended for researchers who need to automate data analysis tasks for biological research involving next-generation sequence data, for example RNA-seq analysis, variant calling, CHIP-Seq, bacterial genome assembly, etc. However, Snakemake has many uses beyond this and the course does not assume any specialist biological knowledge. The language used to write Snakemake workflows is Python-based, but no prior knowledge of Python is required or assumed either. We do require that attendees must have familiarity with using the Linux command line (pipes, redirects, variables, …), but these topics will recapped as part of the course.
Ed-DaSH
Ed-DaSH is a Data Science training programme for Health and Biosciences. The team has developed new lessons using The Carpentries platform. See workshops for dates and registration details. All Ed-DaSH workshops are delivered remotely.
Where: This training will take place online. The instructors will provide you with the information you will need to connect to this meeting.
When: 11-14 October 2021. Add to your Google Calendar.
Requirements: Participants must have access to a computer with a Mac, Linux, or Windows operating system (not a tablet, Chromebook, etc.) that they have administrative privileges on. They should have a few specific software packages installed (listed below).
Accessibility: We are dedicated to providing a positive and accessible learning environment for all. Please notify the instructors in advance of the workshop if you require any accommodations or if there is anything we can do to make this workshop more accessible to you.
Contact: Please email first@example.org or second@example.org for more information.
Roles: To learn more about the roles at the workshop (who will be doing what), refer to our Workshop FAQ.
Everyone who participates in Carpentries activities is required to conform to the Code of Conduct. This document also outlines how to report an incident if needed.
We will use this collaborative document for chatting, taking notes, and sharing URLs and bits of code.
The lesson taught in this workshop is being piloted and a precise schedule is yet to be established.
Pre-workshop Setup | |
Lessons | |
Introduction to the Command Line | Introduction |
Navigating Files and Directories | |
Working with Files and Directories | |
Redirection | |
Writing Scripts and Working with Data | |
Breaks | |
Morning | 10:30 - 10:45 |
Lunch | 12:30 - 13:30 |
Afternoon | 15:00 - 15:15 |
Lessons | |
Introduction to Conda | Getting Started with Conda |
Working with Environments | |
Using Packages and Channels | |
Sharing Environments | |
Configuring Conda | |
Breaks | |
Morning | 10:30 - 10:45 |
Lunch | 12:30 - 13:30 |
Lessons | |
Introduction to Snakemake | Running commands with Snakemake |
Placeholders and Wildcards | |
Chaining Rules | |
How Snakemake plans what jobs to run | |
Breaks | |
Morning | 10:30 - 10:45 |
Lunch | 12:30 - 13:30 |
Afternoon | 15:00 - 15:15 |
Lessons | |
Introduction to Snakemake - Cont. | Processing lists of inputs |
Handling awkward programs | |
Configuration files and parameters | |
Optimising workflow performance | |
Input functions | |
Planning and debugging your own workflows | |
Breaks | |
Morning | 10:30 - 10:45 |
Lunch | 12:30 - 13:30 |
Afternoon | 15:00 - 15:15 |
To participate in a workshop, you will need access to software as described below. In addition, you will need an up-to-date web browser.
We maintain a list of common issues that occur during installation as a reference for instructors that may be useful on the Configuration Problems and Solutions wiki page.
If you haven't used Zoom before, go to the official website to download and install the Zoom client for your computer.
Like other Carpentries workshops, you will be learning by "coding along" with the Instructors. To do this, you will need to have both the window for the tool you will be learning about (a terminal, RStudio, your web browser, etc..) and the window for the Zoom video conference client open. In order to see both at once, we recommend using one of the following set up options:
Please check the “Setup” page of the lesson site for instructions to follow to obtain the software and data you will need to follow the lesson.