Brief Overview and Rationale
After you have completed the two-day instructor training workshop, you must go through these three steps to complete your training and be fully certified as a Carpentries instructor:
- Make (and send us a link to) a contribution to a lesson or glossary.
- Take part in an online community discussion session.
- Teach a short demonstration lesson online.
Tasks are listed in the order most of our instructor trainees complete the checkout process, but you can complete them in any order. Trainees will receive a certificate of completion approximately two weeks after completing all the requirements.
These checkout steps aim to introduce you to key components of being a Carpentries instructor that are difficult to fully cover in the classroom setting of the two-day training. These are:
Contributing to our materials. As our materials are developed by the community, we want to ensure that all instructors know where and how to contribute to them, particularly so that you can contribute in the future.
Participating in the larger Carpentry instructor community. We include the community discussion session in the checkout because we hear from many instructors that one of their favorite aspects of being a Carpentry instructor is meeting and talking with other instructors in the community.
Practicing and confirming the skills you need to teach on your own. Before signing up for a workshop, you will have practiced preparing a lesson and doing a brief session of live coding.
Trainees will have three months to complete the checkout exercises. Extensions may be granted at the discretion of Carpentries staff and must be requested before the three months are up. To request an extension, please contact us.
Submit an application
To help us track your progress through the checkout process and make sure you get the credit you deserve, you will need to submit an application in our database management system (AMY). If you haven’t already, please fill out the online application form. For group name, please enter the name your instructor provides.
Part 1: Submit a Small Contribution to a Lesson or Glossary
Our lessons are maintained and improved by the people who teach them, so this part of the checkout procedure gives you a chance to familiarize yourself with our collaborative curriculum development process.
- any Software Carpentry, Data Carpentry, or Library Carpentry lesson
- any community developed lesson
- our open source, multilingual glossary of data science terms, Glosario
If contributing to a lesson, trainees must make a contribution to the lesson’s content, exercises, or instructor’s guide by doing one of the following:
- Providing substantive feedback on an existing issue or pull request (preferred).
- Submitting a change to fix an existing issue. Our Help Wanted page lists issues for which lesson maintainers need assistance and is a good place to start when looking for ways to contribute.
- Proof-reading a lesson and adding a new issue describing something to be improved.
Contributions to Data Carpentry and Library Carpentry materials may be submitted through GitHub or by email. Contributions to Software Carpentry materials, community developed lessons, and Glosario must be submitted through GitHub.
Each lesson has a CONTRIBUTING.md file in its repository on GitHub. This file explains best practices for contributing to that lesson. You can access a lesson’s GitHub repository by clicking on the GitHub kitty icon in the “Repository” column for that lesson on the lesson page. The lesson pages can be found at:
Please follow the guidelines in the appropriate CONTRIBUTING.md file when making lesson contributions.
If contributing to Glosario, trainees must introduce a relevant new term to the glossary or add a definition to an existing term in another language.
Please note that:
If you submit your contribution through GitHub, you need to send us a link to the pull request or issue so that we can track your progress through checkout.
Your contribution doesn’t need to be accepted in order for you to become an instructor: the point is to make sure that you understand the process and have met the people who review material.
Be sure to format your submission in the same way as the content that’s already there. The
CONTRIBUTING.mdfile in each lesson has guidelines (and improvements to these guidelines are welcome).
The lesson maintainers get many pull requests, so please take some time to write a good commit message to help them understand what you’re doing. For example:
Add a 'commit --amend' exercise Everybody will botch a commit message at some point. This exercise introduces them to an easy way to fix those mistakes.
will make life much easier for the maintainer than:
We do not want exercises or other material that introduce new concepts: our lessons are already full to bursting.
We are happy to accept contributions of new diagrams for any of our lessons. Please use SVG (scalable vector graphics), since vector formats are easier to manipulate than raster formats. SVG files can be produced using Inkscape as well as other graphics programs.
We also appreciate improvements to our lessons’ learning objectives. In particular, we would like our current learning objectives to be checked against the actual lesson content, and to be framed in terms of observables (e.g., “Learner will be able to do X”) rather than intangibles (e.g., “Learner will appreciate X”).
For more details on the workflow of how to contribute via GitHub, see this community contributed guide
Part 2: Take Part in An Online Community Discussion Session
The next step is to take part in an hour-long community discussion session led by an experienced instructor. These sessions give you a chance to ask questions about the material you plan on teaching and to clarify anything that may be unclear about our operations in general.
Our community discussion sessions are run as video conferences several times per week: please see our Community Calendar for times. You can sign up for a session on the community discussions Etherpad; if none of the available times work for you, or if you need any special arrangements, please let us know.
Community Discussions can take many forms, read the Etherpad carefully when signing up to be sure you sign up for a session that meets your needs and interests.
The link to connect to the video conference is at the top of the Etherpad. Please be sure to use a headset with a built-in microphone during the session rather than open-air speakers and your laptop’s built-in microphone, since the latter often lead to audio quality problems.
To prepare for a Pre- and Post- workshop Community Discussion, pick one lesson that you plan on teaching and read the whole lesson. As you are reading, make notes about the following:
- Was there anything that you found unclear in the material? Did you get stuck anywhere?
- Did you feel like you would like to change the flow or present the concepts differently? If so, what and why?
- What are some misconceptions that the learners may have when learning this material? Which bits of the lesson may be tricky and if poorly explained, may lead the learners to broken mental models?
- What prior knowledge do learners need to have before participating in this lesson? If you were to list any prerequisites, what would they be?
The first two questions are intended to help you become more comfortable with our collaborative lesson development methods. The third and fourth question refer back to the instructor training course, and are meant to give you a chance to apply some of what you’ve learned to these specific lessons.
During the session, you are expected to ask questions to show that you’ve thought about what you’re going to teach (including questions you had while reading through your chosen lesson), and about how our workshops are run in general.
Sample questions include:
- What were the most interesting or surprising things existing instructors learned when they attended or taught their first workshop?
- What pre- and during-workshop responsibilities did each instructor have?
- What lessons did people teach?
- How did instructors test installation of the required software?
- How long did lessons actually take to teach? (Alternatively, how far did instructors actually get?)
- Did people adapt or modify the lesson material? If so, how and why?
- Where in the material are learners most likely to misunderstand things or get lost, and why?
Trainees may also ask about:
- material in the lessons that they don’t understand,
- how teaching these workshops has helped people’s own work or careers, and
- anything else that comes to mind.
If the discussion leader feels that you have adequately participated in the conversation, they will notify the training coordinator.
Part 3: Teach a Short Demonstration Lesson
The final step is to sign up for a 5-minute demonstration online using the teaching demo schedule Etherpad (or add yourself to the top of the pad if none of the available times work for you).
Some teaching demos may be focused for a specific sub-community, carefully read the Etherpad when you’re signing up.
The link to connect to the video conference is at the top of the Etherpad. Please be sure to use a headset with a built-in microphone during the session rather than open-air speakers and your laptop’s built-in microphone, since the latter often lead to audio quality problems. The instructor leading the session will post other information in the Etherpad shortly before it begins.
If you want to do your demonstration in a language other than English, please let us know in advance so that we can attempt to find someone to moderate. We may not be able to accommodate all languages.
For your teaching demonstration, you will prepare to teach a lesson from one of the Carpentries lesson programs. You can refer to the lists of Software Carpentry lessons, Data Carpentry lessons, and Library Carpentry lessons on the websites. A lesson corresponds to a single line in the lesson table and a single repository in GitHub. (An example of a lesson: R for Reproducible Scientific Analysis). Some lessons have supplementary modules. You do not need to be prepared to teach the supplementary modules for your teaching demonstration.
You will be asked to teach a short segment from your chosen lesson from this list of suggested episodes. The host of the session will pick a segment of the lesson for you to teach on the day of the demonstration (An example for a segment could be: Data Structures), so you must be prepared to teach any part of your chosen lesson.
Please note that you only need to demonstrate your ability to teach one lesson; once certified you can teach any lesson if you have the relevant expertise. You can indicate the lessons you are comfortable teaching when you update your instructor profile.
For your demonstration(s), you will screen-share and live code as if your computer was plugged into a projector and you were standing in front of a class. You may use whatever notes you want, provided they are not visible on your screen. Please teach as you would in an actual workshop. When your five minutes are up, the trainer leading the session will call time, and then you and everyone else taking part in the session will give feedback on your teaching in the session’s Etherpad. Note that people are required to give feedback on themselves as well as on others; note also that it’s useful to organize your feedback along the two axes of positive vs. negative and content vs. presentation, just as you will have done during the two-day class.
If all goes well, we will send you your certificate and instructions on how to add yourself to the teaching roster and our website. If for any reason the trainer leading the session feels that you should try again, you will be told what to focus on and when and where to sign up for another session. Here is a rubric made available to Trainers to aid with scoring.
If you have any questions or suggestions about any of the above, please contact us.