One under-appreciated fact regarding the acquisition of skills or the attainment of goals, is that both are difficult or impossible if you can't structure the activity itself so that it is enjoyable. Learning how to make vocabulary fun will lead to success in language learning; learning to make cooking fun will lead to success in dieting; learning to make sports fun will lead to success in athleticism; and structuring your programming lessons to be fun will drive people to continue to learn how to program.
My programming career started with Webmonkey's PHP tutorial[1], when it was first published some years ago. It doesn't talk about floating point operations or binary representations. Instead, you first learn how to print "I am the CHICKEN MAN" in your browser. Shortly after, you're taught to use forms, and by then you've created something that takes input and processes it.
You type your stuff in, click the button, and it shows up in the browser. The code you wrote -- this strange language that seems like magic -- clearly works. You've made the machine do something. Just to make sure, you type something else in, click the button, and there it is. That's what inspired me to become a programmer. The ones and zeros came later.
[1] http://www.webmonkey.com/2010/02/php_tutorial_for_beginners/ (I don't recommend this tutorial to anyone learning to program. It was useful when it was written, but it's not up to date, and some of the examples are broken. In 2011, there are lots of good beginner books.)