views:

274

answers:

7

Hi,

Im trying to teach python to a Law student (happens to be my fiancee).She has been insisting on me teaching her about it. One problem: She doesn't know anything about programming.

I was thinking on starting with dive into python, but i'm worried most not about the python part, but the "she does not know anything about programming" problem.

How can I keep her interested? I'm worried because she will have to learn if/else - oop - functions and stuff as she learns the python syntax, and she might get bored.

Maybe a project we can work together? Some simple django app?

Any ideas will be appreciated.

Related? :http://stackoverflow.com/questions/111857/what-did-you-use-to-teach-yourself-python

+5  A: 

Nothing is better for learning to program than a real project (by real I mean of use for somebody besides the author), internet connection and an expert friend. As long as she is willing to learn.

Screencasts are a great way to learn new stuff fast and not-so-boring. Try http://showmedo.com for example

artemb
+3  A: 

Scott Hanselman recently podcasted about a book called "Hello World : Computer Programming for Kids and Other Beginners".

It's written using Python and sounds like a good introduction to programming for beginners of all ages - I'm thinking about getting it for my nephew's birthday.

Might be worth a look?

Julian Martin
+3  A: 

Try this: http://homepage.mac.com/s_lott/books/nonprogrammer.html#book-nonprogrammer

Non-programmers are my target market.

S.Lott
Thanks! Will take alook.
Tom
+1  A: 

Tom, my experience has not been positive about it. My wife "wanted" to learn python but never went beyond a few chapters of "Dive into Python". I vaguely infer that she had a few doubts on the way, and never got interested in solving them. I have little doubt that an adult seldom does something new unless he/she needs to do it.

I do not want to discourage you but I'd leave it up to her (my wife) to decide whether to learn programming or not -- I would not try to teach her if she does not ask for that. My wife is quite interested in photography instead.

On the positive side, we might have new ways of learning programming invented only recently like Scratch, which probably have a better chance of conversions.

Amit Kumar
Thanks, Im hoping she will remain interested, but as you say, its up to her, and maybe there are better alternatives.
Tom
A: 

A more "fun" approach to try is to give examples of everyday things that your wife will understand. Say if you are teaching her about if/else control flow, then give examples like "if time is 8am, wake up to go to work, else continue sleeping". In pseudocode,

if time == 8am:
   do wake up
else:
   do continue sleeping.

Other examples, learning about functions. So you can tell her, that functions let her do things over and over. eg

def go_toilet():
    open door
    close door
    lift toilet seat
    do stuff
    flush
    wash hands
    exit door
ghostdog74
+2  A: 

The only way to learn is to automate some everyday tasks for her, for example fetching her online news or something, or something like a basic password manager.

The possibilities are endless ! :P

anijhaw
Or some simple string manipulation to select (in a limited way) parts of the news that interest her. (Or from the bar association bulletin or whatever is that lawyers read in electronic format -- I don't know because IANAL :-)
Jay
A: 

I have heard good things about the book Learn to Program from the Pragmatic Programmers. It uses Ruby instead of Python, and is geared toward teaching basic programming concepts to complete beginners.

It seems to have examples and exercises geared toward stuff your average person can relate to.

Alison R.