Newcomer support at hackathons/Mentor guide

As a mentor, you are the heart of the initiative for newcomers in the movement. In order to make the mentoring program work as best as we can, we are establishing this guide. We will need all of your feedback and learnings to improve the program in general, and this guide in particular – we are excited to do this with you. The goal of this guide is to help you being well prepared, and to give you options and inspirations to draw from.

This guide is focused on creating a friendly and open environment for learners of all sorts – but also for you, the mentors, yourselves. This guide strives to help with making everyone feel comfortable, to have a pleasant learning and mentoring experience, as well as having a great weekend together.

Building on lessons learned
With this guide, we are building on lessons learned from previous newcomer-initiatives, mainly the buddy system, which was first introduced at the Wikimedia Hackathon 2015. While the idea to help newcomers was appreciated, the process felt a forced for some, while others were a bit lost. Suggestions for improvements called for an improved pairing process (e.g. based on projects, not people, and giving people the option to switch), guidelines for best practices and managing expectations in advance. With this guide, we are trying to make due on that. (Read the full lessons learned from Lyon 2015. TODO: ADD LESSONS FROM VIENNA AND MONTREAL)

Sources for this guide
This mentoring guide is built from the Open Tech School coaching guide (CC BY-SA 3.0 Open Tech School), which itself roots in the RailsBridge teaching style (CC BY 3.0 RailsBridge). Additionally, we draw from the Django Girls Coaching Manual (CC BY-SA 4.0 Django Girls), the Rails Girls Guide for Coaches (CC BY-SA 3.0 Rails Girls) and the Jugend hackt Handbuch (CC BY 4.0 Paula Glaser, Maria Reimer, Daniel Seitz for OKF DE and mediale pfade.org). All of these links are excellent sources if you want to dig deeper into the art of mentoring.

Mentoring isn't teaching
in the sense that mentors are not standing in front and teaching a class.

Mentors... Creating a friendly environment
 * Stand by on the sidelines
 * Are right there when needed
 * Focus on the learners
 * Have sympathy for their (in-)abilities
 * Encourage learners to go further through positive motivation
 * And ensure they have fun doing it.

Atmosphere
Encouragement Questions Questions are good!
 * Smile
 * Make eye contact
 * Admit when you don't know something
 * Be kind and friendly
 * Use their name (on the name tags)
 * Tell learners it's ok to make mistakes
 * And to take breaks when it gets frustrating
 * Assume everyone you're mentoring has zero knowledge but infinite intelligence
 * Use normal language instead of slang
 * Make sure the learner understood what you said...
 * ...and explain it again differently if that's not the case
 * Encourage learners to play around on their own
 * Whatever they do is great!
 * Look around to see if someone else might be having trouble
 * They might just be afraid to ask
 * Come by once in awhile and ask: “Hey, how is it going? Anything I can help you with?”
 * This is a very powerful tool: It helps shy learners, builds rapport and increases engagement.
 * Another trick: Sit next to them and chat about what they are doing.
 * Get people comfortable asking questions
 * Emphasize that there is no such thing as "dumb" questions
 * Ask if learners have any questions
 * Give other learners the chance to try to answer that question
 * Coding is collaboration — make sure learners understand that

Responding to questions
Chances are, there is a specific question when the learner asks you to help them. How do you respond? Pacing Be encouraging
 * Positively:
 * "I’m glad you asked that."
 * "What an interesting question!"
 * "Great question!"
 * "Hm, I'm not sure... Let's look in the Internet/ask someone else."
 * If in doubt: blame the material, never the learner.
 * Their interpretation of the material might be as good as ours!
 * This is not about you, but about the learner. We go at their pace.
 * Everyone learns at their own pace. That's a good thing!
 * Talk sssssslllllloooooowwwwwwllllllyyyyyyyy.
 * Wait much longer than you feel is comfortable for questions/comments (count to 10 in your head)
 * Don't accept any learner saying they are too whatever to do it, answer that they can do it.
 * Congratulate people on their achievements, take some time to let them show them to you.
 * If people get off the path but have fun, encourage them to go on.
 * Encourage learners to show their work to others: invite them to present at the showcase at the end, or to show their stuff to other participants during the event. Tell them twice. Or three times. Whatever it takes.

Don'ts
A few things we are not doing: Their keyboard – it is made of lava! We do not discuss programming languages
 * We do not hit on anyone or make sexually suggestive remarks
 * We do not roll our eyes or laugh at questions
 * We do not use the time to advertise our own companies/jobs/ourselves
 * We do not pick on or make fun of anyone or anything
 * We do not debate which programming language, methods or technologies are "better"
 * We do not touch their keyboard
 * Learners don't benefit from you taking over their keyboard.
 * Don't touch it.
 * If you absolutely, ultimately must type something on their computer — chances are you don't —, ask whether that is okay with them.
 * And explain what you are doing.

Doing so confuses learners. In the tech community we have some strong opinions and our ways to express them, but for people new to it, this can quickly look like a huge fight. We do not fight each other!

“We are here to mentor you in this programming language/method/technology and that is the focus for this event.”