minimum age to learn python (a.k.a graphical vs text languages)

James Stroud jstroud at mbi.ucla.edu
Sat Mar 10 20:54:23 EST 2007


Brian Blais wrote:
> Hello,
> 
> I was wondering what the approximate minimum age to learn python is.  
> Has anyone had experience teaching middle school students, or elementary 
> school students Python? What brought this up for me is thinking about 
> starting a Lego robots group in a local middle school.  I only teach 
> college, and have little experience with middle school students, so I 
> find it hard to guess what they could actually do.  I started 
> programming when I was about 5th grade, on a Commodore VIC 20 (3.5k 
> RAM!) in basic, but I don't think I am typical.  (Of course, now, you 
> can probably infer my age to within 2 years!  :)  ).
> 
> 
> I've written something so that students can program in Python syntax to 
> run the Lego Mindstorms robots.  The most commonly used language for 
> these robotos, in the middle school, is Robolab which is entirely 
> graphical.  Although a good program, I find there are some drawbacks:
> 1) Robolab is commercial, and not all schools can afford this above and 
> beyond the price of the lego mindstorms
> 2) Robolab only runs on Mac/Windows, and not Linux, so those schools 
> that have tried to save money on the operating system get whacked there too
> 3) Robolab can *only* do Lego robots.
> 
> Although you learn the basic language structures (loops, branching, 
> etc...), because it is graphical, Robolab doesn't translate directly.  
> Perhaps this is enough for kids to start, but perhaps one can do better.
> 
> On the other hand, my pynqc tool (which uses the freely available nqc 
> language for the Lego Mindstorms) is:
> 1) free (in both senses)
> 2) runs on Mac/Linux/Windows
> 3) because you use python syntax, it is easier to go and do other python 
> projects not involving robots
> 
> In my mind, this opens up more doors, but it is not graphical.
> 
> I wanted to hear responses from people who have experience teaching 
> programming in elementary/middle (or even high) school.  Do graphical 
> languages make a big difference?  Do text-based languages put up 
> barriers to young learners?  Is it no big deal either way?
> 
> 
>         thanks,
> 
>             Brian Blais
> 

Probably, its not so much that graphical is easy to learn, but, for 
kids, I'm guessing that its less boring than text-based. They already 
understand a lot about programming by customizing their video games on 
the Wii, or whatever Sony playbox X.

Really, What you need is a "first person shooter" programming language. 
Perhaps, make them program their own guns or "power moves". Have 
competitions at the end of the week using the guns they create. There's 
nothing like learning to program by programming a bullet to follow a 
quadratic spline through a maze of corridors, nailing an opponent whose 
position was calculated by triangulation.

You'll see who the good programmers are then. Probably, you'll see some 
of the best programming of your life.

James



More information about the Python-list mailing list