Start by confirming that the students can sequentially solve problems. Those who skip steps or intuit results will find programming a depressing come-down. Once this can be demonstrated to some degree, programming can be taught.<p>Perhaps the next step should be stating and solving a problem: I want to do X. How does one do X? How will I know that my implementation of X is correct? ... This can be done in a simpler language as this approach is general and universally useful.<p>It does little good to teach specifics of a library or language too early unless you want script kiddies rather than programmers. I would imagine like those trying to learn a foreign/second language without a strong grasp on what a sentence is and how they can be structured. Or, how they can be used to communicate.