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.

Laptop Setup

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.

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.

Roadmap

Pacing

Ask Questions!

Whiteboards

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.

Breaks!

Wrapping Up

Final Words

Prep

The best prep is to read through the curriculum and do it yourself.

More Resources

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.

[contents]

deck.rb presentation

/

#