How To Program
Welcome to the Pipes breakdown of each and every answer to the simply question: “How To Program”. Basically there are three answers to the question “How to Program?” The first is the lollipop method. The second is the boy genius method. Finally, we have the hierarchical method. Have a quick read through each of these methods and decide which one best supports your style of learning.
The first “How To Program” method is the lollipop method. More and more computer interactions are relying on a technique known as “gamification”. Some authors have gone so far as to say “How hard this new [generation] works how they try to compete, how they fit into teams, how they take risks – all are different in statistically verifiable ways. And those differences are driven by one central factor: growing up with video games” (Beck and Wade in Got Game). The gamification ethos is basically; all education should represent a video game. This is not always a bad idea. People love video games. Using video game techniques to engage students can lead to interested students. But, the problem here is that often the educational value is lost in favour of the entertainment. Education becomes play time, not instruction time.
The second “How to Program” method is the boy genius method. This method is really only available to boy (and girl) genius’. The idea behind the boy genius method is to take a complex technical task and put it in front of a young individual with an obvious aptitude for that discipline. Whoever structured that technical task thinks they have accomplished a major teaching achievement, because their system allowed them to teach complex roles and goals. The problem is, nobody this side of Mensa can figure out how to learn from this tool. Chances are, this tool is merely a wrapper of some real world technical discipline and the young pupil probably would have done just as well operating in that real world discipline. Hardly a win for educational tools.
Finally, the method that makes the most sense is the hierarchical “How To Program” method. This is how we teach students how to program in the real world. We start with the basics – a foundation – we build on that and finally we ask the student to exercise his new found skill. This method is all about equipping students with valuable transferable knowledge at an early stage, so that they can progress through all the stages of learning to program. It is not just feeding them brain candy, or starting them on the toughest problem set available, but actually teaching them level by level.
Main Image – Erik (HASH) Hersman @ Flikr
Lollipop Image – Sharkhats @ Flikr
Boy Genius Image – Dean Jarvey @ Flikr