As we all know, the pandemic triggered a mass transition to virtual means of communication. For me, this happened just before a new cohort of students kicked off at She Codes Australia, whom I would be teaching. This meant that I had to suddenly adapt my teaching style to work for a virtual classroom.
Eventually, I developed a system that worked pretty effectively and reliably, so I wanted to share it for others figuring out how to teach virtually.
Here’s what my classes looked like:
- Me (the lead mentor/teacher)
- 2 - 4 other mentors/TAs
- 20 - 25 students
As the lead, there were many things to consider:
- What do I do if a student falls behind?
- How do I keep everyone engaged while just staring at a screen?
- I need to share a screen with students for them to follow along with my code
- I need to have my notes and next steps open, but hidden from students
- I need to have a means of sharing static images, code snippets, etc.
Here’s the solution I came up:
- For the actual video chat we’d use Zoom
- For sharing images, long code snippets etc, we’d use Slack
- As the lead, I absolutely needed two screens. Originally I did have two screens to use, but then I transitioned to two computers. Either system works just fine.
Here’s a photo of my set up mid class:
Let’s unpack this....
Left Screen
This is my teaching screen. This computer has:
- Zoom
- Slack
- VS Code
- Powershell or Terminal
- A web browser
- Any other tools we’re using for testing (e.g. Insomnia if we are working on APIs).
Right Screen
This is my notes and comms screen. This computer has:
- Slack (v serious mentor chat going there 😂)
- My teaching notes
How does class work?
So how does this come together? Well, as the Lead Mentor and Zoom admin, it is absolute chaos 😅
Zoom
Zoom was the video conferencing software of choice for a variety of reasons, primarily because of its easy interface and admin controls, and obviously for screen sharing my code.
Breakout Rooms
Zoom has “breakout rooms”, this allows you to have everyone in the one call, but split everyone into... let’s call them “sub-calls”. We have two primary uses for this feature:
- Imagine you are in class and you want students to turn to their table group and brainstorm something together - how does that translate to a conference call? Breakout rooms! I can boop everyone into 4 or 5 separate rooms and have them do their brainstorming in there, rather than having 25 people all talking at once.
- Imagine the class is following along writing code with a teacher, inevitably someone makes a mistake that they need help fixing, can you imagine if that student had to stand at the front of the class and show off their error? That is so not a friendly learning environment, so in comes, you guessed it! Breakout rooms! When a student needs help they let me know and I boop them into a breakout room with a mentor.
As the admin, I can move people into, out of and between breakout rooms. I can also preconfigure the rooms when I set up the call via the website rather than the desktop app. The rooms that I use are:
- Mentor Room 1
- Mentor Room 2
- Mentor Room 3
- Mentor Room 4
- Panic Room
- Library
The mentor rooms are where students go when they need help. Sometimes we are also doing “self paced” work, which means the students don’t need to follow along with me. In this situation we utilise all of the above rooms:
- Mentor Rooms: have a mentor and a handful of students. Students can ask questions as they need to.
- Panic Room: this is the room I use when a student needs 1-1 help or I need to catch up with a student individually about their course progress.
- Library: this is the quiet room, where everyone is on mute.
When are are doing self paced work, I initially put everyone into the mentor rooms, and move people into the panic room or library if they ask to be moved there, which they do via messaging me on Slack.
Reactions
The other feature that is incredibly useful in Zoom is the reactions. I probably say “give me a green tick when you are good to go or a red cross if it’s all on fire and you need help” about 37 times in every call. But seriously, the system works.
Reactions are little indicators that pop up next to the person’s name in the list of participants:
There are several different reactions the students can choose from:
The top row are emoji that hang around for 30 seconds or so then disappear, the second row are the reactions that I prompt students to use to give me an indication of how they are going, and the “raise hand” is used when someone has a question - this one also has the bonus feature of bringing that student’s name to the top of the participants list.
As the admin, I can also clear all reactions. So my system is to clear all reactions before moving on to the next step. When I have finished explaining the next step I ask the students to give me a green tick when they are done or a red cross if they need help. As soon as I see a red cross appear, I boop them into a breakout room with a mentor. We then pause the class until everyone has returned from their breakout rooms. Once everyone is back and ready to go, I clear the reactions and we start again.
Slack
The other main tool in use is Slack. I have Slack open on both computers. If there is a large code snippet to write, I usually send it via Slack and then have everyone copy and paste it into their editor (and then we unpack it line by line). This is literally the only reason I need Slack open on both computers; so that if I share code from my laptop (i.e where my teaching notes are), I can copy it on my desktop (i.e. where I am sharing my screen) and paste it into my editor.
Other than that, I primarily use Slack on my laptop/second screen so that I can see if any students are messaging me or asking questions, and to talk with the mentors behind the scenes.
Keeping a virtual class engaged
So that’s the technical parts explained, but how do you actually hold the attention of 25 people sitting at their computer? So many of us are terrible at even staying focused on a TV show for 20mins, never mind an online class.
Here’s what I do to keep my class engaged with me (and this works, based on my own observations and anecdotal evidence from students):
- Pets and children: these are absolute assets. If a cat wonders by someone’s screen, pause what you are doing, and focus on the cat. If a toddler climbs on mum, pause the class and ask if they want to say “hi” to everyone. Honestly, moments like these are so valuable. They jolt people awake again, and it’s nice to share some more personal moments with classmates, something we often lose when going virtual.
- Background: I am quite opposed to the backdrop feature in conferencing software. I want to make personal connections with my students, and putting a facade up about where I am sitting just feels... not personal? Each to their own, but I think it’s fun sharing your home office/couch/kitchen/whatever. It’s a nice insight into someone’s life. It’s also why I set absolutely no expectations for personal appearance either, my last class I did a full face of makeup for and at my next I’ll likely be in PJs. I’m definitely not saying this because I have a pretty office, because I don’t. Right now the backdrop for my calls is a half finished puzzle, cardboard and dog toys. However, I will admit that I did move the stash of toilet paper out of view....
- Breaks. You’ve got to have mandatory breaks. Our classes are often 4 hours long, no one is staying focused for 4 hours. Every now and then I call for a break, and boot everyone off. Seriously, I tell them when to come back then disable their mics and videos for them.
- The awkward silence. This will happen, it’s pretty daunting for someone to speak up in front of 25 others on vid chat. My job as the lead is to be comfortable when we are in silence, but also engage where possible. This quite often happens when we are waiting for people to come back from their breakout rooms with mentors. But this is also a prime opportunity to ask people about where they are working, are there any pets around, and honestly how many of us are in PJs right now? Keep the light hearted convo going where you can, it doesn’t have to all be work focused.
- Keep cameras on. It’s tempting for people to hide their face, but there’s a lot of human interaction to make up for when going virtual, so I’d really encourage everyone to keep their camera on (if their internet allows it) so we can at least see facial expressions (and pets walking by!).
Wrapping it all up 🥨
Basically, my system very much has a theme of “embracing the chaos!” Moving people in and out of breakout rooms, flicking between Slack convos, finding the right place in my notes and actually writing the code and teaching is a pretty wild experience. If you are about to run a virtual class, I highly recommend getting a bunch of friends on zoom so you can practice using all the buttons. Your first class is not a good time to also be learning how to use the more advanced features of Zoom - learn from my mistakes.
Above all else, focus on keeping it fun. Put a smile on your face, lean in to the chaos, and oh yea - keep water with you, you would not believe how quickly your voice goes when talking non stop on a zoom call 😂