In my experience, what helped me the most when starting to learn how to code was having a motivating problem that I wanted to solve. Why do I care what a for-loop is if I can't see how it is even helpful? Many tutorials have examples when teaching, but I believe that the problem should come first, and act as the glue between the basic ideas that will be introduced. Then, the mentor's most important role is to guide the student through best practices, such as style and performance.
Ask HN: How to Teach Coding?
11–20 of 126 posts
Re: Ask HN: How to Teach Coding?
#12Re: Ask HN: How to Teach Coding?
#13Someone said that finding good teachers is difficult, and that's true from my experience; but it 's a Sunday walk in the park compared to finding good students.
Re: Ask HN: How to Teach Coding?
#141) Information provider - search for suitable materials. For example, if the student finds the materials not engaging, it would be your role to find different material that suits the needs of the student better
2) Problem provider - this is extremely important. It is difficult, for example, to care about loops when all the textbooks show only that--loops in isolation. Your role is to construct or find problems that the student can solve with their new knowledge. Generally, the challenges/issues should be one level above the student's knowledge, so that it pushes them forward.
3) Guidance role - it is your job to analyze the students' motivation behind learning how to code, and provide suitable path. E.g. if one wants to become a web designer, it might not be the most suitable to start with assembler. You should also course correct, e.g. when you see a web designer to be struggling with data structures, it is absolutely appropriate to make a detour into some CS territory with data structure classes.
But, of course, most of the learning does the student him or herself. You can't teach anyone anything ever. You can just be there for the student, to help them and guide them.
My 2c as a self-taught developer.
Re: Ask HN: How to Teach Coding?
#15What prior knowledge does your student have? In my experience, what helped me the most when starting to learn how to code was having a motivating problem that I wanted to solve. Why do I care what a for-loop is if I can't see how it is even helpful? Many tutorials have examples when teaching, but I believe that the problem should come first, and act as the glue between the basic ideas that will be introduced. Then, t…
Yeah, real world problems are what my favorite way to teach particular ways of building things. No one wants to build the 7th calculator.
Thanks for your Feedback!
Re: Ask HN: How to Teach Coding?
#16Understanding that we all have different mental models, and that affects how we learn. Understanding my own vs my students' helped me to get them to understand what I was trying to communicate.
This in particular is massive. Some people like (and work well) pair programming, others want reading materials, others yet need videos. Just being there to answer questions or help when they have issues can be a tremendous assist since it means they're rarely left frustrated by being unable to move forward on their own.
I am glad that i will start with only one Person here and i can focus on how he learns :)
Re: Ask HN: How to Teach Coding?
#17Re: Ask HN: How to Teach Coding?
#18I have seen classes full of disinterested kids learn by: 1. reading algorithm flows 2. following changes in variables for C code 3. drawing their own algorithms 4. implementing those in C. repeat for a whole semester. in the end, those who are really interested will pick up tooling and go ahead by themselves.
Re: Ask HN: How to Teach Coding?
#19It depends on the student. Don't make assumptions. Observe and test them frequently. How you should teach them will be driven by this, and nothing else. Btw, I ran a tutoring company for 8 years with over 6k tutors.
I will follow your suggestion.
Well, over 6k tutors sounds like you found ways to guide people successfully through the process.
My Question about this is, was peer-programming a standard tool, or just plain code-reviews?
Re: Ask HN: How to Teach Coding?
#20I’m in a well known bootcamp in SF right now (after flirting with idea for a few years and finally making the timing work). Having hit the half way point, I would say the day-to-day format has been very conducive to learning, at least for me. Basic structure is: -nightly readings and videos on a new concept -a homework on the readings -a quiz on the material Next day: -a half day lecture on the new material from the…
But that sounds reasonable and i just made a note about this for my plannings.
Thanks for your insights.