Recommendations for Teaching Carpentries Workshops Online

Last updated: 2020-05-18

An evolving list of all community-created resources and conversations on the subject can be found in our Handbook.

Note: This official set of recommendations will be updated as we receive feedback from the community.


Overall comments on pilot recommendations

Teaching online is a challenge. For now, we recommend pilots for experienced instructors only and suggest starting with small class sizes. Our recommendations are focused on the leanest possible technology using systems we are already familiar with. While many other options exist and will likely make their way into our guidelines (e.g. additional tools, semi-synchronous approaches), we suggest starting with procedures that are as close as possible to our standard practices for live instruction and methodically testing the benefits of incremental changes.

Learning online is also a challenge. The most common barriers are likely to be unreliable internet connections and the limitation of a small single screen. Instructors and learners should anticipate these problems. We are not making recommendations with regard to minimum technological requirements at this time, but these may emerge during the course of the pilot.

Software installation is a challenge even at in-person workshops, and issue resolution during an event is even more problematic online. We strongly recommend a combination of pre-workshop support with software installation and the use of cloud instances with pre-installed software as a backup (which can also resolve problems related to learners’ computing power). At this point we suggest using cloud only as a backup, for learners who aren’t able to install the software locally, but this recommendation may change during the course of the pilot.

These recommendations rely on video conferencing, and we recognize that this may fail entirely. We are not making specific recommendations for technologies or procedures to be used for backup planning at this time. This is something each instructional team should plan for independently and consensus may emerge during the course of the pilot.

Finally, it is worth noting that most video conferencing platforms have the capacity to create and store recordings of workshops. Recordings have substantial advantages and can offer solutions to problems (e.g. difficulty keeping up with a small screen). However, there are also important privacy issues to consider. Until The Carpentries completes a full evaluation of policies related to creation and storage of recordings, please do not make recordings that include learners.

Planning Checklist

Use this list to be sure you’ve given time and thought to each item. Not all items on this checklist are required, but all should be considered during planning. Details on specific recommendations are below.

Technology choices

  • Video conferencing platform and procedures
    • Monitoring communications
    • Managing breakouts (if applicable)
    • Muting
    • Plan if video platform fails
    • Recommendations for small screen arrangement
    • Learner communication platform(s) and procedures
    • Raising hands
    • Indicating progress
    • Communicating with Instructor
    • Communicating with Helpers
    • Formative assessment
    • Feedback
    • Social connection
  • Instructor/helper communication platform and procedures
    • Triaging help requests
    • Stepping in if Instructor loses connection
  • Discussing timing and instructional choices
  • Cloud options for unresolvable software problems

Instructional planning

  • Software installation
  • Introduction to conferencing platform
  • Introduction to communications channels
  • Introduction to instructional team
  • Timing for check-ins and breaks
  • Timing for social/collaborative opportunities
  • Contingency planning

After the workshop (consider any or all!)

  • Take notes immediately for your own use
  • Carpentries surveys (Coming soon – temporary form here)
  • Attend a Community Discussion to debrief

Registering your online workshop

Please be sure to register your self-organised workshop, as you begin planning your Carpentries online event. It is important that you use a unique workshop id so that we can add your workshop to our database and provide the proper communications with you.

When creating your workshop website, please use the following naming convention: YYYY-MM-DD-sitename-online

Conferencing platforms

The Carpentries recommends, in order:

  1. Any service that your institution recommends and provides support for and has the minimum and recommended features needed.
  2. Zoom. This is the platform used by The Carpentries. For centrally organized workshops, a Zoom room can be scheduled with The Carpentries. Depending on demand, schedules may be constrained to 2 consecutive days. Self-organized workshops without institutional access would need to purchase a pro account to run a workshop. We are looking into scholarship options and will update if these become available.
  3. Google Hangouts or Skype, depending on local access, permissions, and expertise.

Minimum features (all are required):

  • Screen sharing for instructors
  • Audio for speaker
  • Chat system for attendees
  • Audio support for attendees
  • Video support for attendees (highly recommended for some if not all)
  • Screen sharing for attendees (default settings should be off)
  • Breakout rooms
  • Session recording (see notes re privacy concerns)

Screen ‘real estate’

Participatory live coding can work online, but the challenge of following and typing for a learner with one small screen is extremely problematic. The task of juggling windows adds to cognitive load. If a learner hides the screen share window to enlarge a work window, they may begin to fall behind.

Possible options for workarounds include:

  • Encourage learners to also join in on a phone or tablet. They can have both devices logged in, so they have the benefit of a second display for video, but use the desktop version for chat, voice, etc. However, even phone screens can still be very small. Use a large font size. This will help learners to see clearly even if viewing on their phone.
  • Follow the written lesson material closely, and support learners in following along. The written lessons can be easier to fit on a screen, and help learners to catch up if they fall behind.
  • Teach like you are hosting a radio broadcast. Be especially careful to speak what you are typing, slowly and precisely. Review/repeat what you have typed after doing so. When you really want learners to see something, state that you would like them to focus on the screen sharing window and give them a moment to do so.
  • Add more frequent pauses for learners to work.
  • Recording the session for later reference can also be helpful – this also addresses problems faced by learners with distracting home environments. However, note privacy concerns with recording. Until The Carpentries completes a full evaluation of policies related to creation and storage of recordings, please do not make recordings that include learners.

