Option 1. Go to uni and get a degree. Computer science/software engineer/computer engineering -- something like that.
Failing that, option 2: Self-learn.
Overall aim: Make lots of things. Put them somewhere like github. Try to make decently sized projects. Have one be about 5,000 lines or something?
Resources for learning python I can recommend are:
*
http://interactivepython.org/courselib/ ... index.html*
http://inventwithpython.com/I also have two text files full of exercises / syllabus if she wants to follow it. The exercise ideas can easily be used with any language. My girlfriend was learning python up until a few weeks ago -- then she got ill and fell off the wagon.
I don't know any useful resources for Java though.
I would give you the book I learned Java from whilst at Uni, but the prof who wrote it appears to have finally finished it and monetised it and it's no longer hosted for free in an easily accessible place. (Personally I would say learn python as a first language. I think it is excellent). If she wants to learn C after learning something like Java, then standard
K&R is fine. I also heartily recommend every noob read
SICP -- the only downside to that is it involves LISP
Also, if she wishes to understand how computers work, then a great introduction is
CODE by Petzold. After that a great way to cement that knowledge would be to do something like the excellent
Nand2Tetris course which is free (the pdfs etc from the book that aren't on there are easily torrentable).
Finally: Spam places like
reddit's learn programming. (Also read the sidebar and FAQ there for help).
Finally finally: If she lives in Hemel or whatever she could pay me to tutor her