That's a rather hard question to answer without a little
more knowledge about the student's particular goals. Is the
student in some other discipline with a desire to know enough
about programming? Is he desirous to be a "programmer"? Is
he just trying to expand the breadth of his knowledge and has
chosen this as a specific way of doing so? Do you mean someone
who already knows some computer programming and wants to
pick up a different language? All of these may have
different answers.
That said, here's a link
to a book/course designed for teaching the general student
(not just the computer scientist or programmer) how to program
(or perhaps I should say, how to design programs).