A fun tool for demonstrating or teaching python?

Tim Gahnström /Bladerman tim at bladerman.com
Mon Mar 10 18:07:21 EST 2003


"WP" <warrenpstma at _______.com.hotmail> wrote
> There was a discussion (I found it using groups.google.com) a while ago
with
> some people interested in building a very easy-to-use IDE for teaching
Python,
> possibly even with Kids.

I am doing exactly this as my CS master thesis right now, I got some
questions answered here last summer or perhaps autum. I have had to let the
project more or less rest for the last couple of months now but will pick it
up again in early april. I havn't done much coding yet (want do do some
changes to the python interpreter but have a hard time figuring the source
code out) but have writen some and made most design desisions (in swedish
unfortunatley)

> I am thinking of whipping up something, perhaps with the ability to walk
> through the code ('animated' debugger) and to do something visual or

I verry much agree with you here, I think that a nice and simple debugger
will help alot in the process of understanding how code works and why it
works in particular ways. I still dont see why debuggers is not more widley
used in programming education.

Would you care to elaborate more on your thougts about the animated
debugger? I havn't comleteley figured out how I want my debugger to look so
it would be most interesting with some input on that part.

> graphical, turtle graphics, or a game, or something like that.

I plan on somewhat introduce the students to oo without there knowledge and
need to think about it. The first step in this process is introducing
grphical objects that work as objects are supposed to do.
I will have one code window on the right and a output window on the left.
some of the first commands they lern will likely be be something like

createRect(x,y,width,height)

createCircle(x,y,radius)

The code snipet above will ofcourse create a rectangle on the outputscreen.
This is really easy but to get them going in the gameprograming (wich
ofcourse is what young people are in it for) the code could be written like
this for further refferensability to the objects

r=createRect(x,y,width,height)

c=createCircle(x,y,radius)

Then r and c could be used like this

r.moveTo(x,y)
c.scale(times)

I think this aproch will introduce both objects and graphics in a nice and
easy way without oversimplyfy it with a turtle kind of way (besides I think
games are hard with turtle and logo)

> Python Logo,
> with the code window on the bottom and a graphics window on the top.

I will, as it looks, use two parts except the code and outputwindow. The
debugger will be simple and always present on the right hand side and at the
botom I will have a logo kind of inputfield where the user could enter
commands one at the time (maybe run one of the functions in their script or
similar)

I don't claim to be an expert on the subject but am more then happy to have
discussion on various design issues and ideas.

Tim






More information about the Python-list mailing list