RailsBridge Teacher Training
What is this?
You're probably at a teacher training for RailsBridge.
This slide deck is a tool to facilitate conversations about teaching best practices and challenges, specifically for RailsBridge workshops.
It helps to have a whiteboard or those giant sticky notes for the discussions if possible.
Discussion is key!
Don't let the presenter(s) do all the talking!
Why RailsBridge?
We're making tech more diverse and more welcoming!
How?
- We throw super-welcoming, fun, free workshops.
- We provide hella networking opportunities for students and volunteers.
- We help our volunteers become more empathetic and better communicators.
Introductions
Who are you?
- What's your name?
- Have you been to a RailsBridge before? How many?
- What do you do for a living? Care to share who you work for?
- What's your favorite structure in the Bay Area?
- Alternate silly questions:
- What's your favorite animal?
- If you could only eat one food for the rest of your life, what would it be?
What's a RailsBridge?
Raise your hand if you've been to a workshop before!
RailsBridge Fun Facts
- Founded in 2009 as a variety of initiatives, including Rails Mentors, Rails Bug Smashes, and the Open Workshop Project.
- The workshops project was led by Sarah Allen and Sarah Mei.
- Its goal: make the Rails community more diverse and more welcoming to newcomers.
- Workshops are happening all over the world!
How does a workshop work?
There are a few different RailsBridge curricula:
- Intro to Rails (a.k.a. "Suggestotron")
- Job Board (no scaffolds)
- Message Board (doesn't tell you what to type)
- Intro to Ruby
- Front End (HTML, CSS, and a tiny bit of JavaScript).
First, we get all the necessary technologies onto the students' computers (the Installfest).
The next day we break into small groups and work through the curriculum.
Typical RailsBridge Schedule
-
Friday, 6-10pm-ish: Installfest: installing software over pizza & beer (no formal presentations)
n.b.: the Front End workshop doesn't usually have an Installfest.
-
Saturday's schedule, often:
- 9-9:30am: Check-in, coffee, bagels
- 9:30-10am: Opening presentation
- 10am-12:30pm: Class!
- 12:30-1:30pm: Lunch
- 1:30pm-4:30pm: Class! (with a break sometime mid-afternoon)
- 4:30-5:00pm: Closing presentation & retros
- 5:00pm-late: After-party
Is RailsBridge Open Source?
WHY YES, THANK YOU FOR ASKING!
RAILSBRIDGE IS VERY OPEN SOURCE!
All the materials you're using were created by volunteers, and are on GitHub for forking and editing and using!
If you see something that could be better, make a pull request. Pull requests are the lifeblood of RailsBridge.
If you don't know how to make one, we'll help!
How to make your class awesome
We've made three quasi-arbitrary categories of ways to make your class awesome:
We want our students to feel:
- socially comfortable
- technically capable
- like you are approachable and can help solve their problems
Discussion: Social Comfort
Imagine:
- You're trying to do something difficult
- You're in a group of strangers, many of whom know how to do it better than you
- You've tried before but got lost or bored or confused
- You don't feel like you can articulate your thoughts and questions
- You don't know the right names for anything
When was the last time you felt this way?
How can we help make this easier?
How can you help people feel socially comfortable?
Social Comfort (Ideas)
Introductions
- Include name, profession, why are you here / goals for today's class, and something silly.
- Don't rush, even if you have a big class.
- If someone joins the class late, ask them to introduce themselves.
Icebreakers
- Name games! Admit up front that most people are bad at learning new names.
- Get people talking. The more comfortable they are at talking, the more likely they'll speak up when they don't understand something, or to answer someone else's question.
Social Comfort (More Ideas)
Try to suppress your (understandable) culturally-influenced sexism
- Don't hit on people. No sexual advances. None. Even at the after-party.
- Don't make sexist jokes. Or racist, classist, or ableist jokes. Call people out if they do. A simple "That's not funny" and moving on quickly with the conversation will often suffice.
- Don't make gender-based generalizations ("Women are better at X, because ...")
- Don't make references to people's bodies or state your opinion of them.
- Don't use slurs.
Discussion: Technical Capability
How can you help people feel technically capable?
What kinds of insecurities might your student have?
How can you bolster their confidence?
Technical Capability (Ideas)
Explain that:
- Even professional developers are constantly learning new technologies, so being confused is normal.
- Initial code is often terrible: don't feel bad, just refactor!
- Mistakes == Learning!
Dealing with technical concepts:
- Define technical terms! Several times!
- Assume anyone you're teaching has zero knowledge but infinite intelligence.
- Remember people's professional and code backgrounds (QA, DBA, C++, Java, JS) and relate where possible. If they are a cook, try a cooking analogy.
Technical Capability (More Ideas)
Encourage collaboration and interaction
- Explicitly encourage students to try to answer each other's questions.
- If a question is asked, ask if anyone in the class thinks they can explain.
- Be especially encouraging of the first few questions, to try to get things rolling.
- Good responses to questions: "I'm glad you asked!" or "I actually wondered that, too." or "Great question!"
Be Super Positive, Always
- Students have diverse backgrounds. Appreciate this fact.
- If they aren't getting a concept, avoid anything that might shame them.
- Don't be surprised when someone hasn't heard of something before.
- Don't grab anyone's keyboard. Avoid taking over unless you think it's really necessary. Ask before you do. "Mind if I drive for a sec?" But really, don't.
Technical Capability (Even More Ideas)
Walk the Middle Path
- Don't go too deep for your class level, but also, don't gloss over things.
- When trying to be accurate, it's easy to go down a rabbit hole of specificity. Avoid.
- Work with the TAs to make sure no one goes down that rabbit hole. Accountability!
- Explain the big picture of a command before they type it in.
- i.e., before typing the command to deploy to Heroku, explain the difference between localhost and Heroku.
Discussion (Do you know what's up?)
How can you help people feel like you know what's going on?
What are things you can do to help the students trust you?
What are some things to avoid?
Know What's Up (Ideas)
Know what's going on
- Cover logistics at the beginning of class
- Planned breaks, lunch time
- Remind students that there is a closing presentation at the end
- Make sure they know where the bathroom is
- Encourage them to attend the after-party
Establish a few ground rules
- Questions are always welcome, even if the student thinks it might be dumb.
- Explain that if someone has trouble (e.g., not getting the expected output), the TAs will help troubleshoot.
- If anyone wants to switch classes, tell them they should feel TOTALLY COMFORTABLE switching at any point.
Know What's Up (More Ideas)
Don't be afraid to:
- Call on people! By name!
- Correct people if they're wrong. Be polite and encouraging. For instance:
- "Well, this might work better and this is why."
- "Can you explain how you came to that conclusion?"
- "Does anyone have a different answer?"
- Ask yourself questions and answer them.
Know What's Up (Even More Ideas)
Pace yourself!
- Don't go too fast. You will probably go too fast. Check in occasionally to ensure everyone is still with you.
- You can say the same thing THREE TIMES and it will not be boring yet.
- When you ask a question, wait TEN WHOLE SECONDS before saying anything else. People need time to think.
- Don't let the most advanced students dictate the pacing or answer all the questions.
Discussion: Challenges
Talk about what problems you might anticipate, and what to do about them.
Some issues:
- Student is in the wrong class level
- Student is disruptive
- Student is disengaged
- TA is not helping
What's a TA?
- At RailsBridge, a TA is a volunteer who isn't leading the class.
- If you're volunteering at your first RailsBridge workshop, you should probably be a TA.
- Sometimes they are the technical experts (rather than the teacher), sometimes not.
- TAs often explain specific concepts for the class or teach a couple of sections to give the teacher a break from talking.
Discussion: TAs
TAs: How can you best utilize the AWESOME POWER that is a TA?
TAs (Some Ideas)
- TAs can ask questions to encourage students to speak up.
- Ask your TA to explain a concept; they may be more technically advanced than you!
- TAs can help people who get lost.
- Co-teaching is also an option if you feel like you can tag-team. There doesn't have to be a hierarchy.
- If someone falls behind, the TA can take them out of the room to do some 1-on-1, if there's another TA in the room.
Discussion: Comprehension
How can you tell if they understand the words you're saying?
What are good questions to ask to check comprehension?
What did your favorite teachers do to gauge understanding?
Student Comprehension (Some Ideas)
- Pay attention to body language.
- People ask questions most often when they are actively processing material. If they aren't, it might be that the material is too easy or hard. Try to figure out which it is!
Calling on people
- Calling on people makes the class more interactive and engaging, and less lecture-y.
- Don't always ask questions to the whole class: call on individuals by name.
- Consider breaking the class into two teams and addressing questions to teams.
- Ask people what they expect a command to produce BEFORE you hit enter.
- Ask "How would you do #{this}?" or "If I wanted to do #{that}, what would I do?"
Installfest!
Keep in mind:
- There will be people with all kinds of computers.
- Even though Windows is not an ideal Rails development environment, we're here to encourage people and meet them wherever they are right now.
- Do NOT say bad things about Windows, even if it's frustrating.
- If you're not sure about something, grab another volunteer.
Very Important, Very Practical Things
You need to read the curriculum through, beginning to end, before teaching it.
First workshop? Be a TA!
We need your help! Thank you!!!
/
#
Social Comfort (Ideas)
Introductions
Icebreakers