3 ms·
This is a really good point. I was thinking a while ago about the role of teachers in this context and why they're so necessary, especially in this day and age
by shishy 9y ago
This is a really good point. I was thinking a while ago about the role of teachers in this context and why they're so necessary, especially in this day and age where there are online tutorials for everything.
I was taught how to code from early on (6th grade), and most of my learning of programming (which I would distinguish from computer science) happened as we worked on projects/built things.
I can't tell you how many times I saw other students get stuck on bugs along the way during development and get really frustrated with programming (I saw this when I was a student, and later when I taught others how to code).
What always helped was having teachers/instructors who could easily help students work through those roadblocks so they didn't get stuck and holed up on one thing. Not really the traditional teacher that just stays up and lectures at students but rather one that also spends time getting in there and working alongside them to some extent.
Traditional classrooms/lectures are structured from the ancient days where students went to listen to a professor speak and jot down whatever the lecturer orated. But now, especially with programming, the emphasis is more on building, and so that changes what the instructor really does in the classroom (just "lecturing" vs "facilitating" and "supporting").
Probably a long-winded way of the same point you just made, but I just thought I'd elaborate since it's interesting to me. Some of my friends say that these online courses are 100% independently viable but I am not convinced that they are a suitable replacement for teachers (though I recognize it really depends on the students and how independently motivated or how prone to getting burned out they are...).
Just my 2cents...
- 20years 9y agoI agree with everything you said. I am also not convinced that "these online courses are 100% independently viable" especially for the younger kids. I didn't think this a year ago but my opinion has really changed since having the opportunity to teach kids in person in a class. I use online tools in the class and they are awesome but would have lost 90% of the kids if they didn't have someone there to guide/explain things in more detail. I was also pleasantly surprised how often kids asked "how can I make it do this" which was something outside of what the online tutorial taught. The tutorials were great at sparking their interest but can't really accommodate all of the edge cases especially for those more creative thinkers. I also learned that most of the kids got bored fairly quickly following step-by-step tutorials. They wanted to hack and play around with what they were learning. So I changed the tutorials to be much smaller with very small steps and at the end of each mini tutorial, I encouraged them to hack and try different things based on what they learned. Maybe with a live online teacher available this would be less of an issue but even with that you lose the personal interaction the kids have with each other and the teacher. Things like showing each other what they created and working directly with the teacher/other kids to expand on that. I think a lot of younger kids really do need that interaction and in-person feedback and I am not sure how that can be re-created online.
- shishy 9y agoTo your last point about a live online teacher, I think it would also just be really frustrating for the teacher to be in that position. Debugging code can be difficult at times, and to do so online where you can't just be with the student in person makes it even harder. To your broader point though, I think that resources like StackOverflow, and even some smaller communities (e.g. subreddits) are a great way to supplement online courses (by getting questions answered/dealing with roadblocks). The only issue is response time (a dedicated instructor who was with you in person could ideally resolve it quickly whereas some SO answers can take days, weeks, or even longer, depending on how obscure/unclear it is). I agree though - programming after all is like playing with infinitely many legos; it can be overwhelming but ultimately you need to just get your hands dirty and fiddle... otherwise you won't learn correctly...