Lessons for Teaching Demonstrations

Last updated on 2024-03-18 | Edit this page

The list below shows lessons that have been reviewed for good and bad start points to use for a teaching demonstration. When selecting an episode for a teaching demonstration, trainees should review this list to ensure it is suitable.

As of 14 August 2023, trainees are allowed to choose the episode from which their 5-minute teaching demo will begin. However, still we recommend reviewing the full lesson during preparation, as this will help provide context for instruction and is also good preparation for teaching a complete workshop later on!

If a selected episode is very short and finishes in less than 5 minutes, it may be necessary to continue on to the next episode in that lesson to complete a 5 minute demonstration. It is not necessary to teach the full episode, or to cover any specific amount of content within the 5 minute period.

NB: If your preferred lesson is not on the list or includes only ineligible episodes, please choose a different lesson. If you believe you have a lesson or episode that should be eligible but is not on the list, please email us at instructor.training@carpentries.org.

Teaching Episodes with Dependencies

Many Carpentries lessons follow a narrative: an example that runs from episode to episode, with the same data, files, variables, etc reused and modified as new skills and concepts are taught to Learners. This means that the content of later episodes in a lesson is likely to depend on the steps that have taken place earlier in the lesson.

The Recommended Episodes column of the tables below provides a list of episodes that do not depend heavily on any of the preceding content in the lesson. If you choose to teach one of the episodes not in this list of recommendations, you should take care to ensure that you have everything set up as if the preceding parts of the lesson have already been taught before your teaching demonstration begins.

Ineligible Episodes for Teaching Demos

Some lessons include episodes that cannot be used for a teaching demonstrations, usually because they contain little or no opportunity for teaching by live demonstration. These episodes are listed in the Not Eligible for Demos column of the tables below.

Data Carpentry: Genomics

If you are an instructor in training and wish to use lessons from Data Carpentry’s Genomics curriculum for your teaching demo, please read these instructions to be sure you are prepared. You must follow these steps before your teaching demo, or you will be asked to reschedule.

Lesson Recommended Episodes Not Eligible for Demos Notes
Project Organization and Management for Genomics none all episodes This is a discussion-based lesson and provides no opportunities for live demonstration. It cannot be used for teaching demonstrations.
Introduction to the Command Line all episodes none If using Introducing the Shell, begin with cd shell_data
Data Wrangling and Processing * Assessing Read Quality
* Trimming and Filtering
* Automating a Variant Calling Workflow
none The other episodes depend on actions taken earlier in the lesson - consult Teaching Episodes with Dependencies.
If using Assessing Read Quality, begin with gunzip SRR2584863_1.fastq.gz
Introduction to Cloud Computing * Logging onto the Cloud
* Fine tuning your Cloud Setup
* Why of Cloud Computing
* Which Cloud for my Data?
Data Analysis and Visualization in R none all episodes This lesson is not yet stable and cannot be used for teaching demonstrations.

Data Carpentry: Geospatial

Lesson Recommended Episodes Not Eligible for Demos Notes
Introduction to Geospatial Concepts none all episodes This is a discussion-based lesson and provides no opportunities for live demonstration. It cannot be used for teaching demonstrations.
Introduction to R for Geospatial Data all episodes none
Introduction to Raster and Vector Data with R * Intro to Raster Data in R
* Reproject Raster Data
* Work with Multi-Band Rasters
* Open and Plot Vector Layers
* Handling Spatial Projection & CRS
* Convert from a .csv to a Vector Layer
* Raster Time Series Data
none The other episodes depend on actions taken earlier in the lesson - consult Teaching Episodes with Dependencies.
You may need to allow yourself extra time to set up your environment to demo this lesson.

Data Carpentry: Astronomy

Lesson Recommended Episodes Not Eligible for Demos Notes
Foundations of Astronomical Data Science * Basic Queries
* Coordinate Transformations
none The other episodes depend on actions taken earlier in the lesson - consult Teaching Episodes with Dependencies.
If using Basic Queries, skip the episode introduction, Query Language, and Using Jupyter sections, and begin with Connecting to Gaia (from astroquery.gaia import Gaia)

Data Carpentry: Image Processing

Lesson Recommended Episodes Not Eligible for Demos Notes
Image Processing with Python * Working with skimage
* Drawing and Bitwise Operations
* Creating Histograms
* Thresholding
* Introduction
* Blurring Images
* Capstone Challenge
If using Image Basics, start from Working with Pixels.
If using Connected Component Analysis, start from the Connected Component Analysis section.
This lesson is designed to be taught with a JupyterLab environment - check the lesson’s Instructor Notes for further guidance.

Library Carpentry

