Adrian Casey wrote:

André Roberge wrote:


bobdc wrote:

I will be teaching an "Introduction to Programming" class to some
middle school aged children and will be using Python, obviously. Does
anyone have suggestions for simple little programs to create and
analyze with them after I get past turtle graphics?

Turtle graphics will be plenty for the first session, and I will leave
time to ask them what they'd like to do in later sessions, but I was
curious if anyone on the list has experience picking pedagogical
programming examples appropriate for twelve-year-olds' attention spans.
thanks,

Bob


While it is not python per se, I suggest you have a look at GvR (Guido van Robot) (The app is written in Python but is too complicated for beginners). It is hosted on sourceforge (gvr.sourceforge.net). It is a very interesting way (imho) to learn about programming, in a pythonic way.

(somewhat shameless plug follows:)
A 'more advanced version' of GvR which uses the full Python syntax
is RUR-PLE  (rur-ple.sourceforge.net).  The version currently hosted
there does NOT work under Linux (untested on Mac).
It uses wxPython 2.4 and will not work with 2.5.
An updated release that will work under both Linux and Windows,
and under both wxPython 2.4 and 2.5 will come out very soon, I hope.

I'm working on it :-)  I have two kids (ages 11 and 13) and plan to use
rur-ple to teach them about programming.   Note that, even though
I plan it to be suitable for motivated children (with some guidance),
the end product (to be finished in a year?) is planned to be suitable
for a complete first-year university computer science.

Andre Roberge


I started teaching my 11 year old first of all by doing silly stuff like -:
for i in range(10):
        print "Silly me!"

Moving on to more useful stuff like times tables (which they have to learn
anyway).

After times tables, I plan to work on a simple number guessing game where
the computer picks a random number between 1 and 100 and asks the user to
take a guess.  This will help demonstrate many basic programming concepts.

Not sure how to introduce graphics though as so much is relatively abstract.

Have them type in guesses to make something hit a target that appears in a different position each time to introduce the notion of 2-D position, then you can talk about drawing lines between two positions, then the next thing you know they're writing algorithms to compute convex hulls (well, maybe not, but you probably get the idea).

regards
 Steve
--
Steve Holden               http://www.holdenweb.com/
Python Web Programming  http://pydish.holdenweb.com/
Holden Web LLC      +1 703 861 4237  +1 800 494 3119
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to