Breakout rooms

Breakout rooms are features of a platform where participants can be grouped together and put into private ‘rooms’. For example, a class of 20 learners could be split into 10 breakout rooms with 2 students each. Participants cannot enter or view/listen to other rooms that they are not within.

Creating breakout rooms is fairly straightforward, but nonetheless it’s good to practice with this feature in advance of the workshop. Only a meeting “host” can create breakout rooms in Zoom. If you don’t have time to practice or feel overwhelmed by the added technical management, it’s ok to wait!

For paired programming tasks

This can be a great option. It may be helpful to designate a helper or co-Instructor to take the “host” role and manage breakouts. The host can also visit rooms to check on progress, message all rooms, and can re-assign other participants (e.g. other helpers) to specific rooms.

For providing 1:1 support

This may be a bit trickier. Participants in breakout rooms are removed from the main room, so will miss ongoing instruction. Alternative support options, such as a separate chat channel (e.g. Slack) may be preferable to breakouts for handling learner-helper side conversations and debugging sessions.

For more Zoom tips, see The Carpentries Handbook.

Chat and Forum Platforms

Live and synchronous chat can be used in many ways. When choosing a platform separate from that used for video conferencing, pick one that’s normally used by people in your area. Consider when and how it will be used, and how it will work for participants with limited screen space.

Learner communication during instruction

The chat program within your conferencing platform is a good first choice for simple learner communications. This saves on screen space and minimizes cognitive load. It is also easiest to monitor. However, it can quickly become cluttered. Social chatter and extended conversations should be directed to an alternate platform. In these cases, The Carpentries recommends:

  1. Any platform in use by your community
  2. Slack

Hand raising and help requests

In an in-person workshop, you might classify learner questions in two ways:

  • Questions for the instructor, usually about the lesson material, clarification, etc.
    • Requested in person by: raising hand
    • Requested online by: using a “raise hand” or non-verbal feedback option in the conferencing software (not recommended in Zoom), typing “hand” in the chat, or typing the question into the chat.

Attending to hands in the chat while instructing can be a challenge. Helpers may need a plan to intervene to get the Instructor’s attention or respond themselves. Alternatively, learners may be instructed to type questions into the chat rather than raise hands; helpers can then respond directly or flag the Instructor as need be. Having a Helper step in to handle questions can give the Instructor a moment to review notes or catch up on back-channel messages.

  • Requests for technical assistance of a helper.
    • Requested in person by: alert sticky note or flagging down a helper.
    • Requested online by: typing “hand helper”, using a non-verbal feedback option (e.g. icons in Zoom), direct messaging a helper (not recommended in Zoom as accidental private/public mix-ups are common).

The best means of requesting technical assistance will depend on your choice for delivering that help. For example, if you plan to rely on breakout rooms, a simple request in the chat may suffice; if you plan to resolve problems through chat, this will demand a separate platform, e.g. Slack, and help requests may also begin there. Wherever you direct these requests, be sure to have a plan in place for continuous monitoring.

Instructional team communication

The instructional team should have a chat channel separate from the main classroom chat to discuss logistical needs or private concerns. This should be something with manageable notifications that is private to just the team. A platform like Slack (using a private channel or group direct messaging) or a WhatsApp group can be effective with this.

Progress Indicators

In addition to requesting help, learners often use sticky notes at in-person workshops to indicate their status on completing a task. This mechanism can be mimicked in a few ways.

  • Zoom: Nonverbal feedback can be enabled within the participant list. Learners can be asked (e.g.) to display a check mark when they are done, or an X mark if they are stuck.
  • Polling apps: instructors can make a poll to ask people how they are doing (platforms include Poll Everywhere, Google Forms, and Doodle). Since this method doesn’t identify individuals, learners will need prompting to reach out when stuck.
  • Slack: Polls can be created within Slack, or learners can use emojis for nonverbal feedback. Hovering over an emoji will display a list of learners who selected that item. Learners may also start a thread for the message with any problems they encounter.

These are just some options for the instructional team to use, and these styles can be replicated in other platforms.

Regardless of your choice, be sure to practice these options and discuss choices before the workshop. Try to keep things simple and consistent to build expertise and comfort within the instructional team.

Formative assessment

Formative assessment is important in any format to evaluate where the learners are in relation to your objectives. This is particularly important online, where ‘reading the room’ is not an option and the only way to know what’s going on out there is to ask.

One quick approach is to offer prediction prompts while live coding, giving learners a chance to practice as they go. Examples might include:

“How many lines will this print out when I execute this code?” “Remind me what the name of this function is?” “Which syntax is correct? (provide several options)”

These prompts can be answered via the conferencing chat. Be sure to allow ample response time, factoring in both technical delays and time to think.

