[email protected]

Teaching Programming To A Highly Motivated Beginner

Philip Guo

October 31, 2012

I recount what I learned from spending nine months teaching computer programming to a person with no prior programming experience.

User Comments


So basically if you're a genius (MIT's OCW on programming is far from being for beginners, and if he understood any of it he's nowhere near being one), spend 10+ hours a day on a skill and spend loads of money on a professional tutor then you can learn ? Interesting attempt at trying to guise it under 'highly motivated', but someone like yourself could never know what it's like for *real* beginners to learn a complicated discipline. It's easy to take credit when you're teaching the A+ class, but put you with some averages or remedials (note that neither of those are choices. No one chooses to not understand) and you'll fall flatter than a pancake under an 18 wheeler.

Nice try though, and the article does make some nice points. I just dislike the dishonesty (unintentional, but present everywhere) of when I read 'beginner' and then find something else. Especially when you brush everyone else off as them being 'unmotivated/not as motivated' to glorify those abnormal and vain standards. Is the article really about the learning process or teaching? No. It's about you holding the hand of someone who would have done it either way because he already knew how but just had some insecurities.

And who knows what I'll get brushed off as for my thoughts, if they even make it through the submission process for not being another +1 to everyone else's. I have more extensive knowledge on the beginner learning processes and know the problems real people have with it. It's sad to see these hyped up student dolls that you and everyone else use as a standard for everyone to meet when they're just exceptions that you all take in because you know that they won't require any serious work on. Students that would actually challenge you as an educator to do something for, now that would be someone I'd like to read about. But the doll that does everything himself with the magical power of 'motivation' alone and only asks for a bit of the "guru's guidance" wins yet again.

Vygotsky. Look up his learning theory if you aren't familiar with it. He proposed that we have ZPD's, zones of proximal discourse. Basically, they are how far the 'flashlights' of our understand reach out into what we are trying to learn. A teacher should try to get a student to see out as far as possible (the struggle) but not step into the darkness (that baffling). That way the student takes the biggest 'steps' possible toward learning part of the field.

I learned .NET with a multi-tiered database project, just because my organization had VB.NET, but no license for VB6. That was Framework 1.1. Even today I look back on some of that code and wonder how I ever got that far, basically just from the online help. What is more, some of the problems I was solving ended up having similar solutions in later versions of the Framework (of course, those are better tested, more efficient solutions, but still...) If real estate is location, location, location, then learning is motivation, motivation, motivation.

should take this to TED....

Fantastic post. Like Brian, I am a computer programming beginner myself. And this post is great motivation and encouragement. Thanks for this Phil.