Lesson Recommended Episodes Not Eligible for Demos Notes
Library Carpentry: The Unix Shell * Navigating the filesystem
* Working with files and directories
* Automating the tedious with loops
* Counting and mining with the shell
* Working with free text
* What is the shell?
Library Carpentry: OpenRefine * Importing data into OpenRefine * Introduction to OpenRefine The other episodes depend on actions taken earlier in the lesson - consult Teaching Episodes with Dependencies.
Library Carpentry: Introduction to Working with Data (Regular Expressions) none all episodes This is a discussion-based lesson and provides no opportunities for live demonstration. It cannot be used for teaching demonstrations.
Library Carpentry: Introduction to Git * Getting started with Git * What is Git/GitHub? The other episodes depend on actions taken earlier in the lesson - consult Teaching Episodes with Dependencies.
Library Carpentry: SQL * Selecting and Sorting Data
* Filtering
* Ordering and Commenting
* Aggregating and Calculating Values
* Joins and aliases
* Saving queries
* Creating tables and modifying data
* Database design
* Other database tools
* Extra-challenges
* Good style
Library Carpentry: Introduction to Tidy Data none all episodes This lesson is not yet stable and cannot be used for teaching demonstrations.
Library Carpentry: Introduction to Python none all episodes This lesson is not yet stable and cannot be used for teaching demonstrations.
Library Carpentry: Introduction to Data for Archivists none all episodes This lesson is not yet stable and cannot be used for teaching demonstrations.
Library Carpentry: Introduction to R none all episodes This lesson is not yet stable and cannot be used for teaching demonstrations.
Library Carpentry: Introduction to MarcEdit none all episodes This lesson is not yet stable and cannot be used for teaching demonstrations.
Library Carpentry: Introduction to AI for GLAM none all episodes This lesson is not yet stable and cannot be used for teaching demonstrations.

Software Carpentry

Lesson Recommended Episodes Not Eligible for Demos Notes
The Unix Shell any other episode * Introducing the Shell
Version Control with Git * Setting up Git
* Creating a Repository
* Tracking Changes
* Automated Version Control
* Open Science
* Licensing
* Citation
* Hosting
The other episodes depend on actions taken earlier in the lesson - consult Teaching Episodes with Dependencies.
Programming with Python any other episode Debugging
Plotting and Programming in Python any other episode * Variable Scope
* Programming Style
* Wrap-Up
* Feedback
R for Reproducible Scientific Analysis any other episode * Writing Good Software
Programming with R * Analyzing Multiple Data Sets
* Loops in R
* Making Choices
none Later episodes depend on actions taken earlier in the lesson - consult Teaching Episodes with Dependencies.
Databases and SQL any other episode Data Hygiene
Automation and Make * Introduction
* Makefiles
* Conclusion Later episodes depend on actions taken earlier in the lesson - consult Teaching Episodes with Dependencies.
Version Control with Mercurial * Configuring Mercurial
* Creating a Repository
* Tracking Changes to Files
* Automated Version Control Later episodes depend on actions taken earlier in the lesson - consult Teaching Episodes with Dependencies.
Programming with MATLAB none all episodes This lesson is currently unmaintained and cannot be used for teaching demonstrations.

Lecciones en español

Enseñanza de episodios con dependencias

Muchas lecciones en Carpentries siguen una narrativa común: Un mismo ejemplo que va de episodio en episodio, con datos, archivos, variables, etc. que son reutilizados y modificados a medida que nuevas habilidades y conceptos son enseñados a los alumnos. Esto significa que el contenido de los episodios dependerá probablemente de los pasos que se hayan dado en episodios anteriores de una misma lección.

La columna Episodios Recomendados en la tabla siguiente proporciona una lista de episodios que no dependen en gran medida de ninguno de los contenidos anteriores de la lección. Si decide enseñar uno de los episodios que no figuran en esta lista de recomendaciones, deberá asegurarse de que todo está preparado como si las partes anteriores de la lección ya se hubieran enseñado antes de comenzar su demostración didáctica.

Episodios no aptos para la demostración didáctica

Algunas lecciones incluyen episodios que no pueden ser utilizados para una demostración didáctica, normalmente porque contienen poca o ninguna oportunidad para la enseñanza mediante demostraciones en vivo. Estos episodios se enumeran en la columna No elegible para demostraciones en la tabla siguiente.

Lección Episodios Recomendados No elegible para demostraciones Notas
La Terminal de Unix cualquier otro episodio * Introducción a la Terminal
Control de versiones con Git * Configurando Git
* Creando un repositorio
* Rastreando Cambios
* Control Automatizado de Versiones Los episodios posteriores dependen de las acciones realizadas anteriormente en la lección (consulte Enseñanza de episodios con dependencias).
R para Análisis Científicos Reproducibles cualquier otro episodio * Escribiendo buen software
Análisis y visualización de datos usando Python * Breve introducción a la Programación en Python
* Comenzando con datos
* Indexación, segmentación y creación de subconjuntos
* Tipos de datos y formatos
* Combinando DataFrames con Pandas
* Flujos de trabajo y automatización
* Antes de comenzar Los episodios posteriores dependen de las acciones realizadas anteriormente en la lección (consulte Enseñanza de episodios con dependencias).