As with in-person workshops, other platforms can also be set up for formative assessment to create polls, multiple-choice questions, or wordles.

Gathering feedback

At in-person workshops, we use sticky notes for getting feedback after each module. The Carpentries offers a Google Form template for this purpose. If choosing an alternative, the key elements of this are:

  • Respondent anonymity
  • Classifying feedback as positive/negative (or learned/question or keep/change etc)
  • Prompt and collaborative review by the instructional team
  • Addressing concerns at the start of the next session

Instructional Roles

Having clear, visible, and documented roles for the instructors and helpers within the room will help the learners know where to go for help and feel empowered to do so. A few suggested roles are:

  • Instructor (cannot be shared with any other role): actively sharing their screen and presenting the lesson content.
  • Helper-Technical: responsible for watching for students reporting problems in the chat and providing assistance.
  • Helper-Facilitator: responsible for monitoring the room for muting students (requires host or co-host status on Zoom), watching for student questions across platforms. Optionally, depending on instructor preference, they may facilitate QandA sections if the instructor needs a moment to step away, loses connection, or needs a moment to review their notes.
  • Helper - Breakout manager: uses host status on Zoom to create and assign breakout rooms as needed

Role responsibilities should be clearly defined at the beginning of the workshop, written down for reference, and roles introduced at the start of each session. Examples:

  • At the beginning of the workshop, go through the responsibilities of each role for the learners. Show them where they can find more info about that during the workshop.
  • At the beginning of each session (e.g. when the instruction team changes), briefly introduce the new team and their roles.

People in these roles should:

  • have hosting privileges (as the platform allows). At a minimum, the helpers and instructors need permissions to mute people. If the platform only supports one person having these permissions, we recommend that a helper does so they can monitor things for the instructor.
  • have their meeting roles identified in their names, like: “Human Name-Content (role)”. These role labels might be Instructor, Helper-Facilitator, or just Helper if it is not being distinguished. Be sure to review how to change your name in your conferencing software. In Zoom, right-clicking on your name in the small video-window allows for temporary renaming yourself.

Collaborative Notes

Any collaborative note-taking platform your group has been using should transition nicely for online use (i.e. Etherpad, Google Documents, etc). Zoom Whiteboards can be used for limited collaboration, e.g. during breakouts, and can be saved. If a document platform offers chat or other communication features, be clear to the learners how these should or should not be used.

The top of the document is a great place for important notes, including space for participants to add their names and contact information at the top, as well as a static place for important links. Just be sure that the document link is shared in an email or something less ephemeral than a chat window or slide. Any identifying information added to persistent documents should be opt-in only.

The challenge presented by a single small screen is particularly important to remember when adding a collaborative document to your toolkit. Be sure to allow time for switching between windows if Zoom, a programming environment, and a collaborative document are all simultaneously in use. As with all communications platforms, be sure a helper is assigned to monitor and support note-taking at all times.

Feedback on your experience

The Carpentries community needs to learn and grow from your experience with these pilot-phase workshops! There will be many ways to contribute your feedback towards the iterative improvement of these recommendations.

  • Attend a Community Discussion meeting! This is a great place to come to discuss your plans for online training, as well as to share your experiences with others who are beginning to plan. The Carpentries core team will be checking the notes from these meetings, so feedback shared there will be incorporated into our assessment stream. This mode of feedback is available now!
  • Look for (new!) Instructor surveys! These will be coming soon. We know it can be a chore to fill out surveys, but the sortable and quantifiable nature of survey data make them particularly useful in understanding and reporting on the outcomes of these workshops. Please be sure at least one member of your instructional team completes this survey – we will reach out with instructions as soon as they become available.
  • Join the conversation on Discourse! We have created a temporary forum specifically for asking questions and discussing ideas about the many dimensions of online workshops. This has been used initially by Instructor Trainers in contributing to these recommendations; we expect to have it prepared for general community use soon and will update here as soon as it becomes available.

What if I want to do it differently?

The Carpentries is a community full of energy and ideas, and we know you’re going to have your own thoughts about the best way to do this!

During the pilot phase, we ask that you reserve Carpentries branding for workshops that mostly follow these guidelines. Workshops that digress substantially, e.g. using a “flipped classroom” model with pre-recorded instruction and synchronous support, are best labeled “Carpentries-based” workshops for now. Also keep in mind our general guidelines on what is and is not a Carpentries workshop. However, we are interested in receiving feedback on all workshop formats, even those that don’t strictly qualify as Carpentries workshops under the pilot guidelines.

If you decide to experiment within the general parameters of these guidelines (e.g. splitting your workshop across 4 half days and adding an asynchronous support tool for the intervening times), you may still consider your workshop to be a Carpentries-branded pilot workshop. Be sure to let us know via our feedback channels what variation you’ve tried and how it worked out!

These recommendations will change!

As time passes, don’t forget to check back here each time you teach! We won’t be updating minor points continuously, but where adjustments really seem to have an impact we will update our recommendations ASAP. We will also consider expanding the constraints of the pilot if other experimental formats report solid outcomes with reproducible methods.