How much experience do you have, and what is it worth?
I've seen hundreds of students who try to learn to program. Some of them have the right kind of mind for it and most don't. The ratio seems to be about 40:60, which is what has been recorded in the literature as being the norm for most samples.
The right kind of mind is not necessarily that clever. It is not a 'special mind' in any kind of wonderful precocious sense. It is normally people who see through superficial explanations, that have a knack for modelling cause and effect in abstract systems that they cannot manipulate directly. I'm not sure how it relates to other clusters of skills that people may possess, but I have never seen any effective way to teach it to somebody who does not possess it naturally.
I've tried various methods of teaching it directly to students that do not have it. None of them have worked so far. I still hope that it is something that can be taught, although my experience so far suggests otherwise.