Teacher Cheat Sheet
First, thanks for volunteering your time to teach a workshop. Here we've tried to capture tips to make your experience, and your student's, better.
First, Do No Harm
The most important thing you can do as a teacher is to make people feel they are in a safe learning environment. The worst outcome is for a student to leave frustrated, confused, or belittled and never wanting to try programming again.
Plugging In, Setting Up
Teacher & TA Huddle
It can be really helpful to talk with your TAs briefly before you begin and set the tone that your classroom will be a collaborative experience, not just a lecture. If any of them are up for it, you can have them teach a section or even just explain or diagram a tricky concept like databases. But don't push people if they aren't ready.
- Get your screen on the monitor or projector. This is never 100% foolproof!
- Zoom your browser and text editor fonts.
- Disable any potential popups like work email, etc
Try to Put Yourself in a Student's Shoes
If you code all day for your job, it's easy to switch windows without stating your intent, and use all sorts of timesaving shortcuts without even realizing it.
- Always annouce keyboard shortcuts and commands, along with where to run them. Beginner students often get don't know the difference between bash, IRB, the Rails console, etc.
- If you want, you can try KeyCastr which will display shortcuts as you type but be careful if you type passwords ;-)
- Be explicit: "Let's go back to our text editor and find the topics.css file in the app/assets/stylesheets folder so we can change the style."
How to Begin the Class
Go around the room and have people introduce themselves. You can use icebreaker techniques like having people name their favorite SF structure, to use one example.
It's also tremendously helpful if everyone states what they want to learn. This can be really useful in higher levels to tailor the content to what the students want.
If it's clear that the class is generally at a lower level that the color, slow down accordingly. It's also a good time to remind them that anyone is free to change levels at any time, especially if it sounds like some students are already at a higher level.
- Many people like to know the destination before they begin the journey so don't skip the "Objectives" part of each session
- The less advanced levels won't finish the entire curriculum so it's good to tell them that upfront and remind them they can come back next time or try the rest on their own
- Hint: almost all new teachers go too fast
- Repeat, repeat, repeat
- Stop a lot so that the slowest person can catch up to the fastest
- If almost everyone is done, ask a TA to help any students who are stuck and move on
- You can also use pauses while TAs are helping troubleshoot to ask questions or suggest things to try.
- "What do you think will happen when I run this command?"
- Give generous pauses (count to 10!) after asking questions
- Don't be afraid to call on people by name
- Simply asking "Does everyone understand?" or "Any questions?" tends to mask confusion. Be specific!
If you have whiteboards, take advantage of them. Ask a TA to write out new vocab there so it won't disappear as you move through slides.
Many people are visual learners so diagrams can be very helpful too.
- Don't forget about the breaks. It's easy to get into flow and forget.
- Use a timer on your phone or ask one of the TAs to be a Timekeeper
- Try to politely leave the room yourself. It can be easy to spend all the breaks answering questions. Teaching is a ton of work. Give yourself a break too!
- Set aside 10-15 minutes at the end for questions
- Hopefully you've got at least some students who are hooked by this whole world of coding and want to learn more so share your favorite resources
- Ask the TAs and students to do the same
- Many students use online tutorials and can recommend good ones
- Remind them how much they accomplished
- Encourage students and volunteers to come to the after-party
- Encourage everyone to come back again
- Encourage them to stick around for the final presentation and retro
The best prep is to read through the curriculum and do it yourself.
If you have time, you can read the full slide deck that this doc was adapted from, as well as these general links about teaching.