I am taking a side job with a local bootcamp that does courses for teens and adults to learn programming. Ive only taught other programmers different tools.
What tips would you have for being newer to teaching teens/adults these new skills?
I have a few guidelines I follow in training interns:
1: Learn to put yourself in the mind of a beginner. Put effort into recalling those feelings of confusion, fear, and bewilderment you first experienced. Go over those memories often, and draw from them to help you empathize with your students. You can also build on this by actively answering questions in an online community where beginners frequent (such as DEV.to.) Learn to spot patterns in questions beginners ask.
2: Be patient. Expect to explain things multiple times, and in multiple ways. Asking the person to explain a concept back to you is a great way to check their understanding. Never belittle anyone for not knowing something, especially something that seems "obvious."
3: Learn to say "I don't know, but let's find out together." You'd be amazed how often you'll be asked questions that you've never thought to answer! A major part of teaching is in demonstrating to your students how to learn. Help them find the resources, "grok" the material yourself, and then walk them through it if necessary. (This makes for a great opportunity to teach a student how to read the documentation or use StackOverflow.)
4: Don't be afraid to say "I was wrong." I've stuck my foot in it more than once, and it always hurts my pride to admit I misunderstood something. I always have that lurking fear that my credibility will be harmed, but in fact, admitting I made a mistake builds credibility, rather than destroying it! It tells the student "you're safe with me."
5: Don't stop your students from making mistakes! Be available to answer questions and to help if asked. Make it clear from the start (and remind often) that the student needs only ask, but resist the urge to rescue them if they don't. It is better to let your student dig themselves out of their own hole, rather than one you dug for them.
Great tips! That will help a lot thanks. One thing I realized I need to do is setup a notebook (I use notion.so) for tracking students (non identifiable), the course, and any other notes.
That could work, although real notebooks are worth considering too. (I'm drooling over the TUL discbound notebook system.)
As you teach, you'll notice some topics come up a lot. When I notice these patterns, I like to write down the essentials of a difficult topic in an article and publish it here on DEV.to. Then, I can refer the intern right to the article, and I've saved myself 30-45 minutes per student. (They can always ask additional questions after reading the article.)
Oh writing is great too. I do bullet a journal too.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.