Before you start trying to get your friends to learn how to program, make sure they are interested in it first.
I know several people that got into programming, hated it, but stayed involved anyway solely for the money -- They rarely like their jobs.
With that out of the way, I think the two most important traits are curiousity and good problem solving skills.