Online
Nov 02 - 03, 2026
8:00 am - 3:30 pm UTC
Instructors: Sanjay Fuloria, Shashank Shekhar Harivyasi
Helpers: TBD, TBD
The Carpentries project comprises the Data Carpentry, High-Performance Computing Carpentry, Library Carpentry, and Software Carpentry communities of Instructors, Trainers, Maintainers, helpers, and supporters who share a mission to teach foundational computational and data science skills to researchers.
Software Carpentry aims to help researchers get their work done in less time and with less pain by teaching them basic research computing skills. This hands-on workshop will cover basic concepts and tools, including program design, version control, data management, and task automation. Participants will be encouraged to help one another and to apply what they have learned to their own research problems.
For more information on what we teach and why, please see our paper "Best Practices for Scientific Computing".
Everyone who participates in Carpentries activities is required to conform to the Code of Conduct, which also outlines how to report an incident if needed.
The course is aimed at graduate students and other researchers. You don't need to have any previous knowledge of the tools that will be presented at the workshop.
This training will take place online. The instructors will provide you with the information you will need to connect to this meeting.
Nov 02 - 03, 2026; 8:00 am - 3:30 pm UTC
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).
We are committed to making this workshop accessible to everybody.
We are dedicated to providing a positive and accessible learning environment for all. We do not require participants to provide documentation of disabilities or disclose any unnecessary personal information. However, we do want to help create an inclusive, accessible experience for all participants. We encourage you to share any information that would be helpful to make your Carpentries experience accessible. To request accessibility support for this workshop, please fill out the accessibility support request form. If you have questions or need assistance with the accessibility support form please email us.
Glosario is a multilingual glossary for computing and data science terms. The glossary helps learners attend workshops and use our lessons to make sense of computational and programming jargon written in English by offering it in their native language. Translating data science terms also provides a teaching tool for Carpentries Instructors to reduce barriers for their learners.
Carpentries workshops are designed to be interactive rather than lecture-based, with lessons that build upon one another. To foster a positive online learning environment, we strongly recommend that participants join in real time. As a result, workshop recordings are not recommended and may not be available to learners.
Please email sanjayfuloria@gmail.com or harivyasi@gmail.com for more information.
For answers to frequently asked questions about workshops, refer to the Carpentries Workshop FAQ.
We will use this collaborative document for chatting, taking notes, and sharing URLs and bits of code.
Please fill out this survey before attending the workshop.
Fill Out the Pre-Workshop SurveyPlease fill out this survey before you leave the workshop.
Fill Out the Post-Workshop Survey| Before | Pre-workshop survey |
| 09:00 | Automating Tasks with the Unix Shell |
| 10:30 | Morning break |
| 11:00 | Automating Tasks with the Unix Shell (Continued) |
| 12:00 | Lunch break |
| 13:00 | Programming with Python |
| 14:30 | Afternoon break |
| 15:00 | Programming with Python (continued) |
| 16:00 | Wrap-up |
| 16:30 | END |
| 09:00 | Version Control with Git |
| 10:30 | Morning break |
| 11:00 | Version Control with Git (Continued) |
| 12:00 | Lunch break |
| 13:00 | Databases and SQL |
| 14:30 | Afternoon break |
| 15:00 | Databases and SQL (continued) |
| 16:00 | Wrap-up |
| 16:30 | Post-workshop Survey |
| 16:40 | END |
To participate in a Software Carpentry 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:
Bash is a commonly-used shell that gives you the power to do tasks more quickly. Instructions for finding and opening a shell on your operating system can be found in the Software Carpentry lesson.
Git is a version control system that lets you track who made changes to what when and has options for easily updating a shared or public version of your code on github.com. You will need a supported web browser.
You will need an account at github.com for parts of the Git lesson. Basic GitHub accounts are free. We encourage you to create a GitHub account if you don't have one already. Please consider what personal information you'd like to reveal. For example, you may want to review these instructions for keeping your email address private provided at GitHub.
Python is a popular language for research computing, and great for general-purpose programming as well. Installing all of its research packages individually can be a bit difficult, so we recommend Conda-forge, an all-in-one installer.
Regardless of how you choose to install it, please install the most recent Python version available by going to the latest download site and scrolling to the Files section to find the download for your operating system.
We will teach Python using the Jupyter Notebook, a programming environment that runs in a web browser. For this to work you will need a reasonably up-to-date browser. The current versions of the Chrome, Safari and Firefox browsers are all supported.