Ted Leung on the air: Open Source, Java, Python, and ...
[ Julie posted briefly about this -- here's my side of the story ]
Shortly after Mind Camp in November, the girls were really getting interested in doing some more Python stuff (their interest had tailed off a bit, and our crazy summer meant that we didn't get to spend as much time on this as I wanted). The two older girls both wanted their shot at the computer, which made it harder for them to get a long session in front of the machine. Also, the Thinkpad X20 that they had been using developed some odd behavior where it would shut down instead of going to sleep, which meant that the kids were losing their work semi frequently, which was frustrating.
Up to this point, they had been working by clicking a Windows shortcut that opened Python in a DOS box. From there, they could type in the commands to start up turtle graphics and then just enter their commands at the interpreter prompt. The only computer "literacy" required was turning on the power, logging in, clicking a shortcut, and learning to deal with windows being selected or not. Now, they were going to have to learn about files.
The new regimen involved another Windows shortcut to pop up Notepad. The girls then had to learn to save a file, switch windows (on purpose, not by accident) to the Python interpreter window, reload the module, and look at the Tk output window. I found myself barraged by questions that had nothing to do with turtle geometry or programming. All the questions were about the environment -- forgetting to save a file, getting windows out of focus or behind each other, forgetting to reload the module, etc. I suppose they were learning computer "literacy", but it really reminded me as to how much stuff you need to know in order to do some simple programming. In a way, it was easier when I was doing AppleSoft Basic on the Apple II -- no separate editor, no windows to lose or have out of focus.
At Mind Camp, Todd Blanchard brought by a copy of "Squeak: Learn Programming with Robots", and the girls got excited by paging through it. It looked pretty good, and Squeak/Smalltalk certainly has the programming constructs that I want my kids to be exposed to straight off (at least if they are going to be programmers). Also, one of the original motivations for Smalltalk was for allowing kids to do programming and simulations, and that heritage seems to have carried through into the Squeak community. For a great/depressing look at some of the learning applications, you can check out this video from ETech 2003.
Some caveats. Using the "Robots" book involves using a customized Squeak image that has been tailored for educational purposes. Some might consider that "cheating", but I'm looking for the best environment for my kids to learn about essential computing concepts, so I don't really care if it's "cheating" or not. Also, using Squeak doesn't completely get you out of the file problem because each girl still needs her own image to avoid stomping on her sister's work. But the overhead is much lower. Michaela, who is 5, came to me and told me about all the stuff that she did in Squeak - creating multiple robots via direct manipulation and then issuing a stream of Smalltalk commands - that she was able to figure out on her own (with a little help from the book).
Both are totally free!
Disclaimer: I am the creator of RUR-PLE. After a short hiatus, I am working on it again and hope to release version 1.0 within a few months. The following step will be to include an introduction to game making with Pygame, as a smooth transition from RUR-PLE.
Posted by André Roberge at Thu Jan 12 04:15:32 2006
Posted by Jay at Thu Jan 12 08:01:05 2006
Posted by Adam Vandenberg at Thu Jan 12 08:41:56 2006
I've heard of Guido van Robot, but not Rur-ple. The availability of the book definitely helped Squeak in this case. Plus there's still the problem of dealing with files, which was part of the roadblock that we ran into. Most of us take files for granted, but the whole file/editor business was really detracting from the experience.
Jay,
"Cranking out" would be an overstatement. Right now she knows enough smalltalk (which isn't a lot) to give commands to the turtle that draws on the screen.
Adam,
I didn't even have that...
Posted by Ted Leung at Thu Jan 12 09:43:30 2006
First tab: browser that guides through lessons (34 so far with a total of about 50 planned for version 1.0. You can browse through the existing lessons on the website.)
Second tab: integrated editor (for robot program) and robot world. So far, all the lessons included only make use of the first two tabs.
3rd tab: Python interpreter. 4th tab: Python editor with a simple button to execute a program.
[Apologies if this second comment is considered inappropriate.]
Posted by André Roberge at Thu Jan 12 10:43:03 2006
For Python I would have used PythonWin as the IDE on Windows instead of the DOS and Notepad environment. PythonWin has a script editor with completions and an interactive window and requires a script be saved before you can run it. There was an issue with running turtle graphics because the turtle opens a second TKinter mainloop, but I think this has been fixed.
StarLogo is a nice simulation environment. It has multiple turtles and a cellular background so you can do cellular automation. The download comes with lots of examples from traffic and infection simulations to a Frogger game. Middle school students enjoyed hacking Frogger. StarLogo is used to teach professionals simulation techniques at the Santa Fe Institute using the Adventures in Modeling book. Logo is basically Lisp without parenthesis. I would like to make a Python version of StarLogo.
Posted by Jeff Sandys at Thu Jan 12 12:15:30 2006
Not a lot of educational environments can say that.
Posted by Todd Blanchard at Thu Jan 12 16:28:59 2006
No problem at all. As I said, I was completely unfamiliar with Rur-ple, so I appreciate knowing the facts. My previous comment about files was just with respect to Guid van Robot.
Jeff,
Regarding PythonWin, saving files means learning about the filesystem, which was part of the obstacle. Yes, Logo is cool. Eventually I plan to put the kids through Structure and Interpretation of Computer Programs, but that is a ways off just yet.
Todd,
Thanks for bringing by the book. That (and all the Squeak demos at Mind Camp) was a big factor in pushing Squeak over the edge.
Posted by Ted Leung at Thu Jan 12 23:27:59 2006
I'd been leaning towards a form of Logo for a start, but I may try squeak. After all, I'm an old Smalltalk head who's been itching to dip my toes in again.
Posted by Uche at Fri Jan 13 10:12:49 2006
Posted by Gerhard Kalab at Sat Jan 14 16:51:41 2006
Posted by Daniel Steinberg at Wed Jan 25 05:06:53 2006
Posted by dennis at Wed Jan 25 05:57:21 2006
Images are at http://smallwiki.unibe.ch/botsinc/download/
Posted by Ted Leung at Wed Feb 1 10:41:29 2006
I'm really happy that you have fun with my book. I hope to get the resources to improve again the environment.
I also have an another environment and some book chapters on a robot moving in a maze (like the Python and Karel the robot metaphor). I should put it on the web for free. This is fun you can program your robot to find its way in the maze and program moch challenging tasks.
Stef
Posted by Stephane Ducasse at Fri Mar 10 00:06:02 2006
To insert a URI, just type it -- no need to write an anchor tag.
Allowable html tags are:
<a href>
, <em>
, <i>
, <b>
, <blockquote>
, <br/>
, <p>
, <code>
, <pre>
, <cite>
, <sub>
and <sup>
.You can also use some Wiki style:
URI => [uri title]
<em> => _emphasized text_
<b> => *bold text*
Ordered list => consecutive lines starting spaces and an asterisk