Community Developed Lessons
Browse the list of Community Developed Lessons
The Carpentries community is commited to a collaborative and open process for lesson development and to sharing teaching materials. We
provide two avenues for community members to share lesson materials - The Carpentries Incubator and The CarpentriesLab.
The Carpentries Incubator is for:
- Collaborative lesson development (from conceptual to stable lessons).
- Providing visibility for lessons that are being worked on.
The Carpentries Lab is for:
- Repository of peer-reviewed, short-format, lessons that use the teaching approach and lesson design from The Carpentries.
- Getting peer-review on the content of the lesson in the way traditional journal peer-review would not be able to provide.
People already familiar with The Carpentries teaching practices can teach
Carpentries Incubator or CarpentriesLab lessons in meetups, in classes, or as complements to a “standard” 2-day Carpentries workshop.
These lessons can also be used by independent learners, outside of workshops.
Looking for a list of our core lessons? Follow the links below.
The Carpentries Incubator
The Carpentries Incubator is a place for Carpentries community members to share Carpentries-style teaching materials at all stages of development, to collaborate on lesson development, and receive feedback from other community members.
Lessons in The Carpentries Incubator are developed and supported by community members and are not officially endorsed by The Carpentries. We encourage you to browse the Incubator lessons for materials that meet your needs and to use these materials freely (all lessons are licensed CC-BY 4.0). However, we are unable to offer workshops teaching these lessons upon request.
If you are interested in developing or submitting a lesson to The Carpentries Incubator, learn how at our GitHub Repository. Please read the information on our Development of Lessons page if you would like to contribute to the development of a lesson already present in The Carpentries Incubator. You can also find a list of issues in need of attention on the Help Wanted page.
The CarpentriesLab is a place for sharing high-quality, peer-reviewed lessons that follow best practices in pedagogy and the general teaching practices used in Carpentries workshops.
Lessons in The CarpentriesLab have been peer-reviewed and are vetted by The Carpentries as high-quality resources.
We encourage you to browse the Lab lessons for materials that meet your needs and to use these materials freely (all lessons are
licensed CC BY 4.0). However, we are unable to offer workshops teaching these lessons upon
At this time, we are not accepting lesson submissions to The CarpentriesLab. If you are interested in having a lesson reviewed for inclusion in The Lab, please submit it first to The Incubator through our GitHub Repository.
Lessons in The Carpentries Incubator
From a Spreadsheet to a Database
Programming with GAP
Python Testing and Continuous Integration
SageMath Software Carpentry Lesson
Lesson materials for an Introduction to High Performance Computing in the tradition of Software Carpentry
Python for Humanities
Data Organization in Spreadsheets for Humanities
SQL for Humanities
Open Refine for Humanities
Python for Business
Packaging and Publishing with Python
Git Using RStudio
Introduction to the Internet of Things (IoT)
Learn Deep Learning with Python
Interactive Maps in the Jupyter Notebook
Working with EEGLAB and BIDS-EEG
fMRI Imaging Analysis
Processing data with EEGLAB
Introduction to Conda for (Data) Scientists
A Carpentry style lesson on machine learning with Python and scikit-learn.
Introduction to Geospatial Raster and Vector Data with Python
Introduction to dMRI
Reproducible Computational Environments using Containers
Data Science For Practicing Clinicians
Introduction to Jupyter notebooks
Introduction to MRI and BIDS
One-day Snakemake workshop.
Carpentry-style lesson on how to use R, RStudio together with git & Github to promote Open Science practices.
Life Sciences Workshop
Lesson: Introduction to TEI (under development)
R for Survival Analysis
Lesson on Parallel Programming in Python
Material for a lesson introducing PyMARC
GPU Speedups in Python
Building Websites with Jekyll & GitHub Pages.
R for Artists
Data Harvesting for Agriculture
An introduction to singularity
Data Carpentry for Camera Traps
Bioconductor data science introduction
Introduction to the Bioconductor project
Analysis and Interpretation of Bulk RNA-Seq Data using Bioconductor
A lesson exploring the Julia language
SQL for Business
GPU Programming lesson.
Text Analysis with Python
A lesson teaching analysis of microbial amplicon data
Statistical analysis in R for public health.
Comparison of data objects in R
Statistical thinking for public health
Simple linear regression for public health
Multiple linear regression for public health
Logistic regression for public health
Linear mixed effects modelling for public health
Workflow management with Nextflow and nf-core
Introduction to Machine Learning with Python
Introduction to Machine Learning with R
Data driven research workflows in Julia
Flight data analysis to detect features relevant to the continual improvement of safety.
Introduction to Machine Learning for Librarians & Archivists
Typesetting in LaTeX
Data management and analytic pipelines for engineers
Frictionless Data for Agriculture Research
Lessons in The CarpentriesLab
Python for Atmosphere and Ocean Scientists
Bulk rna seq
Deep neural networks
Fmri data analysis
Internet of things
Lesson gpu programming
Rna seq analysis